Как правильно маршрутизировать входящие звонки FreeSWITCH на внешний SIP URI
Я очень очень новичок в Freeswitch. Я использую FreeSWITCH версии 1.5.15b+git~20141120T035109Z~79de78a0fb~64 бита (git 79de78a 2014-11-20 03:51:09Z 64 бита) на 64-битной виртуальной машине CentOS 6.6.
Я пытаюсь настроить freeswitch таким образом, чтобы после получения вызова через SIP-шлюз он отправлял идентификатор вызывающего абонента на другой SIP-шлюз (URI) для обработки. У меня много трудностей, и я не уверен, правильно ли я поступаю правильно, а в журналах столько информации, что трудно понять, что происходит. Пожалуйста, помогите мне проверить, правильно ли я настроен.
Я настроил шлюзы, от которых ожидают входящие звонки, и правильно регистрирует freeswitch. пример:
София возвращается: external::sipgw081 шлюз sip:012345081@sip.sipgwtelecoms.com REGED
Шлюз, на который я рассчитываю направить caller_id_numbers, определен, но, поскольку мне не дали пароль или не попросили зарегистрироваться, я настроил его так (это нормально?):
<gateway name="othersipgw">
<param name="username" value="user.name"/>
<param name="password" value="none"/>
<param name="register" value="false"/>
<param name="realm" value="sip.othersipgw.in"/>
<param name="proxy" value="sip.othersipgw.in"/>
<param name="outbound-proxy" value="sip.othersipgw.in"/>
<param name="expire-seconds" value="3600"/>
<!-- <param name="caller-id-in-from" value="true"/> -->
</gateway>
София возвращает: external::othersipgw шлюз sip:user.name@sip.othersipgw.in NOREG
Из того, что я вижу в документации, которую я прочитал, для маршрутизации входящих вызовов в любом месте в режиме freeswitch, вызовы, которые изначально поступают в открытый контекст и обрабатываются как ненадежные, если они не были специально направлены на добавочный номер по умолчанию контекст, то они просто отключены.
Таким образом, я создал файл в conf / dailplan / public со следующим, чтобы поставить расширение 1212 по умолчанию (я хочу направить идентификаторы вызывающего абонента с 11 цифрами, все начинающиеся с номера 0):
<include>
<extension name="sipgw-inbound">
<condition field="caller_id_number" expression="^0(\d+)$">
<!-- <action application="set" data="domain_name=$${domain}"/> -->
<action application="transfer" data="1212 XML default"/>
</condition>
</extension>
</include>
Здесь начинается мое замешательство. Я создал файл в файле conf/dialplan/default и отредактировал файл conf/dialplan/default.xml для маршрутизации вызовов, отправленных на 1212, через URI внешнего шлюза. Я также хочу, чтобы caller_id с префиксом +234
default.xml:
<extension name="1212">
<condition field="destination_number" expression="^1212$">
<action application="set"data="absolute_codec_string=G729"/>
<action application="set" data="hangup_after_bridge=true"/>
<action application="bridge" data="sofia/gateway/othersipgw/+234$1"/>
</condition>
Файл outbound.xml в файле conf/dialplan/default:
<include>
<extension name="othersipgwoutbound">
<condition field="destination number" expression="1212">
<action application="set"data="absolute_codec_string=G729"/>
<action application="bridge" data="[leg_timeout=5]sofia/gateway/othersipgw/$1"/>
</condition>
</extension>
</include>
Любая помощь с благодарностью принята.