Say
27.09.2017
08:30:09
или ты про это как раз ?
Denis 災 nobody
27.09.2017
08:31:01
data = api:executeString("curl ".. url .. " content-type application/json post " .. req)
Say
27.09.2017
08:38:15
Чет я туплю
<configuration name="lua.conf" description="LUA Configuration">
<settings>
<param name="script-directory" value="$${base_dir}/scripts/?.lua"/>
<hook event="DETECTED_TONE" script="tone_event.lua"/>
</settings>
</configuration>
Google
Say
27.09.2017
08:38:34
ты же об этом ?
Denis 災 nobody
27.09.2017
08:41:23
ты же об этом ?
<!--<hook event="CUSTOM" subclass="conference::maintenance" script="catch-event.lua"/>-->
ну да, когда там подписка на CHANNEL_ANSWER
Say
27.09.2017
08:42:09
А почему он звонок то блокирует? Если он в параллели отрабатывает ?
Denis 災 nobody
27.09.2017
08:42:32
оно не звонок блокирует, а просто ставит фс раком )
Say
27.09.2017
08:42:42
Хм )
Alexey
27.09.2017
08:42:43
Кто сказал что в паралеле?
Say
27.09.2017
08:43:00
Alexey
27.09.2017
08:43:39
Ну и FS имеет несколько мьютексов которые он переодически блокирует
Say
27.09.2017
08:44:02
Alexey
27.09.2017
08:44:21
может и в паралельном потоко, но просто блокирует профиль на время выполнения
ESL точно в паралеле :)
Say
27.09.2017
08:50:21
"luarun" will spawn a thread while "lua" will block until the code is complete.
Google
Say
27.09.2017
08:50:48
api = freeswitch.API();
reply = api:executeString("luarun another.lua»);
в хуке непрокатит ?
Alexey
27.09.2017
08:51:43
должно. Luarun просто запускает скрипт в отдельном потоке
нужно только передать данные как-то
ну и получить результат
Say
27.09.2017
08:54:03
ну как вариант в redis класть все а в argv ключь передавать куда все сложили
Denis 災 nobody
27.09.2017
08:56:27
Say
27.09.2017
09:01:19
А как esl поможет передать данные в luarun ?
Denis 災 nobody
27.09.2017
09:09:56
вместо хука сделать службу с подпиской esl, там по ансверу выполнение нужного
и еще чуть об ущербности луа
function sleep(n)
os.execute("sleep " .. tonumber(n))
end
и такое там - норма
Alexey
27.09.2017
11:21:40
Кто сказал? Не надо так делать :)
там полно библиотек которые предоставляют sleep
Say
27.09.2017
11:25:50
http://lua-users.org/wiki/SleepFunction
Дмитрий
27.09.2017
14:16:29
дело не в LUA, любой хук тормозит очередь событий, если надо хуки - то лучше esl слушать и другим сервисом обрабатывать
Слава
27.09.2017
21:48:04
Граждане, а есть здесь кто из московского Ринета? Что там за ерунда происходит с блокировками абонентов за использование 25 порта?
One
28.09.2017
12:43:32
Подскажите куда начать копать, есть своя АТС на freeswitch и есть сайт, нужно на сайте разместить кнопку при нажатии на которую произойдет звонок на внутренний номер. Интересует именно часть как реализовать подобную кнопку?
Konstantin
28.09.2017
12:44:41
Есть масса проектов, которые интегрируют кнопку с АТС
С поиска в google готового решения начать
Google
Konstantin
28.09.2017
12:45:28
Это как правило wiget, который ходит в сайт и просит middleware позвонить.
Если речь идёт о заказе callback
One
28.09.2017
12:45:53
Konstantin
28.09.2017
12:46:09
Flash
One
28.09.2017
12:46:21
Konstantin
28.09.2017
12:46:28
Я расковыривал(декомпилировал) их
Ivan
28.09.2017
12:46:38
mod_verto не?
Konstantin
28.09.2017
12:46:56
Если речь идёт о полноценном
вызове сайта, то RTC
Victor
28.09.2017
12:47:13
https://freeswitch.org/confluence/display/FREESWITCH/Verto+Communicator
Konstantin
28.09.2017
12:47:26
Однако, если ничего не изменилось за посление пару лет, то поддержка WEBRTC неоднозначна в браузервах.
One
28.09.2017
12:49:21
к примеру что хочу: вот есть такой сайт http://arlekin.su/, слева есть кнопка "Позвонить онлайн", как сделать такую же? Как я понял это виджет который предоставляет компания zingaya.com и весь функционал прописан у них на сервере
Konstantin
28.09.2017
12:49:48
Да. А клиент на flash
И он в свой сервер по RTMP ходит.
One
28.09.2017
12:52:46
похоже придется разбираться с исходниками verto и делать на основе их кнопку. Пошел учить php и JavaScript ))))
Alexey
28.09.2017
12:53:36
Ну есть еще SIP клиенты на JS :)
One
28.09.2017
12:53:52
Konstantin
28.09.2017
12:53:59
jssip sipjs
Alexey
28.09.2017
12:54:09
sipml
Konstantin
28.09.2017
12:54:10
Какой-то из них чуть получше.
Vitaly
28.09.2017
12:54:28
Вместо Вас это никто не напишит...
Вот пример тестовой кнопки - https://github.com/navrotskyj/QCall
А можете посмотреть, как это сделано у нас через mod_verto. Есть конструктор кнопки, который генерирует код: https://docs.webitel.com/display/W3/15+Widget
Исходный код самого констурктора на ангуляре здесь:
https://github.com/webitel/web-client/tree/master/src/modules/widget
После чего, этот код размещается на сайте и если браузер поддерживает WebRTC, он через mod_verto делает такой звонок. Вот исходный код : https://github.com/webitel/engine/blob/master/src/services/widget.js
Google
Denis 災 nobody
28.09.2017
12:56:40
на 1 callback оно будет несложное
но там будет просто 2 вызова, на сип оператору и на абонента
One
28.09.2017
12:57:44
Denis 災 nobody
28.09.2017
12:58:11
взять готовую атс того же телфина, там есть и такой функционал
Alexey
28.09.2017
12:58:57
Подключится к FS по ESL и вызвать api originate
PHP код для этого достаточно прост
Можете посмотреть мою реализация в исходниках Fusion
One
28.09.2017
13:01:49
Ребята СПАСИБО, пойду разбираться.
Denis 災 nobody
28.09.2017
13:05:54
кстати, а кто раскачивал фс до 1к+ каналов на ноду и 50+ цпс?
какой максимум удавалось выжать с ноды?
Igor
28.09.2017
13:07:45
Denis 災 nobody
28.09.2017
13:08:06
немного..
там косяк в том что ресурсов еще тьма, а прилетает еще чуть нагрузки и нода встаёт раком.
Максим
28.09.2017
13:08:59
Denis 災 nobody
28.09.2017
13:09:12
о, сдн? ) Соседи
Максим
28.09.2017
13:09:15
это нода бордер контроллер
а нет
это КЦ
sbc ищу
Google
Igor
28.09.2017
13:10:05
Это с дебаг логом, Колцентром и с предварительным плейбеком
Максим
28.09.2017
13:10:28
Denis 災 nobody
28.09.2017
13:10:48
сессии не равно звонки
Максим
28.09.2017
13:11:06
вот с одного из sbc
ясен пень не равно это каналы
Denis 災 nobody
28.09.2017
13:11:23
с лупами может быть и 10 сессий на звонок
Максим
28.09.2017
13:11:32
)))) какие лупы в продакшене
Denis 災 nobody
28.09.2017
13:11:39
обычные.
Максим
28.09.2017
13:11:42
упаси господь
Denis 災 nobody
28.09.2017
13:11:47
много чего иначе не сделать
банально att_xfer
Максим
28.09.2017
13:12:08
не ну понятно что вызов может приходить и куда то наружу выходить потом
Denis 災 nobody
28.09.2017
13:12:14
эта тупень делает прямой бридж, без прогона по дп
Максим
28.09.2017
13:12:16
но там таких крохи от общей массы
Denis 災 nobody
28.09.2017
13:12:31
и были нюансы с обзвоном
Максим
28.09.2017
13:12:32
нагрузка на цпу по 1 скрину КЦ
Denis 災 nobody
28.09.2017
13:12:42
а у вас как построено?
Максим
28.09.2017
13:12:52