ActionID
[необязательный] Уникальный идентификатор, который может служить для опознавания ответов на эту команду.
Привилегии
none
Пример
Action: ZapDialOffhook ZapChannel: 1 Number: 543215432154321 ActionID: 5676
Response: Success ActionID: 5676 Message: ZapDialOffhook
ZapHangup
[обязательный] Zap-канал, который должен быть разъединен.
[необязательный] Уникальный идентификатор, который может служить для опознавания ответов на эту команду.
Привилегии
none
Пример
Action: ZapHangup ZapChannel: 1-1 ActionID: 98237892
Response: Success ActionID: 98237892 Message: ZapHangup
ZapRestart
Полностью перезапускает Zaptel-каналы, завершая все выполняющиеся вызовы.
Привилегии
none
Пример
Action: ZapRestart
Response: Success Message: ZapRestart: Success
ZapShowChannels
Представляет статус всех Zap-каналов.
Параметры
Привилегии
none
Пример
Action: ZapShowChannels ActionID: 9999999999
Response: Success ActionID: 9999999999
Message: Zapata channel status will follow
Event: ZapShowChannels Channel: 1
Signalling: FXO Kewlstart Context: incoming DND: Disabled Alarm: No Alarm ActionID: 9999999999
Event: ZapShowChannels Channel: 4
Signalling: FXS Kewlstart Context: incoming DND: Disabled Alarm: No Alarm ActionID: 9999999999
Event: ZapShowChannelsComplete ActionID: 9999999999
ZapTransfer
Выполняет переадресацию Zap-канала.
Привилегия
none
Пример
Action: ZapTransfer ZapChannel: 1 ActionID: 4242
Response: Success Message: ZapTransfer ActionID: 4242
G
Пример func_odbc
В этом приложении представлены примеры из реализации функциональности «горячих столов», о которой шла речь в разделе «Ощутим могущество func_odbc: система 'горячих столов'» главы 12. Возможно, есть смысл вернуться к главе 12 и рассмотреть этот код данного примера вместе с объяснениями.
Система «горячих столов» (extensions.conf)
; Функция 'горячих столов'
[hotdesk][hotdesk] |
; Регистрация 'горячего стола' |
exten => _11XX,1,NoOp() |
exten => _11XX,n,Set(E=${EXTEN}) |
exten => _11XX,n,Verbose(1|Hot Desk Extension ${E} is changing status) |
exten => _11XX,n,Verbose(1|Checking current status of extension ${E}) |
exten => _11XX,n,Set(${E}_STATUS=${HOTDESK_INFO(status,${E})}) |
exten => _11XX,n,Set(${E}_PIN=${HOTDESK_INFO(pin,${E})}) |
exten => _11XX,n,GotoIf($[${ISNULL(${${E}_STATUS})}]?invalid_user) |
exten => _11XX,n,GotoIf($[${${E}_STATUS} = 1]?logout,1:login,1) |
exten => login,1,NoOp() |