modules/admin-full: fix wifi join
[project/luci.git] / contrib / package / asterisk-xip / files / uci / mohconf
1 #!/bin/sh
2
3 # Music on Hold
4
5 ast_add_conf moh
6 init_mohconf() {
7 ast_add_reload moh
8 ast_enable_type moh
9 ast_enable_type musiconhold
10 }
11
12
13 handle_musiconhold() handle_moh "$1"
14
15 moh_list="name"
16 moh_optlist="mode directory random application format"
17
18 valid_moh() {
19 is_in_list $1 ${moh_list} ${moh_optlist}
20 return $?
21 }
22
23 handle_moh() {
24 check_add moh
25 moh_context=$1
26 logdebug 1 "Loading MOH context: ${moh_context}"
27
28 enable_module res_musiconhold
29
30 option_cb() {
31 if valid_moh $1 $2 ; then
32 eval "moh_var_${1}=\"$2\""
33 else
34 logerror "Invalid music-on-hold option for ${moh_context} : $1"
35 fi
36 }
37 }
38
39 check_add_moh() {
40 if [ ! -z "${moh_var_directory}" ] ; then
41 [ -z "${moh_var_name}" ] && moh_var_name=default
42 [ -z "${moh_var_mode}" ] && moh_var_mode=files
43 append moh_lines "[${moh_var_name}]" "${N}${N}"
44
45 for i in ${moh_optlist} ; do
46 eval "local curopt=\"\${moh_var_$i}\""
47 [ -z "${curopt}" ] || append moh_lines "$i=${curopt}" "${N}"
48 done
49 fi
50 for i in ${moh_list} ${moh_optlist} ; do
51 eval "unset moh_var_$i"
52 done
53 }
54
55 create_mohconf() {
56 file=${DEST_DIR}/musiconhold.conf
57 get_checksum moh_conf $file
58 local isempty=1
59 if [ -z "${moh_lines}" ] ; then
60 isempty=2
61 rm -f $file
62 else
63 echo "${asteriskuci_gen}" > $file
64 echo "${moh_lines}" >> $file
65 unset moh_lines
66 fi
67 check_checksum "$moh_conf" "$file" || ast_moh_restart=$isempty
68 }
69
70 reload_moh() astcmd "moh reload"
71 unload_moh() astcmd "module unload res_musiconhold.so"
72
73
74 # vim: ts=2 sw=2 noet foldmethod=indent