freeswitchforum.com

Форум поддержки FreeSWITCH

FreeSWITCH is a registered trademark of Anthony Minessale. Official FreeSWITCH site.

Текущее время: 27 апр 2024 21:15

Часовой пояс: UTC + 4 часа




Начать новую тему Ответить на тему  [ Сообщений: 8 ] 
Автор Сообщение
СообщениеДобавлено: 15 янв 2015 01:03 

Зарегистрирован: 10 мар 2013 18:14
Сообщения: 57
есть объемная прога которая работает с астером. Нарисована на Си, общается с астером через cagi (аналог phpagi но для с/с++).
есть необходимость перейти на FS по многим причинам.
Но есть вопрос, который не хочется. да и наверно не полусится решить "в лоб". быстро и эффективно путем встраивания ее как модуля FS/ с другой стороны, не совсем, точнее совсем не понятны возможности использования сокета с FS.

Задача же следующая.
делать вот что:
натравить FS по следующей аналогии с астером

AGI("SIP/555-00000004", "/usr/share/call-taxi/core,2,who,9222222222,SIP/555-00000004")

и получить результат работы скрипта такой:

SET VARIABLE drvid "25"
SET VARIABLE drvsign "999"
SET VARIABLE drvphone "9222222222"
SET VARIABLE drvpager "Non"
SET VARIABLE drvdisabled "0"
SET VARIABLE cargosnum "[999]TEST"
SET VARIABLE drvcarclass "1"
SET VARIABLE drvbalance "1000.00"
SET VARIABLE drvpassword ""
SET VARIABLE carmodel "Танк"
SET VARIABLE carcolor "Гламурный"
SET VARIABLE drivershift ""
SET VARIABLE drvstate ""
SET VARIABLE drvstopid ""
SET VARIABLE drvstoporder ""
SET VARIABLE drvstopvirtual ""
SET VARIABLE carchannel "1"
SET VARIABLE carid "27"
SET VARIABLE drvpaytype ""
EXEC Goto ivr-seller-start-works,s,1

в принципе интересуют только две вещи SET VARIABLE и Goto.

Как и что можно использовать в FS чтоб особо не ковыряя его код, море доков и не треся свою программулину осуществить аналогичное?

_________________
Уникальное решение "Такси без диспетчеров", без Java, без Internet, без GPS - только телефон.
Автоматизация такси, доставки пиццы и других мобильных сервисов.
Большой опыт удаленной работы с такси и сетями пиццерий России и Украины.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 15 янв 2015 09:07 
FreeSWITCH_GuRu

Зарегистрирован: 22 авг 2012 09:52
Сообщения: 1710
если нужен аналог AGI, то реализовать всю вашу логику можно под mod_perl или mod_lua

в сорцах
libs/esl/
примеры на разных языках для интерфейса ESL это обертка над Event Socket (аналог астерисковского AMI)
это можно юзать для отзвона клиентам

_________________
ЛС: @rostel
Сообщество: @ru_freeswitch


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 15 янв 2015 10:11 

Зарегистрирован: 10 мар 2013 18:14
Сообщения: 57
очень хочется что то тип cfgi на СИ сделать. По сути cаgi как бы встроен в прогу, являестся частью програмы, и естественно вызывается внутри ее.

ну да ладно - Изменю вопрос.

Как сделать для FS, SET VARIABLE и Goto в сторонеей проге, написанной на Си?

_________________
Уникальное решение "Такси без диспетчеров", без Java, без Internet, без GPS - только телефон.
Автоматизация такси, доставки пиццы и других мобильных сервисов.
Большой опыт удаленной работы с такси и сетями пиццерий России и Украины.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 15 янв 2015 11:21 
FreeSWITCH_GuRu

Зарегистрирован: 22 авг 2012 09:52
Сообщения: 1710
можно попробовать приложение socket для этого
пример общения "Using Netcat" https://freeswitch.org/confluence/displ ... t+Outbound

sendmsg
call-command: set
...
...
sendmsg
call-command: transfer (это Goto)
...

очень навороченный пример на Си scripts/c/socket2me

_________________
ЛС: @rostel
Сообщество: @ru_freeswitch


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 15 янв 2015 21:30 

Зарегистрирован: 10 мар 2013 18:14
Сообщения: 57
Не! Это не то. С паомощью этого можно получить интересующий параметр, можно выполнить определенное дейставие (например проиграть фацл), но я не представляю как с его помощью установить значение переменной и тем более добавить перменную "на лету".
https://wiki.freeswitch.org/wiki/Ivrd вот это более похоже на то что мне нужно, но плохо подается изучению.

_________________
Уникальное решение "Такси без диспетчеров", без Java, без Internet, без GPS - только телефон.
Автоматизация такси, доставки пиццы и других мобильных сервисов.
Большой опыт удаленной работы с такси и сетями пиццерий России и Украины.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 16 янв 2015 08:44 
FreeSWITCH_GuRu

Зарегистрирован: 22 авг 2012 09:52
Сообщения: 1710
так я про туже шляпу и написал
вы всё Си да С++, а даете ссыль на perl, работающего через прокладку с тем же socket

принцип один - отправить сообщение fs с нужными командами

_________________
ЛС: @rostel
Сообщество: @ru_freeswitch


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 16 янв 2015 14:39 

Зарегистрирован: 10 мар 2013 18:14
Сообщения: 57
а не подскажете как это можно реализовать. желательно на Си потому что в нашем мухосранске не так уж много программерев вообще, а у нас самый крутой сишник из них троих. И вообще нет никого кто знает с чем едят что либо отличное от php :(

такова реальность провинции.

_________________
Уникальное решение "Такси без диспетчеров", без Java, без Internet, без GPS - только телефон.
Автоматизация такси, доставки пиццы и других мобильных сервисов.
Большой опыт удаленной работы с такси и сетями пиццерий России и Украины.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 16 янв 2015 16:17 

Зарегистрирован: 10 мар 2013 18:14
Сообщения: 57
Спасибо! Дошло! (не прошло и года). Внимательно посмотрел 2ми - почти все понял.

_________________
Уникальное решение "Такси без диспетчеров", без Java, без Internet, без GPS - только телефон.
Автоматизация такси, доставки пиццы и других мобильных сервисов.
Большой опыт удаленной работы с такси и сетями пиццерий России и Украины.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 8 ] 

Часовой пояс: UTC + 4 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 238


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Powered by phpBB® Forum Software © phpBB Group
Русская поддержка phpBB