49 lines
1.2 KiB
Text
49 lines
1.2 KiB
Text
|
#!/bin/sh
|
||
|
|
||
|
ast_add_module clock
|
||
|
|
||
|
init_clock() {
|
||
|
ast_enable_type dialplanclock
|
||
|
}
|
||
|
|
||
|
add_dialplan_talkclock() {
|
||
|
local context=$1
|
||
|
local zone=${asterisk_zone}
|
||
|
[ ! -z "$3" ] && zone="$3"
|
||
|
local date_format="$4"
|
||
|
local time_format="$5"
|
||
|
logdebug 1 "Adding Dialplan talking clock $1 $2"
|
||
|
check_add_context "$context"
|
||
|
local ext="exten => $2,"
|
||
|
if [ "${dialplan_add_include_clock}" != 1 ] ; then
|
||
|
dialplan_add_include_clock=1
|
||
|
enable_format gsm
|
||
|
enable_module app_sayunixtime
|
||
|
append_include "macros/clock.conf"
|
||
|
fi
|
||
|
append dialplan_context_${context} "${ext}1,Macro(talkingclock,${time_format},${date_format},${zone})" "${N}"
|
||
|
}
|
||
|
|
||
|
handle_dialplanclock() {
|
||
|
check_add dialplanclock
|
||
|
option_cb() {
|
||
|
case $1 in
|
||
|
dialplan|extension|zone|timeformat|dateformat)
|
||
|
eval "dial_clock_$1=\"$2\"" ;;
|
||
|
esac
|
||
|
}
|
||
|
}
|
||
|
|
||
|
check_add_dialplanclock() {
|
||
|
if [ ! -z "${dial_clock_extension}" ] ; then
|
||
|
[ -z ${dial_clock_dialplan} ] && dial_clock_dialplan=default
|
||
|
add_dialplan_talkclock "${dial_clock_dialplan}" "${dial_clock_extension}" \
|
||
|
"${dial_clock_zone}" "${dial_clock_dateformat}" "${dial_clock_timeformat}"
|
||
|
fi
|
||
|
for i in dialplan extension zone timeformat dateformat ; do
|
||
|
eval "unset dial_clock_$i"
|
||
|
done
|
||
|
}
|
||
|
|
||
|
# vim: ts=2 sw=2 noet foldmethod=indent
|