ВидеоКонф(ВКС)  ::   FAQ  ::   Поиск  ::   Регистрация  ::   Вход

Переадрессация и таймер

Использование и настройка других открытых VoIP PBX

Модераторы: april22, Zavr2008

Re: Переадрессация и таймер

Сообщение SVoy » 02 июл 2013, 11:01

Troi писал(а):Работник уходит на n времени с места и набирает *n. Теперь все звонки которые направлены к нему в течении n времени переадрессуются на заранее предустановленное рабочее место.


а почему не использовать стандартные телефонные функции переадресации? что будет в вашем офисе если работник задержится где-нить?
Готов к труду и обороне!
http://svoy.in.ua - для своих
SVoy
 
Сообщений: 953
Зарегистрирован: 31 авг 2010, 10:24

Re: Переадрессация и таймер

Сообщение Troi » 02 июл 2013, 12:10

Vlad1983

благодарю вас за столь быструю и квалитативную помощь!с меня пиво!
SVoy

Вы можете пояснить о чем конкретно идет речь?
Troi
 
Сообщений: 19
Зарегистрирован: 01 июл 2013, 11:33

Re: Переадрессация и таймер

Сообщение SVoy » 02 июл 2013, 12:30

есть стандартные телефонные функции "Безусловная переадресация", "Переадресация по занятости\неответу\недоступности" и другие для рабочего места. Эти функции могут реализовываться либо АТС, либо непосредственно телефоном.
В первом случае пользователь один раз задает куда переадресовывать звонки по различным критериям, в случае с безусловным переходом, уходя с рабочего места просто активирует этот режим, через определенную комбинацию, например *72..
Готов к труду и обороне!
http://svoy.in.ua - для своих
SVoy
 
Сообщений: 953
Зарегистрирован: 31 авг 2010, 10:24

Re: Переадрессация и таймер

Сообщение Troi » 02 июл 2013, 13:00

интерессно..Есть ли источники где можно поближе с этим ознакомиться?
Troi
 
Сообщений: 19
Зарегистрирован: 01 июл 2013, 11:33

Re: Переадрессация и таймер

Сообщение SVoy » 02 июл 2013, 13:14

1} я дал ссылку на свою статью, где попытался обобщить стандартные телефонные сервисы
2) если вы посмотрите стандартные конфиги фрисвича, то вы должны там найти примеры для этих сервисов или на FS-wiki

зы оказывается я даже угадал с номером активации )
Готов к труду и обороне!
http://svoy.in.ua - для своих
SVoy
 
Сообщений: 953
Зарегистрирован: 31 авг 2010, 10:24

Re: Переадрессация и таймер

Сообщение Troi » 03 июл 2013, 13:23

Подумал над расширением функционала.Кроме времени отсутствия указывать и номер куда переводить звонок.Кроме того возмодность длительного перенаправления.

Код: выделить все

<extension name="set_time_away_and_number">
      <condition field="destination_number" expression="^\*(\d+)$">  <!--option:GET number for forwarding for example *5*1001-->
         <action application="db" data="insert/away/${sip_auth_username}/${expr(${strepoch()} + 60*$1)}"/>
         <action application="db" data="insert/forwarding/${sip_auth_username}/______1001____)}"/> <!--SET number for forwarding forwarding from dbf orwarding from db-->
      </condition>
   </extension>
   
   <extension name="set_undefined_away">
      <condition field="destination_number" expression="^\*12">  <!--option:GET number for forwarding for example *5*1001-->
         <action application="db" data="insert/undifined_away/${sip_auth_username}/1"/>    <!--SET 1 for undefinded away-->
         <!--<action application="db" data="insert/forwarding/${sip_auth_username}/______1001_____)}"/>-->    <!--SET number for forwarding from db-->
      </condition>
   </extension>
   
   <extension name="call_user_away">
      <condition field="destination_number" expression="^(\d+)$"/>   
      <condition field="${cond(${db(select/away/$1)} <= ${strepoch()} ? YES : NO)}" expression="^YES$">
      <condition field="${cond(${db(select/undifined_away/$1)} == 1} ? YES : NO)}" expression="^YES$"> <!--test if 1 seted for undefined-->
         <action application="set" data="hangup_after_bridge=true"/>
         <action application="set" data="continue_on_fail=true"/>
         <action application="bridge" data="{originate_timeout=20}user/1003"/>  <!--<action application="bridge" data="{originate_timeout=20}user/___1001___"/>   option:SET number for forwarding forwarding from db-->
         <action application="bridge" data="user/$1"/>
      </condition>
   </extension>


Возможно в FS разбить вводимый номер по группам, из *5*1001 получить 5 и 1001?
Troi
 
Сообщений: 19
Зарегистрирован: 01 июл 2013, 11:33

Re: Переадрессация и таймер

Сообщение Vlad1983 » 03 июл 2013, 13:33

вы вообще собираетесь читать доку?
Код: выделить все
<condition field="destination_number" expression="^\*(\d+)\*$(\d+)$">  <!--option:GET number for forwarding for example *5*1001-->
после совпадения в переменных $1 и $2 будут лежать соответствующие значения
ЛС: @rostel
Vlad1983
 
Сообщений: 4251
Зарегистрирован: 09 авг 2011, 11:51

Re: Переадрессация и таймер

Сообщение Troi » 03 июл 2013, 14:14

извиняюсь, тут на самом деле вcе было просто...

<extension name="set_time_away_and_number">
<condition field="destination_number" expression="^\*(\d+)\*$(\d+)$">
<action application="db" data="insert/away/${sip_auth_username}/${expr(${strepoch()} + 60*$1)}"/>
<action application="db" data="insert/forwarding/${sip_auth_username}/$2}"/>
</condition>
</extension>


Код: выделить все
extension name="call_user">
      <condition field="destination_number" expression="^(\d+)$"/>   
      <condition field="${cond(${db(select/away/$1)} <= ${strepoch()} ? YES : NO)}" expression="^YES$">
      <condition field="${cond(${db(select/undifined_away/$1)} == 1} ? YES : NO)}" expression="^YES$">
         <action application="set" data="hangup_after_bridge=true"/>
         <action application="set" data="continue_on_fail=true"/>
              <action application="bridge" data="{originate_timeout=20}user/${db(select/forwarding/$2)"/>     
         <action application="bridge" data="user/$1"/>
      </condition>
   </extension>


правильно тут я вызываю $2 из "set_time_away_and_number"?
Troi
 
Сообщений: 19
Зарегистрирован: 01 июл 2013, 11:33

Re: Переадрессация и таймер

Сообщение Vlad1983 » 03 июл 2013, 14:57

такое громодьё скорей всего не сработает уже на проверке condition
пытаться проверить так или нет желания нет

если и сработает, то спотыкнется здесь
<action application="bridge" data="{originate_timeout=20}user/${db(select/forwarding/$2)"/>
по идее должно быть
<action application="bridge" data="{originate_timeout=20}user/${db(select/forwarding/$1)"/>
ЛС: @rostel
Vlad1983
 
Сообщений: 4251
Зарегистрирован: 09 авг 2011, 11:51

Пред.

Вернуться в FreeSwitch, SER, Yate и другие

Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 8

© 2008 — 2024 Asterisk.ru
Digium, Asterisk and AsteriskNOW are registered trademarks of Digium, Inc.
Design and development by PostMet-Netzwerk GmbH