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