
Igor
09.02.2017
10:12:47
проблемка выскочила
не влезает SDP в UDP пакет
собственно вопрос, какой из параметров шлюза заставляет работать его через TCP?
register-transport=tcp не канает, всё равно трафик идет UDPшный

Google

Denis 災 nobody
09.02.2017
10:49:45
а обе стороны хотят тсп?

Igor
09.02.2017
10:51:19
да, обе хотят
в шапке летит transport=tcp, все дела, но трафик сам по себе UDP
короче мне либо через TCP пустить его
либо compact headers включить

Denis 災 nobody
09.02.2017
10:52:50

Igor
09.02.2017
10:53:14
там отдельный профиль под эту потеху
короче этот вопрос закрыт
но меня не отпускает регистрация TCP
собственно что делаю
регаю один ФС на другом
FS1 - профиль на порту 5060. bind tcp и udp
FS2 - профиль на порту 5088, tcp и udp

Google

Igor
09.02.2017
11:27:13
создаю шлюз, ставлю register-transport=tcp, contact-params=tport=tcp
регаюсь
прилетает
Via: SIP/2.0/UDP
пакет соответственно
(tos 0x0, ttl 56, id 2017, offset 0, flags [none], proto UDP (17), length 835)
что я делаю не так?

Denis 災 nobody
09.02.2017
11:30:08
а в профиле что?
BIND-URL
sofia status profile ...

Igor
09.02.2017
11:30:36
сек

Denis 災 nobody
09.02.2017
11:30:56
ну и странно, должен действовать как в контакте сказано..

Igor
09.02.2017
11:31:08
BIND-URL sip:mod_sofia@192.168.87.50:5088;transport=udp,tcp

Denis 災 nobody
09.02.2017
11:31:18
ну у тебя преферред удп
если на профиле совсем отключить удп, должно по тсп побежать

Igor
09.02.2017
11:32:11
я собственно так и подумал, но как то это неправильно чтоли

Denis 災 nobody
09.02.2017
11:32:18
почему?

Igor
09.02.2017
11:32:29
ну всмысле совсем отключить UDP на профиле
по идее я же в шлюзе указал что юзай TCP для этой регистрации
профиль TCP держит

Google

Denis 災 nobody
09.02.2017
11:33:34
в профиле <param name="bind-params" value="transport=tcp"/> выставил?

Igor
09.02.2017
11:35:23
ага, походу тут то я и промахнулся. я только на bind-url глянул

Denis 災 nobody
09.02.2017
11:37:23
но вообще да, должен был из контакта взять тсп
багрепорт? )
или формат может особый нужен

Igor
09.02.2017
11:40:52
Via: SIP/2.0/UDP
один хрен

Denis 災 nobody
09.02.2017
11:42:12
и в дебаг логе нет аномалий?

Igor
09.02.2017
11:43:06
не, там всё норм
вобщем веселая штука
если ставишь transport=tcp

Denis 災 nobody
09.02.2017
11:43:25
багу заведи..

Igor
09.02.2017
11:43:33
ща до мастера сначала обновлюсь

Denis 災 nobody
09.02.2017
11:43:38
или ответят что не так, или примут

Igor
09.02.2017
11:43:39
а то у меня там билд не оч свежий

Denis 災 nobody
09.02.2017
11:43:58
но не думаю что ты первый, кто по тсп хочет

Igor
09.02.2017
11:44:14
да я тоже так думаю, щас жиру поковыряю на эту тематику
может кто и отписывал чего

Denis 災 nobody
09.02.2017
12:57:13
как поднять громкость у phrase?
кроме прямой правки файлов

Google

Igor
09.02.2017
12:58:46
<action application="set_audio_level" data="write 1"/>
не пробовал?

Denis 災 nobody
09.02.2017
12:59:16
нет еще )
частью фразу не сделать?

Igor
09.02.2017
12:59:58
честногвооря не юзал phrase никогда, не подскажу
короче на 1.6.14 git 9743872 2017-02-03 22:25:09Z 64bit такая же хрень с TCP
пойду на жире поищу что нибудь

Яков
09.02.2017
16:43:05
и здесь все теже люди

Denis 災 nobody
09.02.2017
17:00:48
а кто знает, как передать в питон скрипт все канальные переменные, чтобы работал serialize?
использую хук, но по ряду причин нужна интерактивная обработка. Если запускать питон скрипт, там можно только через getVariable по переменной выбирать.. не очень удобно
или как можно быстро и просто

Alexandru
09.02.2017
17:06:47
getBody же, не?
там прямо в вики пример описан

Denis 災 nobody
09.02.2017
17:07:31
keys = ['direction', 'call_direction', 'sip_h_X-Inring', 'sip_h_X-Leg2i', 'sip_ph_X-Leg2i', 'sip_rh_X-Leg2i', 'X-ResolveArray', 'channel_name']
for k in keys:
freeswitch.consoleLog("notice", str(k))
val = session.getVariable(k)
if val:
data["variable_" + k] = val
боди был при этом пустой
и я про вызов вида action application=set data=${python aaa}

Alexandru
09.02.2017
17:09:55
а, тю, да, это для эвентов

Denis 災 nobody
09.02.2017
17:10:17
да, в ивентах есть .serialize('json')
и прочие плюшки
def fsapi(session, stream, env, args):
"""
Handles API calls (from fs_cli, dialplan HTTP, etc.).
Default name is 'fsapi', but it can be overridden with <modname>::<function>
session is a session object when called from the dial plan or the
string "na" when not.
stream is a switch_stream. Anything written with stream.write() is
returned to the caller.
env is a switch_event.
args is a string with all the args passed after the module name.
"""
и работать с этим уныло

Google

Alexandru
09.02.2017
17:16:10
mod_python я не заводил

Denis 災 nobody
09.02.2017
17:16:34
аналог - луа, но тоже дрянь

Igor
09.02.2017
17:18:19
дык там методы одни и те же
не отличаются ниччем
разница была в dbh только
питон сегфолтит с бд а луа нет

Alexandru
09.02.2017
17:19:39
сегфолтит в смысле ложится или в смысле есть такая возможность?

Igor
09.02.2017
17:19:54
кладет фс
по крайней мере так было в старых версиях, в новых не пробовал

Denis 災 nobody
09.02.2017
17:20:39
да, с алхими

Igor
09.02.2017
17:20:40
не только с алхимией

Alexandru
09.02.2017
17:20:51
хм.

Igor
09.02.2017
17:20:59
напрямую с pymysql
и через odbc
та же самая хрень была
не всегда, не постоянно, но с завидной периодичностью
что в корке было не помню
гдето натыкался помоему в жире на подобную проблему, там кто-то из разрабов отписался, если что-то не работает из src/mod/languages используйте lua