20e36065f81251d11f01c1bbf061e8fb60771737
[project/luci.git] / contrib / asterisk-xip / files / uci / talkclock
1 #!/bin/sh
2
3 ast_add_module clock
4
5 init_clock() {
6 ast_enable_type dialplanclock
7 }
8
9 add_dialplan_talkclock() {
10 local context=$1
11 local zone=${asterisk_zone}
12 [ ! -z "$3" ] && zone="$3"
13 local date_format="$4"
14 local time_format="$5"
15 logdebug 1 "Adding Dialplan talking clock $1 $2"
16 check_add_context "$context"
17 local ext="exten => $2,"
18 if [ "${dialplan_add_include_clock}" != 1 ] ; then
19 dialplan_add_include_clock=1
20 enable_format gsm
21 enable_module app_sayunixtime
22 append_include "macros/clock.conf"
23 fi
24 append dialplan_context_${context} "${ext}1,Macro(talkingclock,${time_format},${date_format},${zone})" "${N}"
25 }
26
27 handle_dialplanclock() {
28 check_add dialplanclock
29 option_cb() {
30 case $1 in
31 dialplan|extension|zone|timeformat|dateformat)
32 eval "dial_clock_$1=\"$2\"" ;;
33 esac
34 }
35 }
36
37 check_add_dialplanclock() {
38 if [ ! -z "${dial_clock_extension}" ] ; then
39 [ -z ${dial_clock_dialplan} ] && dial_clock_dialplan=default
40 add_dialplan_talkclock "${dial_clock_dialplan}" "${dial_clock_extension}" \
41 "${dial_clock_zone}" "${dial_clock_dateformat}" "${dial_clock_timeformat}"
42 fi
43 for i in dialplan extension zone timeformat dateformat ; do
44 eval "unset dial_clock_$i"
45 done
46 }
47
48 # vim: ts=2 sw=2 noet foldmethod=indent