freeswitchforum.com
https://freeswitchforum.com/

FreeSWITCH FAQ и HOWTO
https://freeswitchforum.com/viewtopic.php?f=6&t=2
Страница 1 из 2

Автор:  joohny [ 02 июл 2012 17:00 ]
Заголовок сообщения:  FreeSWITCH FAQ и HOWTO

FAQ по FreeSWITCH для начинающих.

Русская документация по FreeSWITCH

Что такое FreeSWITCH?
Какие платформы поддерживает FreeSWITCH?
Минимальные, рекомендованные требования к системе?
Как подключаться к freeswitch
Как исполнить удаленную команду
Установка Freeswitch c git Ubuntu 12.04 x32
установка mod_skypopen в ubuntu
VOIP оборудование, совместимое с FreeSWITCH
Маршрутизация звонков исходя из времени, даты, дней недели и других условий
FreeSWITCH __ mod_gsmopen __ USSD
Кодек G729 для FreeSWITCH
Отправка sms посредствам gsmopen FreeSWITCH
Вариант работы с несколькими транками от одного провайдера
Воспроизведение сообщения(анонс) перед соединением
Поддержка русского языка в FreeSwitch
FreeSwitch bridge через user
Установка FreeSwitch пакетами в Debian\Ubuntu
Настройка Multifon и FreeSWITCH
Сброс всех SIP регистраций в FreeSWITCH
WebRTC на Freeswitch
Freeswitch g729 для Windows
MNP база перенесенных номеров, как узнать провайдера MNP номера

Автор:  joohny [ 11 июл 2012 10:09 ]
Заголовок сообщения:  Re: FreeSWITCH FAQ

Что такое FreeSWITCH?
FreeSWITCH - это масштабируемая, кросс платформенная система, позволяющая распределять, обрабатывать и совершать голосовые и видеовызовы

Автор:  joohny [ 11 июл 2012 10:14 ]
Заголовок сообщения:  Re: FreeSWITCH FAQ

Какие платформы поддерживает FreeSWITCH?
FreeSWITCH может "из коробки" собираться и работать на Windows, Mac OS X, Linux, Solaris и *BSD.

Автор:  joohny [ 11 июл 2012 10:44 ]
Заголовок сообщения:  Re: FreeSWITCH FAQ

Минимальные, рекомендованные требования к системе?
    - 32 битная система (рекомендуется использовать 64-х битные системы).
    - 512 Мб оперативной памяти (1 Гб рекомендовано).
    - 50 Мб пространства на жестком диске.
Стоит так же добавить что системные требования сильно зависят от конкретных задач, которые решает сервер. Приятным моментом является то, что FreeSWITCH может работать и на домашнем роутере.

Автор:  joohny [ 13 июл 2012 11:57 ]
Заголовок сообщения:  Re: FreeSWITCH FAQ

Как подключаться к freeswitch
Для подключения к локальному, а также удаленному freeswitch удобно использовать утилиту fs_cli. В таком случае можно подключаться к freeswitch с любой операционной системы(поддерживаемой), главное скомпилировать или скачать для нее fs_cli.
Для подключения данная утилита использует модуль Mod_event_socket, в настройках которого нужно указать ip адрес 0.0.0.0 (или другой, специфичный для вашей системы) если планируете удаленно подключаться. Так же стоит помнить про безопасность и изменить в настройках данные для авторизации.
Использование:
Код:
fs_cli [-H <host>] [-P <port>] [-p <secret>] [-d <level>] [-x command] [profile]

Автор:  joohny [ 13 июл 2012 12:03 ]
Заголовок сообщения:  Re: FreeSWITCH FAQ

Как исполнить удаленную команду
Например попытка подключиться к freeswitch и выполнить команду sofia status profile internal может выглядеть так:
Код:
fs_cli -H 10.10.10.10 -x "sofia status profile internal"

Автор:  joohny [ 05 авг 2013 20:55 ]
Заголовок сообщения:  Re: FreeSWITCH FAQ и HOWTO

Команды Asterisk и FreeSWITCH

Автор:  joohny [ 15 авг 2013 10:36 ]
Заголовок сообщения:  Re: FreeSWITCH FAQ и HOWTO

Как сделать исходяший звонок на пользователя, который является SIP сервером

Код:
<context name="out-gw">
        <extension name="OUT">
            <condition field="destination_number" expression="^.+$">
                <action application="set" data="gw=telecom" />
                <action application="set" data="accountcode=${user_data(${gw}@${domain_name} var accountcode)}"/>
                <action application="bridge" data="${regex(${sofia_contact(*/${gw}@${dialed_domain})}|(^\w+/\w+)/|%1)}/sip:${destination_number}@${regex(${sofia_contact(*/${gw}@${dialed_domain})}|(\d+.\d+.\d+.\d+:\d+.*)|%1)}"/>
                <action application="hangup" />
            </condition>
        </extension>
  </context>

Автор:  joohny [ 24 сен 2013 13:00 ]
Заголовок сообщения:  Re: FreeSWITCH FAQ и HOWTO

Пока не пропала информация - анонс позиции звонящего в очереди mod_callcenter
http://wiki.freeswitch.org/wiki/Mod_callcenter#Lua_Script_to_announce_members_position
Lua Script to announce members position
This is the script to place in $PREFIX/scripts:
Код:
-- Initialization of variables
api = freeswitch.API()
-- First argument is caller uuid.
caller_uuid = argv[1]
if caller_uuid==nil then return end
-- Second argument is callcenter name.
queue_name = argv[2]
if queue_name==nil then return end
-- Third argument is repeating interval in miliseconds.
mseconds = argv[3]
if mseconds==nil then return end
 
while (true) do
   freeswitch.msleep(mseconds) -- Pause before announcing position
   members = api:executeString("callcenter_config queue list members "..queue_name)
   pos=1 -- Variable to count position
   exists=false -- Variable to allow script termination when member leaves queue
   for line in members:gmatch("[^\r\n]+") do
      if (string.find(line,"Trying")~=nil or string.find(line,"Waiting")~=nil) then
          -- Members have a position when their state is Waiting or Trying
         if string.find(line,caller_uuid,1,true)~=nil then
            exists=true -- Member still in queue so script must continue
            api:executeString("uuid_broadcast "..caller_uuid.." ivr/ivr-you_are_number.wav aleg")
            api:executeString("uuid_broadcast "..caller_uuid.." digits/"..pos..".wav aleg")
         end
         pos=pos+1
      end
   end
   if exists==false then return end -- If member was not found in queue, or it's status is Aborted - terminate script
end

Пример плана набора
Код:
<extension name="callcenter-example">
   <condition field="destination_number" expression="^callcenter$" break="on-false">
      <!-- limit 3 calls to this destination number per 1 second, otherwise give congestion message -->
      <action application="limit" data="hash inbound ${destination_number} 3/1 !NORMAL_CIRCUIT_CONGESTION"/>
   </condition>
   <condition>
      <!-- play a message before entering the queue. -->
      <action application="playback" data="ivr/ivr-welcome.wav"/>
      <action application="playback" data="ivr/ivr-one_moment_please.wav"/>
      <!-- hangup after successful bridge to agent -->
      <action application="set" data="hangup_after_bridge=true"/>
      <!-- queue caller -->
      <action application="set" data="result=${luarun(callcenter-announce-position.lua ${uuid} example@default 10000)}"/>
      <action application="callcenter" data="example@default"/>
      <!-- if no agent was reached and using max-wait-time - send to general voicemail -->
      <action application="playback" data="ivr/ivr-please_state_your_name_and_reason_for_calling2.wav"/>
      <action application="answer"/>
      <action application="set" data="skip_greeting=true"/>
      <action application="set" data="skip_instructions=true"/>
      <action application="voicemail" data="default ${domain_name} callcenter"/>
      <action application="hangup"/>
   </condition>
</extension>

Автор:  Vlad1983 [ 07 ноя 2013 14:41 ]
Заголовок сообщения:  Re: FreeSWITCH FAQ и HOWTO

после приближения числа пользователей онлайн к 2 тысячам стал замечать в конце рабочего дня повышение загрузки CPU

в ходе расследования выяснилось что у кучи пользователей ноутбуки
они их засылали в спящий режим не выключая софтфоны, соответственно регистрация не обнулялась.
если такой пользователь за NAT FS продолжал пытаться доставить пакеты OPTIONS (<param name="nat-options-ping" value="true"/>)

ситуация усугублялась тем, что подавляющее большинство регалась по TCP

решение нашлось сразу же
в профиле sofia <param name="unregister-on-options-fail" value="true"/>

через несколько минут убилась несколько сотен регистраций и загрузка упала до нормы

Страница 1 из 2 Часовой пояс: UTC + 4 часа
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/