@ru_freeswitch

Страница 204 из 430
ros
13.12.2017
15:50:20
вот там и менять

скрипты отсюда https://github.com/intralanman/fs_curl

e
13.12.2017
15:52:09
так, я походу понял

в таблице directory_global_params пусто

Google
Anton
13.12.2017
15:52:52
какой пиздец

e
13.12.2017
15:53:25
что именно?

Anton
13.12.2017
15:53:31
ппх

e
13.12.2017
15:54:37
я пока вкатываюсь, поэтому тут пофиг

спасибо за помощь

Anton
13.12.2017
15:56:49
тэкс

ты скрипты можешь редактировать?

e
13.12.2017
15:57:14
да

Anton
13.12.2017
15:57:32
https://github.com/intralanman/fs_curl/blob/master/fs_directory.php

нас интересует вот это

ты тут?

e
13.12.2017
16:05:30
да

Anton
13.12.2017
16:05:48
ты таблицу с доменами заполнял?

Google
e
13.12.2017
16:06:43
да, три таблицы заполнял: directory, directory_params, directory_domains

Anton
13.12.2017
16:07:11
directory_domains

e
13.12.2017
16:07:12
сейчас directory_global_params заполняю

Anton
13.12.2017
16:07:53
directory_global_params

напиши

param_name: dial-string

param_value:

{presence_id=${dialed_user}@${dialed_domain}}${sofia_contact(${dialed_user}@${dialed_domain})}

это одна строчка без пробелов

и так для кадого домена

т.е. [ домен, dial-string, {bla-bla-$bla}, домен, dial-string, {bla-bla-$bla}, домен, dial-string, {bla-bla-$bla} ]

e
13.12.2017
16:12:11
все работает, спасибо!

механизм понял

Anton
13.12.2017
16:12:40
$this->xmlw->startElement( 'param' ); $this->xmlw->writeAttribute( 'name', $res[$i]['param_name'] ); $this->xmlw->writeAttribute( 'value', $res[$i]['param_value'] ); $this->xmlw->endElement();

пиздец, бедные похапешники.

Вот кусок оригинатного конфига

<include> <!--the domain or ip (the right hand side of the @ in the addr--> <domain name="$${domain}"> <params> <!-- These are required for Verto to function properly --> <param name="jsonrpc-allowed-methods" value="verto"/> <param name="jsonrpc-allowed-event-channels" value="demo,conference,presence"/> </params> <variables> <variable name="record_stereo" value="true"/> <variable name="default_gateway" value="$${default_provider}"/> <variable name="default_areacode" value="$${default_areacode}"/> <variable name="transfer_fallback_extension" value="operator"/> </variables> <groups> <group name="default"> <users> <X-PRE-PROCESS cmd="include" data="default/*.xml"/> </users> </group> </groups> </domain> </include>

все что идет после <domain name="{name}"> и до groups это у тебя в таблицах глобал парамс и глобал вэриэблс

надо читать спеку, что значит кадый парметр

туда можно подоменно указать гейты, экстеншны, пермишны и еще кучу настроек

Google
Anton
13.12.2017
16:17:46
т.е. все кто лезет от этого домена будут под эттими настройками

e
13.12.2017
16:22:12
ага, ок

Anton
13.12.2017
16:23:23
https://freeswitch.org/confluence/display/FREESWITCH/XML+User+Directory

читай тут. желательно несколько раз. несколько дней.

до меня в свое время только через месяц дошло как эта херь устроена

e
13.12.2017
16:25:05
значит еще не все потеряно лол

у меня

Ihor
13.12.2017
17:07:31
Может FS не получил 200 OK на Invite
Собрал на коленке такую же схему на 1.6.18 - работает. На 1.6.19 (из оффрепов) - не хочет. В общем случае получалась схема IPPhone1 (NAT) - FS - Aster - IPPhone2 (NAT) Если FS из пакетов 1.6.19 - не работает. Если 1.6.18 (просто нашел пакеты от старой версии) - работает

В общем, то ли лыжи, то ли я.

Anton
13.12.2017
17:33:02
собери 1.7

Ihor
13.12.2017
23:59:32
Это ппц, но вроде победил. Суть следующая. У меня был установлен api_on_answer, он вызывал lua скрипт, который дергал curl через mod_curl. Так вот если это все убрать, то все прекрасно работает. Я переделал вызов curl на bgapi curl и все полетело. Причем повторяется на версиях 1.6 начиная с 1.6.9 до 1.6.19

енот
14.12.2017
03:27:47
Здравствуйте, а напомните пожалуйста, вот через запятую это по очереди, а как одновременно? Что-то я туплю и не могу найти в доке.

Konstantin
14.12.2017
03:28:20
Через запятую это одновременно, а через | это по очереди.

енот
14.12.2017
03:29:10
хм, тогда почему у меня по очереди то тогда

Konstantin
14.12.2017
03:29:56
https://freeswitch.org/confluence/display/FREESWITCH/mod_dptools%3A+bridge#mod_dptools:bridge-Callingmultipledestinations

Цитирую: "By using commas to separate the addresses, bridge will dial them simultaneously. Using pipes, it'll dial one at a time. Use :_: to separate multiple destinations to be dialled in a multi-threaded manner (this is referred to as "Enterprise Origination") - this gives more flexibility (and avoids the "Only calling the first element in the list in this mode" warning)"

енот
14.12.2017
03:30:59
а на dial_string group_call это как-то иначе действует?

ААА

всё, понял, сорри

Google
Ihor
14.12.2017
09:46:09
Добрый день. Такой вопрос, почему FS может реагировать на REGISTER таким образом? http://prntscr.com/hnc0q2

agressive-nat-detection и NDLB-force-rport включен

Сергей
14.12.2017
09:50:25
Какой порт в поле Contact?

Ihor
14.12.2017
09:51:46
5060

Но сам телефон за NAT

Alexandru
14.12.2017
09:52:48
Сергей
14.12.2017
09:52:51
Тоже такое было. Лечили на оконечке, чтобы не слал 5060 в контакте.

Ihor
14.12.2017
09:54:05
может sip alg?
Это вообще-то возможно. Но, насколько я знаю, SIP ALG меняет сам пакет. Тут ничего не поменяно

Сергей
14.12.2017
09:54:45
А 5060 в контакт тогда кто подставляет?

Ihor
14.12.2017
09:54:59
Телефон. Порт источника

Alexandru
14.12.2017
09:55:05
угу

а в самом register есть rport?

Ihor
14.12.2017
09:55:31
Нету

REGISTER sip:pbx.ХХХХХ SIP/2.0 From: "901"<sip:901@pbx.ХХХХХ>;tag=830640-ea01a8c0-13c4-50029-39-373dc425-39 To: "901"<sip:901@pbx.ХХХХХХХ> Call-ID: 393031000-aabb-7d98f63e-b4edcbfedf-0-1cd1b88c CSeq: 1 REGISTER Via: SIP/2.0/UDP 192.168.1.234:5060;branch=z9hG4bK-39-e180-3274304a Max-Forwards: 70 Supported: replaces User-Agent: LG-Ericsson IP8802 v1.1.02spbx SN/B40EDCBFED0F Expires: 0 Contact: <sip:901@192.168.1.234:5060;transport=UDP>;+sip.instance="<urn:uuid:39303100-AABB-0000-0000-B40EDCBFED0F>" Content-Length: 0

попробовал поменять порт на оконечном устройстве - то же самое. Теперь FS отвечает на 5085, а не на порт-источник от роутера. Я такое лечил переключением на TCP, но этот телефон TCP не умеет (

Ihor
14.12.2017
10:05:44
Почему?

Alexey
14.12.2017
10:05:48
они нужны только для тех клиентов, которые сломаны

agressive-nat-detection (режим "Asterisk") вообще стандарты нарушает

Google
Alexey
14.12.2017
10:06:49
nat acl должно быть достаточно

клиенты могут у себя включить rport?

Ihor
14.12.2017
10:09:08
Неа. Это настолько тупой телефон, что не умеет этого

Alexey
14.12.2017
10:13:28
а source порт могут менять?

Ihor
14.12.2017
10:14:10
Да, поменял. Но запросы все равно от роутера приходят от других портов. Например, я ставлю порт источника 5080, запрос приходит от 2035

Alexey
14.12.2017
10:14:53
а роутер какой?

Да, поменял. Но запросы все равно от роутера приходят от других портов. Например, я ставлю порт источника 5080, запрос приходит от 2035
2035 звучит как cisco, если да, то нужно убедиться, что в конфиге есть необходимые строки про "no ip nat service sip..."

Ihor
14.12.2017
10:26:36
Роутер какой-то ASUS. И у меня дичайшие подозрения на SIP ALG.

Но что интересно - с Asterisk все прекрасно работает

Alexey
14.12.2017
10:28:40
Роутер какой-то ASUS. И у меня дичайшие подозрения на SIP ALG.
и у меня подозрения на ALG, роутер не должен менять порт, если все телефоны используют разный

Ihor
14.12.2017
10:32:10
Нету SIP ALG…. Удивительное рядом

Alexey
14.12.2017
10:34:08
Нету SIP ALG…. Удивительное рядом
nat acl в профиле точно указан?

в регистрации nat задетекчен?

Ihor
14.12.2017
10:34:46
apply-nat-acl nat.auto

Так регистрация то и не проходит

Alexey
14.12.2017
10:35:07
ах да, точно

пробуйте по отдельности (если такое возможно) сначала новый профиль на другом порту, потом только NDLB (2 опции в профиле, 1 (кажется) в директории), потом только aggressive nat det

Ihor
14.12.2017
10:37:49
ок, спасибо

Ivan
14.12.2017
10:54:46
привет, уточните, fs где-то хранит сессии? например, идет звонок через mod_verto, он сохраняет в local_storage сессию и передает fs, а fs где-то хранит ее?

Страница 204 из 430