Появилась задача на одном сервере астериска сделать несколько контекстов с одинаковыми пользователями, условно говоря в контексте [office1] есть абоненты 10, 11, 12, итд. и в [office2] есть абоненты 10, 11, 12 итд.
Контекст в контекст включать с помощью include не вариант - там разные входящие/исходящие наружу правила.
Отсюда вопрос: как прописать екстеншн, чтобы абонент 11 из [office1] мог позвонить абоненту 11 (и любому другому, конечно) из [office2], например с помощью префикса?
Пробовал делать так:
exten => _2XX,1,DIAL(SIP/${EXTEN:1}@office2) - для абонентов в [office1]
и
exten => _1XX,1,DIAL(SIP/${EXTEN:1}@office1) - для абонентов в [office2]
попытки иным путем переправить звонок в другой контекст также не увенчались успехом. Google на этот счет выдает невнятные темы.
Заранее спасибо!
_________________
P4 3.0 + 1Gb CentOS 5.8 Aster 1.8.16
Не люблю gui-сборки: натуральный продукт вкуснее.
И еще: я ПРОФИ так как НЕ ЛЕНЮСЬ читать литературу.
exten => _1XX,1,Dial(Local/${EXTEN:1}@office2)
но зачем /11 нужно, я не понял =)))
и еще вопрос вдогонку: почему нежелательно использовать local?
| Kuzzz @ Пн Июн 24, 2013 18:04 писал(а): |
| Спасибо! помогла конструкция exten => _1XX,1,Dial(Local/${EXTEN:1}@office2) но зачем /11 нужно, я не понял =))) |
Если твой CALLERID(num) == 11 то этот экстеншен выполнится (книжку почитай)
| Kuzzz @ Пн Июн 24, 2013 18:04 писал(а): |
| и еще вопрос вдогонку: почему нежелательно использовать local? |
создаются лишние каналы, в CDR много лишнего пишется
можно так:
| Код: |
| [office1] exten => _1X,1,Dial(SIP/${EXTEN}) exten => _1XX,1,Goto(${EXTEN:1},1) exten => _2XX,1,Goto(office2,${EXTEN:1},1) [office2] exten => _1X,1,Dial(SIP/${EXTEN}) exten => _1XX,1,Goto(office1,${EXTEN:1},1) exten => _2XX,1,Goto(${EXTEN:1},1) |
_________________
Jabber конференция
сервер: conference.jabber.ru
комната: asterisk