Я очень новичок в Freeswitch. Я использую FreeSWITCH версии 1.5.15b + git ~ 20141120T035109Z ~ 79de78a0fb ~ 64bit (git 79de78a 2014-11-20 03: 51: 09Z 64bit) на 64-битной виртуальной машине CentOS 6.6.
Я пытаюсь настроить freeswitch так, чтобы при получении вызова через шлюз sip он отправлял идентификатор вызывающего абонента на другой шлюз SIP (URI) для обработки. У меня много трудностей, и я не уверен, правильно ли я делаю правильные вещи, а журналы предоставляют так много информации, что трудно увидеть, что происходит. Пожалуйста, помогите мне проверить, правильно ли я настроен.
Я правильно настроил шлюзы, от которых ожидаю входящие звонки, и регистры freeswitch. пример:
София возвращает: external :: sipgw081 gateway 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 gateway 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>
Любая помощь с благодарностью принята.