@ru_freeswitch

Страница 100 из 430
Yuriy
12.06.2017
08:07:05
что типа вот этого session:setHangupHook Но для Answer

Google
Yuriy
12.06.2017
10:34:33
Мешает не понимание как это сделать))

Alexandru
12.06.2017
10:34:53
Lua script.lua function_name

Yuriy
12.06.2017
10:35:11
А. Ну понял.

Да прсто это все равно как то некрасиво что ли)))

Alexandru
12.06.2017
10:36:00
Ну извините.. Это вообще-то софтсвич а не фреймворк

Yuriy
12.06.2017
10:36:16
Я просто думал что через АПИ есть какой то способ забиндить именно на вызов хука

Alexandru
12.06.2017
10:38:17
Не понимаю если честно о чем идет речь

Он ансвер это хук и есть

Yuriy
12.06.2017
10:39:10
Ну к примеру session:setHangupHook

правда он навешивает хук на локаьную сессию

Alexandru
12.06.2017
10:40:00
А на какую ещк должен навешивать? О_о там одна сессия всегда

И в ней инстансы каналов

Yuriy
12.06.2017
10:40:32
Ну данный хук обрабатывает инстанс входящего канаа

Google
Alexandru
12.06.2017
10:40:53
Исходящего

Leg a

Yuriy
12.06.2017
10:41:11
execute_on_answer будет обрабатывать инстанс исходящего канала.

Alexandru
12.06.2017
10:41:20
Nolocal позволяет навесить на leg b

Yuriy
12.06.2017
10:41:39
legA - входящий

Alexandru
12.06.2017
10:42:08
Да, тьфу...

Yuriy
12.06.2017
10:42:10
под локальной сессией я и имел ввиду legA. то есть тот что FS принял на себя

Alexandru
12.06.2017
10:42:45
Да, я тут просто originatами в башке оперирую

Yuriy
12.06.2017
10:43:56
Есть идея у меня Я думаю через execute_on_answer или api_on_answer ывзвать другой контекст и в нем уже обрадотьт все что мне нужно. Я так понимаю это будет что то типа "execute_on_answer = extenison context xml"

тогад я просто создам entry point в dialplan для исходящего канала

и в нем уже можно будет навесить session:setHangupHook

Alexandru
12.06.2017
10:46:32
а кейс какой?

что сделать то нужно

навесить хэнгап хук если был отвечен звонок?

Yuriy
12.06.2017
10:48:03
Да в общем то при ответе обработать сессию исходящего канала: Через Свой АПИ положить необходимые данные в storage Обработать hangup именно исходящего плеча когда звонок закончится

короче суть в том чтобы после ответат управлять сбором данных с обох плечей

Через 1 функцию

В астеристке я для этого hangup_handlers пользую

Alexandru
12.06.2017
10:49:18
ну это много проще через esl делать, следя за состоянием

Yuriy
12.06.2017
10:49:56
Не. ЕSL не хочу. Нет у меня варианта поднимать отедеблный event listener Server Потому через dialplan и делаю

Google
Yuriy
12.06.2017
10:50:11
*отдельный

Alexandru
12.06.2017
10:51:56
можно сделать два execute_on_answer обычный и nolocal срабатывать они правда будут почти одновременно..

в случае успеха

Yuriy
12.06.2017
10:53:33
Ну да. Но мне в принципе Execute_on_answer на local не нужен, потмоу что вся необходимая инфа о зонящем у меня уже есть. Мне нужна инфа об отвечающем (время подъема трубки и тд) Ну и hangupHandler на него повесить

Alexandru
12.06.2017
10:54:28
так вся эта информация содержится в переменных сессии

hangup_after_bridge=false и после звонка диалплан продолжит свою работу

оттуда вытащить все данные и засунуть в api

Yuriy
12.06.2017
10:56:07
Ну я для примера привел. Там много чего еще нужно, чтобы обработать. В т.ч. и активный звонок. Ну короче основной кейс именно повесить hangup_handler Этот вариант

hangup_after_bridge=false

Не очень хорош тем что в итоге в одном месте каша из информации.

Ну для меня по крайней мере

поэтмоу мне hangupHandlers проще заделять по каналам

Yuriy
12.06.2017
10:57:08
*плечам

+ писать динамические логи + контроллить актиные звонки через REDIS

или тот же АПИ. Ну не суть

Alexandru
12.06.2017
10:58:33
имхо через хуки такое слишком костыльно... но дело вкуса

Yuriy
12.06.2017
11:00:31
Ну в общем то да (про вкус) Но оыт подобных реализаций есть и он в итоге получается дешевле и понятнее черм опыт через интерфейсы (AMI/ESL и тд) + не всегда есть возможность соержать ешще один сервер. Точнее это не всегда удобно.

Denis 災 nobody
12.06.2017
18:36:33
execute_on_answer будет обрабатывать инстанс исходящего канала.
Он будет обрабатывать ровно тот канал, где сработал хук. Экспорт пнременной - оно сработает 2 раза.

под локальной сессией я и имел ввиду legA. то есть тот что FS принял на себя
Какая-то чушь.. Там все каналы локальные. Бывают входящие и исходящие, причем при ориджинейте обе ноги исходящие

короче суть в том чтобы после ответат управлять сбором данных с обох плечей
Ловить ивент channel hangup и обработать, если надо - заранее выставить в канал переменные

Google
Denis 災 nobody
12.06.2017
18:42:02
Не очень хорош тем что в итоге в одном месте каша из информации.
По каждому каналу будет свой хэнгап со своим набором переменных

Плюс, есть модули cdr

Yuriy
12.06.2017
19:05:57
Какая-то чушь.. Там все каналы локальные. Бывают входящие и исходящие, причем при ориджинейте обе ноги исходящие
Под локальным каналом имеется ввиду канал, котороый в диалплане (в сессии) принимает соединение, написал же. То есть то, к чему я могу по умолчанию применить session:... что-то там

Плюс, есть модули cdr
Модули CDR не подойдут при моей архитектуре Медиа сервер на базе freeswitch Не имеет отношения ни к какому хранилищу, да и к sip enpoints тоже, а обрабатывать килограммы контекстозависимой инфы громозко и неудобно

При входящем в очередь или ивр будет только 1 ивент
Этого достаточно. IVR всегда отрабатывает на входящем канале Если из IVR производится вызов какого либо пира то на него уже через bringe не проблема навесить хук

Denis 災 nobody
12.06.2017
19:27:46
К тобу же, на б при всяких переводах и переадресациях запускаются правила

Admin
ERROR: S client not available

Denis 災 nobody
12.06.2017
19:29:06
В общем, луа хук в помощь

Yuriy
12.06.2017
19:30:16
Ну lua хук хук я и хочу сделать просто через контекст Через диалплан идут обе ноги. Локальный и нелокальный разграничиваются nolocal в контексте разговра. Немного непонятно зачем этот спор если понятно что имелось ввиду

Denis 災 nobody
12.06.2017
19:45:27
Даже только с инбаунд дп будет 2 хука

Это которое прямо в конфиге mod_lua пишется

here1am
12.06.2017
23:07:34
подскажите, что гуглить, если я хочу записать прилетевший звук в результате набора (fs_cli, originate)

Bakhodur K
13.06.2017
08:34:25
кто-нибудь tts germany делал на ФС?

нашел это https://freeswitch.org/confluence/display/FREESWITCH/mod_flite , но про lang там ниче нет

Denis 災 nobody
13.06.2017
09:13:58
если кто ставит фс из гита - там бага с текущими таймерами

отправили фикс, должны втянуть в v1.6

Vitaliy
13.06.2017
09:34:58
в jira репортили?

Google
Ivan
13.06.2017
09:38:41
привет, ни у кого нет сервака на digital ocean в Сингапуре?

Denis 災 nobody
13.06.2017
09:42:40
в jira репортили?
репортили, приняли

Vitaliy
13.06.2017
09:42:52
можно номерок?

Denis 災 nobody
13.06.2017
09:45:37
10383

Vitaliy
13.06.2017
09:49:04
спасибо

here1am
13.06.2017
10:47:29
Record?
слишком общее как-то

Alexandru
13.06.2017
10:48:12
В аргументе оригинейиа делай трансфер в дп и там обрабатывай

Так проще

here1am
13.06.2017
11:04:08
а что за dp?

Denis 災 nobody
13.06.2017
11:04:19
dialplan же

here1am
13.06.2017
11:04:48
а, ок. спасибо

я так понимаю, если у меня есть номер и айпишник, то звонить надо на нечто1/нечто2/номер@ip, всё верно?

Igor
13.06.2017
13:42:30
sofia/profile_name/номер@ip

here1am
13.06.2017
13:43:59
почему sofia-то? что это значит вообще?

Denis 災 nobody
13.06.2017
13:44:20
потому что за сип отвечает софия

here1am
13.06.2017
13:44:30
а, окей

и профиль берётся на вызывающем сервере или на принимающем?

Denis 災 nobody
13.06.2017
13:45:08
там, где звонок обрабатывается.. не?

here1am
13.06.2017
13:45:16
(сорян за тупые вопросы, я какбы вообще не в теме был до сегодняшнего дня)

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