Я знаю, что можно использовать Начать действие через API менеджера, чтобы инициировать вызов между внешним каналом и внутренним добавочным номером SIP. Как инициировать звонок между двумя внешними каналами?
Обладая этой функцией, можно снизить стоимость вызовов из сотовых или удаленных телефонных систем, используя решение VoIP для переадресации вызова.
Секрет понимания действия Originate состоит в том, чтобы понять, что оно соединяет устройство на комбинацию контекста / добавочного номера / приоритета в диалплане.
Обычно вы увидите что-то вроде этого:
Action: Originate
Channel: SIP/Alice
Context: testing
Exten: 200
Priority: 1
Это вызовет SIP-телефон Алисы, и когда она ответит, подключит ее к добавочному номеру 200 в контексте [тестирования].
Теперь, чтобы соединить два внешних номера, все, что вам нужно, это добавочный номер в диалплане, который знает, как набирать внешний номер. Предположим, мы настроили что-то вроде этого:
[external]
exten => _NXXNXXXXXX,1,Dial(SIP/some_provider/${EXTEN})
тогда мы могли бы посылать вызовы во [внешний] контекст, чтобы они дозванивались до внешнего. (Я использовал североамериканскую нумерацию и магистраль SIP для подключения к внешнему миру ... ваш диалплан, очевидно, будет немного другим, но я надеюсь, что вы уловили идею.)
Как только вы это сделаете, вы можете сделать это через AMI:
Action: Originate
Channel: SIP/some_provider/8005551212
Context: external
Exten: 8885554321
Priority: 1
Это вызовет номер 8005551212, и когда на эту линию ответят, начните набирать 8885554321.