они там костылей уже гору написали. вполне может быть.
meral ( 2013-03-19 17:58:06 +0400 )редактироватьугу ) и будет потом вот так http://forum.asterisk.ru/viewtopic.php?f=4&t=2706&p=30370
zzuz ( 2013-03-19 18:12:38 +0400 )редактироватьЕсть астериск 1.6.2 + FreePBX 2.7 с кучей кастомных контекстов. Мне необходимо при входящем звонке узнавать с какого номера(транка) пришел звонок, т.е. определять его DID, и затем в один из кастомных контекстах этот DID необходимо использовать.
Ничего подходящего как вот это не придумал:
exten => 300,n,Set(__DIDnow=${CHANNEL})
exten => 300,n,noop(${DIDnow})
в логе
-- Executing [300@ext-queues:5] Set("SIP/227722-0000009b", "__DIDnow=SIP/227722-0000009b") in new stack
-- Executing [300@ext-queues:6] NoOp("SIP/227722-0000009b", "SIP/227722-0000009b") in new stack
как видно не очень удобно придется дальше работать со строкой чтобы из этого "SIP/227722-0000009b" получилось вот это "227722"
Может есть другой способ?
PS: решено
[ext-did-catchall]
include => ext-did-catchall-custom
exten => _.,1,Noop(Catch-All DID Match - Found ${EXTEN} - You probably want a DID for this.)
exten => _.,n,Set(__DIDnow=${EXTEN})
exten => _.,n,noop(${DIDnow}) ;номер DID
exten => _.,n,Goto(ext-did,s,1)
; end of [ext-did-catchall]
Используйте переменную ${FROM_DID}
. Она назначается в контексте входящей маршрутизации.
А для анализа переменных канала используйте DumpChan()
, чтобы проверить какие переменные унаследованы или назначены в текущий канал обработки.
они там костылей уже гору написали. вполне может быть.
meral ( 2013-03-19 17:58:06 +0400 )редактироватьугу ) и будет потом вот так http://forum.asterisk.ru/viewtopic.php?f=4&t=2706&p=30370
zzuz ( 2013-03-19 18:12:38 +0400 )редактироватьЗадан: 2013-03-19 16:43:42 +0400
Просмотрен: 2,428 раз
Обновлен: Mar 19 '13
Покритикуйте пожалуйста следующий код.
Приветствие вызывающей стороне
Какое правило для звонков на sip url?
Переходы в диалплане. Spawn extension.
Распределение входящих по транкам
A2Billing: no value given for outbound proxy on line 0 of sip.conf
Как продолжить dialplan если звонящий положил трубку до ответа?
Проект компании "АТС Дизайн"
Asterisk® и Digium® являются зарегистрированными торговыми марками компании
Digium, Inc., США.
IP АТС Asterisk распространяется под лицензией
GNU GPL.
товаришь. вы уже ЧЕТЫРЕ года как написали у себя на сайте что вы експерты по астериск. ну нельзя же так позорится,а?
meral ( 2013-03-19 17:30:30 +0400 )редактироватьне все все помнят, особенно когда надо очень срочно.
romariosar ( 2013-03-19 17:32:21 +0400 )редактироватьну так напишите что вы "знакомы с астериском". вы ж написали что експерты. вообще гугл по данному вопросу ответ дает за секунды.
meral ( 2013-03-19 17:57:24 +0400 )редактировать