Страница 11 из 12
Re: Asterisk -> Dvg6004s -> panasonic и обратно
Добавлено: 15 ноя 2013, 23:15
pikachu937
ded писал(а):и дальше по тексту - не от системного администратора, обложенного мануалами и дебагами, а от пользователя с телефонной трубкой.
Вы либо прогрызаете самостоятельно это по тем направлениям, которые обозначены на 10-ти страницах топика, либо надо снимать звёздочки с погон и спарывать лампасы со штанов.
следуя вашей логике Сисадмин должен:
1 - знать и уметь абсолютно все
2 - не имеет прав ошибаться и спрашивать помощи у остальных
если вы не заметили я не отказался от этой задачи. и совсем не потому, что хочу дождаться что мне тут сразу все вывалят готовое. не буду скрывать, да я предлагал вам за оказание услуг деньги, но только за помощь в решении задачи, а не за ее полное решение. так же я еще некоторым участника форума сделал точно такое же предложение. но не за то чтобы за меня все решили, а чтобы помогли и наставили.
Re: Asterisk -> Dvg6004s -> panasonic и обратно
Добавлено: 15 ноя 2013, 23:50
ded
Нет, сисадмин должен знать свои пределы и уметь сказать "нет", и "это мне не по зубам, нужен аутсорс", а если ложная гордость не позволяет так признаться - то обложиться мануалами и решить проблему, без вопросов.
А Вы пытаетесь решать абсолютно все, а не выходит. Решаете задачу не с того конца.
Решение этой задачи уже вышло за рамки её экономической целесообразности, но Вы готовы продолжать и продолжать этот топик до бесконечности, выкладывая и выкладывая всё новые логи.
Ещё раз укажу путь дао-дзы:
1. подключаете к порту расширения простой телефон, принимаете звонок и делаете трансфер через кнопку Flash. При этом сниферите аудио параллельным включением в эту аналоговую линию.
2. результат раскладывается в конкретные записанные аналоговые действия: видна длительность разрыва шлефа (hookflash duration), длина, частота и амплитуда dtmf посылок.
3. задача DVG6004s - повторить это максимально точно из порта FXO. Что и от кого к нему прибежит по каналу SIP при этом уже не важно, это второй слой решения этой проблемы.
Re: Asterisk -> Dvg6004s -> panasonic и обратно
Добавлено: 16 ноя 2013, 00:03
pikachu937
1 - никакой ложной гордости. я говорю что не могу сделать, а мне просто говорят нас не волнует, ты делай. если не могу никогда не берусь.
2 - я обложился всем чем можно было и выпил наверное банку кофе т.к. 3-и сутки без сна ибо сказали надо и наплевать как я это сделаю
3 -
подключаете к порту расширения простой телефон, принимаете звонок и делаете трансфер через кнопку Flash
к какому порту? на dvg или через шлюз т.к. в dvg6004s нет fxs портов
4 -
При этом сниферите аудио параллельным включением в эту аналоговую линию.
тут вообще не понял как. если в slmon'е на dvg, то там относительно этого ничего не увидел.
5 -
результат раскладывается в конкретные записанные аналоговые действия: видна длительность разрыва шлефа (hookflash duration), длина, частота и амплитуда dtmf посылок. задача DVG6004s - повторить это максимально точно из порта FXO. Что и от кого к нему прибежит по каналу SIP при этом уже не важно, это второй слой решения этой проблемы.
сделать не могу ибо не совсем понятно 3 и 4.
Re: Asterisk -> Dvg6004s -> panasonic и обратно
Добавлено: 16 ноя 2013, 00:23
ded
Я не смогу понять Вашу мотивацию, банку кофе, и пр. Вам расстрел грозит если не справитесь? Тюремный срок? Увольнение? 3-и сутки без сна ибо сказали надо и наплевать - Вам на себя наплевать в первую очередь, а мне - нет. В таком состоянии задачу не решить. Зачем устраивать гонку? Кто диктует сроки? Отвечайте - эта задача решается за 2,5 недели. Точка.
подключаете к порту расширения простой телефон, принимаете звонок и делаете трансфер через кнопку Flash
к какому порту? на dvg или через шлюз т.к. в dvg6004s нет fxs портов
Забудье про ИП, dvg6004s, fxs, slmon, etc.
Подключаете к порту расширения Панасоника простой телефон, принимаете звонок и делаете трансфер через кнопку Flash. Далее - по тексту.
Re: Asterisk -> Dvg6004s -> panasonic и обратно
Добавлено: 16 ноя 2013, 00:32
pikachu937
про все забыл, пошел с самого начала
Подключаете к порту расширения Панасоника простой телефон, принимаете звонок и делаете трансфер через кнопку Flash. Далее - по тексту.
чем снифить?
Re: Asterisk -> Dvg6004s -> panasonic и обратно
Добавлено: 16 ноя 2013, 00:34
ded
Уж чем придётся. Хоть иголки с проводочками, хоть сплиттер a la параллельный телефон => аудио кабель в аналоговый порт Line in и звуковой редактор, если Линух - то Audacity например.
Re: Asterisk -> Dvg6004s -> panasonic и обратно
Добавлено: 16 ноя 2013, 08:22
virus_net
[offtop]
pikachu937 писал(а):3-и сутки без сна
а вот это действительно абсолютно зря.
есть русская пословица:
Утро вечера мудренее.
И это действительно так. Нужно уметь оторваться от задачи, чтобы как минимум её осмыслить. Осмыслить то что сам делаешь, осмыслить советы, которые дали в этом топике. А утром, со свежей головой и осмыслением снова приступать к решению задачи.
Упираться "рогами" можно, но толку не будет. "Квадратная" голова и "круглые" глаза решения не найдут. Проверено ни раз и ни два.
[/offtop]
Re: Asterisk -> Dvg6004s -> panasonic и обратно
Добавлено: 16 ноя 2013, 10:57
pikachu937
Хорошо сказано, но бывают случаи когда очень надо. Да и я сам привык что у меня все всегда получается, а тут прям беда. Поспал, появились некоторые идеи. Счаз поеду их проверять.
Re: Asterisk -> Dvg6004s -> panasonic и обратно
Добавлено: 24 ноя 2013, 17:28
Vlad1983
в итоге задача решилась установкой FeeSWITCH с небольшим патчем:
Код: Выделить всё
diff --git a/src/mod/endpoints/mod_sofia/mod_sofia.c b/src/mod/endpoints/mod_sofia/mod_sofia.c
--- a/src/mod/endpoints/mod_sofia/mod_sofia.c
+++ b/src/mod/endpoints/mod_sofia/mod_sofia.c
@@ -1075,6 +1075,11 @@ static switch_status_t sofia_send_dtmf(switch_core_session_t *session, const swi
switch_yield(500000);
} else if (dtmf->digit == 'W') {
switch_yield(1000000);
+ } else if (dtmf->digit == 'F') {
+ snprintf(message, sizeof(message), "Signal=hf\r\n");
+ switch_mutex_lock(tech_pvt->sofia_mutex);
+ nua_info(tech_pvt->nh, SIPTAG_CONTENT_TYPE_STR("application/hook-flash"), SIPTAG_PAYLOAD_STR(message), TAG_END());
+ switch_mutex_unlock(tech_pvt->sofia_mutex);
} else {
snprintf(message, sizeof(message), "Signal=%c\r\nDuration=%d\r\n", dtmf->digit, dtmf->duration / 8);
switch_mutex_lock(tech_pvt->sofia_mutex);
в сторону DVG создается отдельный sofia-профиль с <param name="dtmf-type" value="info"/>
сильно упрощенный диалплан:
Код: Выделить всё
<?xml version="1.0" encoding="utf-8"?>
<include>
<context name="default">
<extension name="Outbound">
<condition field="destination_number" expression="^(10[0-9]|11[0-6])$">
<action application="export" data="dialed_extension=$1"/>
<action application="bind_meta_app" data="9 a o send_dtmf::F"/> <!-- Send hook-flash INFO -->
<action application="bridge" data="sofia/gateway/dvg/$1"/>
</condition>
</extension>
</context>
<context name="public">
<extension name="Incoming">
<condition field="destination_number" expression="^(10[01][0-9])$">
<action application="bind_meta_app" data="9 b o send_dtmf::F"/> <!-- Send hook-flash INFO -->
<action application="bridge" data="user/$1"/>
</condition>
</extension>
</context>
</include>
hook-flash передается на шлюз после нажатия *9 дальше донабор нужного номера
если подключен шлюз с FXS, то срабатывает и кнопка FLASH аппарата
решение позволяет делать перевод как на стороне Freeswitch, так и на стороне внешней станции
Re: Asterisk -> Dvg6004s -> panasonic и обратно
Добавлено: 24 ноя 2013, 17:41
pikachu937
Выражаю благодарность всем кто был со мной и хоть как-то пытался наставить на путь истинный и отдельно Vlad1983 за его помощь при решении данной задачи тоже огромное человеческое спасибо. А так же прошу простить меня за нецензурные выражения и сопли разведенные в данной теме.