1 | изначальная версия редактировать | |
Вот пример подпрограммы для ограничения времени звонка через канал 60 минут в день, последний звонок по не лимитируется. Как запускать подпрограмму, передавать аргументы, и интегрировать в вашу систему предлагаю разобраться самостоятельно, или за вознаграждение.
[subDial_1]
exten => s,1,NoOp()
same => n,Set(CCHAN=${ARG1})
same => n,Gotoif($[${DB(${CCHAN}/date)} = ${STRFTIME(${EPOCH},,%Y-%m-%d)}]?next)
same => n,Set(DB(${CCHAN}/date)=${STRFTIME(${EPOCH},,%Y-%m-%d)})
same => n,Set(DB(${CCHAN}/ans_time)=0)
same => n(next),NoOp(${STRFTIME(${EPOCH},,%Y-%m-%d)})
same => n,Gotoif($[ ${DB(${CCHAN}/ans_time)} >= 3599 ]?end)
same => n,Dial(Dongle/${CCHAN}/+${ARG2})
same => n(end),Return()
exten => h,1,NoOp(${CCHAN}-${DIALSTATUS}-${ANSWEREDTIME})
same => n,Gotoif($[${DIALSTATUS} != ANSWER ]?end)
same => n,Set(DB(${CCHAN}/ans_time)=$[${DB(${CCHAN}/ans_time)} + ${ANSWEREDTIME}])
same => n(end),NoOp()
2 | No.2 Revision редактировать |
Вот пример подпрограммы для ограничения времени звонка через канал 60 минут в день, последний звонок по не лимитируется. Как запускать подпрограмму, передавать аргументы, и интегрировать в вашу систему предлагаю разобраться самостоятельно, самостоятельно или за вознаграждение.
[subDial_1]
exten => s,1,NoOp()
same => n,Set(CCHAN=${ARG1})
same => n,Gotoif($[${DB(${CCHAN}/date)} = ${STRFTIME(${EPOCH},,%Y-%m-%d)}]?next)
same => n,Set(DB(${CCHAN}/date)=${STRFTIME(${EPOCH},,%Y-%m-%d)})
same => n,Set(DB(${CCHAN}/ans_time)=0)
same => n(next),NoOp(${STRFTIME(${EPOCH},,%Y-%m-%d)})
same => n,Gotoif($[ ${DB(${CCHAN}/ans_time)} >= 3599 ]?end)
same => n,Dial(Dongle/${CCHAN}/+${ARG2})
same => n(end),Return()
exten => h,1,NoOp(${CCHAN}-${DIALSTATUS}-${ANSWEREDTIME})
same => n,Gotoif($[${DIALSTATUS} != ANSWER ]?end)
same => n,Set(DB(${CCHAN}/ans_time)=$[${DB(${CCHAN}/ans_time)} + ${ANSWEREDTIME}])
same => n(end),NoOp()
Проект компании "АТС Дизайн"
Asterisk® и Digium® являются зарегистрированными торговыми марками компании
Digium, Inc., США.
IP АТС Asterisk распространяется под лицензией
GNU GPL.