Чтение онлайн

на главную - закладки

Жанры

Asterisk™: будущее телефонии Второе издание
Шрифт:

Представляет статус Zapata – каналов

Представляет статус всех Zap-каналов.

Параметры

ActionID

Привилегии

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 – канала

Выполняет переадресацию 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
exten => login,n,Set(PIN_TRIES=0)
exten => login,n,Set(MAX_PIN_TRIES=3)
exten => login,n(get_pin),NoOp
exten => login,n,Set(PIN_TRIES=$[${PIN_TRIES} + 1])
exten => login,n,Read(PIN_ENTERED|enter-password|${LEN(${${E}_PIN})})

exten => login,n,GotoIf($[${PIN_ENTERED} = ${${E}_PIN}]?valid_login,1)

exten => login,n,Playback(invalid-pin,1)

exten => login,n,GotoIf($[${PIN_TRIES} <= ${MAX_PIN_TRIES}]?get_pin:login_fail,1)

exten => valid_login,1,NoOp

exten => valid_login,n,Set(LOCATION=${CUT(CHANNEL,/,2)})

exten => valid_login,n,Set(LOCATION=${CUT(LOCATION,-,1)})

exten => valid_login,n,Set(ARRAY(USERS_LOGGED_IN)=${HOTDESK_CHECK_PHONE_LOGINS

(${LOCATION})})

exten => valid_login,n,GotoIf($[${USERS_LOGGED_IN} > 0]?logout_login,1)

exten => valid_login,n(set_login_status),NoOp

exten => valid_login,n,Set(HOTDESK_STATUS(${E})=1\,${LOCATION})

exten => valid_login,n,GotoIf($[${ODBCROWS} < 1]?error,1)

exten => valid_login,n,Playback(agent-loginok)

exten => valid_login,n,Hangup

exten => logout_login,1,NoOp

exten => logout_login,n,Set(ROW_COUNTER=0)

exten => logout_login,n,While($[${ROW_COUNTER} < ${USERS_LOGGED_IN}])

exten => logout_login,n,Set(WHO=${HOTDESK_LOGGED_IN_USER(${LOCATION}, ${ROW_COUNTER})})

exten => logout_login,n,Set(HOTDESK_STATUS(${WHO})=0)

exten => logout_login,n,Set(ROW_COUNTER=$[${ROW_COUNTER} + 1])

exten => logout_login,n,EndWhile

exten => logout_login,n,Goto(valid_login,set_login_status)

exten => logout,1,NoOp

exten => logout,n,Set(HOTDESK_STATUS(${E})=0)

exten => logout,n,GotoIf($[${ODBCROWS} < 1]?error,1)

exten => logout,n,Playback(silence/1&agent-loggedoff)

exten => logout,n,Hangup

exten => login_fail,1,NoOp

exten => login_fail,n,Playback(silence/1&login-fail)

exten => login_fail,n,Hangup

exten => error,1,NoOp

exten => error,n,Playback(silence/1&connection-failed)

exten => error,n,Hangup

exten => invalid_user,1,NoOp

exten => invalid_user,n,Verbose(1|Hot Desk extension ${E} does not exist)

exten => invalid_user,n,Playback(silence/2&invalid)

exten => invalid_user,n,Hangup

include => hotdesk_outbound

[hotdesk_outbound]

exten => _X.,1,NoOp

exten => _X.,n,Set(LOCATION=${CUT(CHANNEL,/,2)}) exten => _X.,n,Set(LOCATION=${CUT(LOCATION,-,1)})

exten => _X.,n,Set(WHO=${HOTDESK_PHONE_STATUS(${LOCATION})})

exten => _X.,n,GotoIf($[${ISNULL(${WHO})}]?no_outgoing,1)

exten => _X.,n,Set(${WHO}_CID_NAME=${HOTDESK_INFO(cid_name,${WHO})})

exten => _X.,n,Set(${WHO}_CID_NUMBER=${HOTDESK_INFO(cid_number,${WHO})})

exten => _X.,n,Set(${WHO}_CONTEXT=${HOTDESK_INFO(context,${WHO})})

exten => _X.,n,Goto(${${WHO}_CONTEXT},${EXTEN},1)

[international]

exten => _011.,1,NoOp

exten => _011.,n,Set(E=${EXTEN})

exten => _011.,n,Goto(outgoing,call,1)

exten => i,1,NoOp

exten => i,n,Playback(silence/2&sorry-cant-let-you-do-that2)

exten => i,n,Hangup

Поделиться:
Популярные книги

Скандальная свадьба

Данич Дина
1. Такие разные свадьбы
Любовные романы:
современные любовные романы
эро литература
5.00
рейтинг книги
Скандальная свадьба

Орден Багровой бури. Книга 5

Ермоленков Алексей
5. Орден Багровой бури
Фантастика:
попаданцы
аниме
фэнтези
фантастика: прочее
5.00
рейтинг книги
Орден Багровой бури. Книга 5

Адвокат Империи 7

Карелин Сергей Витальевич
7. Адвокат империи
Фантастика:
городское фэнтези
попаданцы
альтернативная история
аниме
фантастика: прочее
5.00
рейтинг книги
Адвокат Империи 7

АН (цикл 11 книг)

Тарс Элиан
Аномальный наследник
Фантастика:
фэнтези
героическая фантастика
попаданцы
аниме
5.00
рейтинг книги
АН (цикл 11 книг)

Сердце Дракона. нейросеть в мире боевых искусств (главы 1-650)

Клеванский Кирилл Сергеевич
Фантастика:
фэнтези
героическая фантастика
боевая фантастика
7.51
рейтинг книги
Сердце Дракона. нейросеть в мире боевых искусств (главы 1-650)

Вспоминай меня ночью

Рам Янка
Любовные романы:
современные любовные романы
эро литература
5.60
рейтинг книги
Вспоминай меня ночью

Адвокат вольного города 3

Кулабухов Тимофей
3. Адвокат
Фантастика:
городское фэнтези
альтернативная история
аниме
5.00
рейтинг книги
Адвокат вольного города 3

На границе империй. Том 9. Часть 5

INDIGO
18. Фортуна дама переменчивая
Фантастика:
космическая фантастика
попаданцы
5.00
рейтинг книги
На границе империй. Том 9. Часть 5

Адвокат вольного города 4

Кулабухов Тимофей
4. Адвокат
Фантастика:
городское фэнтези
альтернативная история
аниме
5.00
рейтинг книги
Адвокат вольного города 4

Земная жена на экспорт

Шах Ольга
Любовные романы:
любовно-фантастические романы
5.57
рейтинг книги
Земная жена на экспорт

Варлорд

Астахов Евгений Евгеньевич
3. Сопряжение
Фантастика:
боевая фантастика
постапокалипсис
рпг
5.00
рейтинг книги
Варлорд

Баронесса. Эхо забытой цивилизации

Верескова Дарья
1. Проект «Фронтир Вита»
Любовные романы:
любовно-фантастические романы
5.00
рейтинг книги
Баронесса. Эхо забытой цивилизации

Неудержимый. Книга XVII

Боярский Андрей
17. Неудержимый
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Неудержимый. Книга XVII

Чиновникъ Особых поручений

Кулаков Алексей Иванович
6. Александр Агренев
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Чиновникъ Особых поручений