freeswitchforum.com
https://freeswitchforum.com/

Не поднимается ZRTP, freeswitch 1.6+fusion pbx
https://freeswitchforum.com/viewtopic.php?f=6&t=934
Страница 2 из 2

Автор:  Vlad1983 [ 04 апр 2019 14:17 ]
Заголовок сообщения:  Re: Не поднимается ZRTP, freeswitch 1.6+fusion pbx

может быть это поможет

Автор:  argentum [ 19 сен 2019 12:14 ]
Заголовок сообщения:  Re: Не поднимается ZRTP, freeswitch 1.6+fusion pbx

Нашел костыль. Как запретить хождение нешифрованного голосового потока.
Опишу. Из свободно доступных есть скрипт, написанный на lua, называется zrtp_agent.lua.
[+] На всякий случай, сам скрипт
-- ZRTP Enrollment Agent
session:setVariable("zrtp_secure_media", "true");
session:setVariable("zrtp_enrollment", "true");
session:sleep(100);
session:answer();
-- session:streamFile("zrtp/zrtp-status_securing.wav");
session:sleep(3000);
-- Give the agent time to bring up ZRTP.

local zrtp_secure_media_confirmed = session:getVariable("zrtp_secure_media_confirmed_audio");
local zrtp_new_user_enrolled = session:getVariable("zrtp_new_user_enrolled_audio");
local zrtp_already_enrolled = session:getVariable("zrtp_already_enrolled_audio");

if zrtp_secure_media_confirmed == "true" then
session:streamFile("zrtp/zrtp-status_secure.wav");
else
session:streamFile("zrtp/zrtp-status_notsecure.wav");
session:sleep(1000);
session:hangup("NORMAL_CLEARING");
end

--session:streamFile("zrtp/zrtp-enroll_welcome.wav");
--session:sleep(1000);

--if zrtp_secure_media_confirmed == "true" then
-- if zrtp_new_user_enrolled == "true" then.
-- session:streamFile("zrtp/zrtp-enroll_confirmed.wav");
-- session:sleep(3000);
-- else
-- if zrtp_already_enrolled == "true" then.
-- session:streamFile("zrtp/zrtp-enroll_already_enrolled.wav");
-- end.
-- end
--else.
-- session:streamFile("zrtp/zrtp-enroll_notzrtp.wav");
--end

-- session:streamFile("zrtp/zrtp-thankyou_goodbye.wav");
session:sleep(1000);


Вместо проигрывания -- session:streamFile("zrtp/zrtp-enroll_notzrtp.wav"); можно просто рубить вызов.
Встроил в диалплан:
<extension name="Local_Extension">
<condition field="destination_number" expression="^(\d{7})$">
<action application="export" data="dialed_extension=$1"/>
<action application="export" data="execute_on_answer=lua zrtp_check2.lua ${uuid}"/>

Это очень удобно, если оба собеседника обязаны использовать zrtp.


Вопрос такой. Если одно плечо вызова не должно поддерживать zrtp (шлюз или другая атс), можно ли, используя этот скрипт проверять только один кол лег? МОжет кто увидит возможность

Автор:  argentum [ 20 сен 2019 11:48 ]
Заголовок сообщения:  Re: Не поднимается ZRTP, freeswitch 1.6+fusion pbx

argentum писал(а):
Вопрос такой. Если одно плечо вызова не должно поддерживать zrtp (шлюз или другая атс), можно ли, используя этот скрипт проверять только один кол лег? МОжет кто увидит возможность


Попробовал развести умеющих zrtp и остальных диалпланом.
Создал первую запись со скриптом с параметром continue="true" и вторую запись, без скрипта.
Если вызов прошел по первой части, перешел на вторую - все равно срабатывает скрипт по коннекту.
Я думал, если записи data="execute_on_answer во второй части не будет, скрипт не включится.
Увы.

Автор:  argentum [ 20 сен 2019 13:21 ]
Заголовок сообщения:  Re: Не поднимается ZRTP, freeswitch 1.6+fusion pbx

argentum писал(а):
argentum писал(а):
Вопрос такой. Если одно плечо вызова не должно поддерживать zrtp (шлюз или другая атс), можно ли, используя этот скрипт проверять только один кол лег? МОжет кто увидит возможность


Попробовал развести умеющих zrtp и остальных диалпланом.
Создал первую запись со скриптом с параметром continue="true" и вторую запись, без скрипта.
Если вызов прошел по первой части, перешел на вторую - все равно срабатывает скрипт по коннекту.
Я думал, если записи data="execute_on_answer во второй части не будет, скрипт не включится.
Увы.

Еще один костыль )
Во вторую часть диалплана можно вставить что нибудь не нужное и не мешающее на execute_on_answer. и это перебьет скрипт zrtp.

Правда, хотелось бы красивого решения, определять zrtp на конкретном кол леге.

p.s. - мазохизм какой то, но мне начинает нравиться. продолжает нервировать отсутствие нормальной документации.

Страница 2 из 2 Часовой пояс: UTC + 4 часа
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/