
Я знаю, что можно использоватьИнициировать действиечерез API менеджера для инициирования вызова между внешним каналом и внутренним расширением SIP. Как можно инициировать вызов между двумя внешними каналами?
Благодаря этой функции можно снизить стоимость звонков с сотовых или внешних телефонных систем, используя решение VoIP для соединения вызовов.
решение1
Секрет понимания действия 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.