
Terminator
03.10.2018
12:17:47
@helipopolis будет жить. Поприветствуем!

Serge
03.10.2018
13:22:25

Andrey
03.10.2018
13:42:24
еще коллеги, кто-то делал такое в диалпланах, что нужно обратится по REST API который отвечает в JSON , распарсить значения переменных и от этого построить дальнейший сценарий?
вроде бы как mod_curl для этих целей подходит

Google

Andrey
03.10.2018
13:44:15
но каких то практических примеров использования...

Виталий
03.10.2018
13:47:24
lua не?
mod_perl еще есть
питон я не люблю - потому и не советую )

Andrey
03.10.2018
13:48:53
на луа делать обращение, обрабатывать ответ и пихать в переменные диалплана?

Виталий
03.10.2018
13:49:07
сделать диалплан на луа

Andrey
03.10.2018
13:49:13
ой епт
мне кажется отлаживать и вносить изменения потом будет адски больно

Виталий
03.10.2018
13:49:30
что не так?
норм

Andrey
03.10.2018
13:50:30
ну когда не очень знаком с lua выглядит очень страшно

Виталий
03.10.2018
13:57:00
перловка

Anton
03.10.2018
14:00:21
Lua будет самый быстрый, но в принципе там это не важно. Зато в луа живут объекты FS в частности сессия. Не надо его бояться, он простой как топор.

Google

Pavel
03.10.2018
14:02:24
перловка
За что Вы так...это же кому-то после поддерживать (возможно)...

Виталий
03.10.2018
14:08:35
если внятно написаная преловка то поддерживается отлично. кстати - там тоже живут объекты ФС

Terminator
03.10.2018
14:20:12
@falcony_1985 будет жить. Поприветствуем!

Ihor
03.10.2018
16:21:43

Marc
03.10.2018
16:43:33

Ihor
03.10.2018
16:44:26
В смысле, вешают ли они процесс FS во время выполнения? Не знаю, не замечал

Anton
03.10.2018
16:45:55
я вчера посмотрел на вот это, так и не понял чем это принципиально отличается от esl... .)

Marc
03.10.2018
16:46:02

Anton
03.10.2018
16:46:18
мне вот это больше понравилось
https://freeswitch.org/confluence/display/FREESWITCH/mod_lua#mod_lua-EventHooks
есть в mod_lua и mod_v8

Marc
03.10.2018
16:46:29

Ihor
03.10.2018
16:47:01
Принцип с event-hook один и тот же
Думаю, что под капотом тот же механизм

Marc
03.10.2018
16:49:04

Ihor
03.10.2018
16:49:45
В том методе, что я описал, тоже
Это типа процесс lua который бежит внутри FS и реагирует на подписки

Алексей
03.10.2018
16:50:20
да. но хуки однопоточные. я сначала обрадовался как это удобно. в итоге ушёл назад на связку ESL(через golang) + rabbitmq евенты

Ihor
03.10.2018
16:50:27
Почитайте комменты к посту, там есть метод красивее

Marc
03.10.2018
16:51:06

Google

Ihor
03.10.2018
16:51:08

Marc
03.10.2018
16:51:22

Anton
03.10.2018
16:52:00

Алексей
03.10.2018
16:52:05
Типа go складывает в очередь?
нет. mod_amqp складывает евенты в exchanger. golang несколько go routins укаждого своя очередь. он направляет себе нужные евенты по ключу. и если нужна логика какая то - взаимодействует с свичами через esl;

Anton
03.10.2018
16:53:01

Алексей
03.10.2018
16:53:04
А зачем ELS если есть кролик?
хотел избавиться в некоторых моментах от сетейвого взаимодействия. хуки локально делаются. а с ребитом это евент -> ребит ->golang->esl
большая цепочка
а в command очередь пульнул, и хз что там с ней стало

Anton
03.10.2018
16:54:37
ну это есть такое. надо писать еще логику, которая проверяет потом отработала ли команда
зато гибчее выходит
подкинул еще один медиасервер, он поднялся, отсыпал ивентов, бек его у себя отметил и все взаимодействие через amqp
проблема в том, что если несколько процессов бека то надо держать ESL ко всем свичам из каждого процесса.

Алексей
03.10.2018
16:58:17
тоесть в данном случае минус в том что надо разбираться с коннектами по esl. в случае с command очередью, городь огород с обработкой ответов.
я пока остановился на esl

Pavel
03.10.2018
17:43:10

? Stan
03.10.2018
17:44:11
в кровавом тырпрайзе так бывает, особенно если с видео

Anton
03.10.2018
17:45:00
"задрочика" - система автоматизированного обзвона

Pavel
03.10.2018
17:49:04
в кровавом тырпрайзе так бывает, особенно если с видео
То есть, например, надо УАТС, пользователей эдак на 500 и все с видео ? И значительную нагрузку из внутренних вызовов между абонентами одним сервером не осилить ?
При этом сервера где-то в датацентре, и можно динамически вкл/выкл - отсюда экономия ?

Google

? Stan
03.10.2018
17:49:51

Pavel
03.10.2018
17:51:46

? Stan
03.10.2018
17:51:57
там не в экономии дело, а в качестве
но в принципе наверное можно и экономить)

Pavel
03.10.2018
17:54:56
но в принципе наверное можно и экономить)
Я дичайше отстал от современных реалий корпоративной телефонии. Лет эдак 10 назад все сервера у заказчиков были в их ведении, у них на территории. Сейчас, говорят, не так всё ?
Я поэтому и предположил про экономию, раз всё в облаке и можно платить повремённо - отсюда минус амортизация серверов итд.

? Stan
03.10.2018
17:55:50
на длинной дистанции чаще выгодно иметь своё, но это уже от конкретного случая зависит

Pavel
03.10.2018
17:57:32

? Stan
03.10.2018
17:58:16

Pavel
03.10.2018
18:14:32
"задрочика" - система автоматизированного обзвона
Блин, я из-за подобной, итить автоматизации, лет 5 как уже выключил домашний тлф.
Может кто в курсе и какая-то законодательная база появилась с тех пор - как бороться ?
Ду-нот-колл-лист какой-то ?

? Stan
03.10.2018
18:24:43

Виталий
03.10.2018
18:27:41
товарищи - мож кто подскажет навскидку - есть ли возможность в фс писать лог его работы в базу напрямую? тот что freeswitch.log
в mod_logfile такого не нашел - но вдруг кто смотрел в эту сторону...

Anton
03.10.2018
18:47:48

Виталий
03.10.2018
18:53:41
ну это с esl типа логи - я так делал... тут хотят просто как в файле логов - но в БД (

Anton
03.10.2018
18:55:43
не понял, в смысле как с ESL? в кролик идут логи, как в консоль и как в freeswitch.log. JSON, в нем level, module, code line и все как в консоли или файле

Виталий
03.10.2018
19:03:03
хм... разве?
<!-- <param name="eventFilter" value="SWITCH_EVENT_ALL"/> -->
<param name="event_filter" value="SWITCH_EVENT_CHANNEL_CREATE,SWITCH_EVENT_CHANNEL_DESTROY,SWITCH_EVENT_HEARTBEAT,SWITCH_EVENT_DTMF"/>

Anton
03.10.2018
19:03:44
это ивенты
лог в другом узле настраивается

Google

Anton
03.10.2018
19:05:03
их там три по-моему, producers, logging и commands, те которые в обратку ФС слушает, под исполнение
чекните ванильный конфиг
https://freeswitch.org/stash/projects/FS/repos/freeswitch/browse/conf/vanilla/autoload_configs/amqp.conf.xml#63

Alexey
03.10.2018
19:10:10

Marc
03.10.2018
19:15:12

Alexey
03.10.2018
19:15:22
EventListner позваляет подписыватся модулям на события. ESL просто модуль который пробрасывает \эти события по сети. Ну не\большая логика
Он умирает вместе с сессией?
Я точно не помню, но по логике вещей события должны обрабатывается в отдельном потоке
Это можно проверить. В обработчике не должно быть объекта сессии

Виталий
03.10.2018
20:35:56
чтоб искать по нему

Anton
03.10.2018
20:36:53
я не помню если честно. там как-то можно настроить

Виталий
03.10.2018
20:37:58
https://freeswitch.org/stash/projects/FS/repos/freeswitch/browse/src/mod/event_handlers/mod_amqp/mod_amqp_logging.c#75 тут вот нашел ограниченый набор полей (

Anton
03.10.2018
20:38:16
в этом собственно и идея, чтобы по нему весь лог сессии от рождения до завершения вытянуть

Виталий
03.10.2018
20:40:10
видать идея не законченая )

Anton
03.10.2018
20:41:17
ага, на записи она завершилась)

Виталий
03.10.2018
20:45:50
понял - uuid он бросает в Routing Key
извращенцы )