Назад | Перейти на главную страницу

Как правильно маршрутизировать входящие вызовы FreeSWITCH на внешний SIP URI

Я очень новичок в 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>

Любая помощь с благодарностью принята.