Страница 1 из 1

VoiceMail с записью и оповещением на обычный телефон

Добавлено: 26 дек 2014, 13:52
Reader
С наступающим Новым Годом, господа специалисты.
Всвязи с предстоящим праздником возникла вот какая задача у меня:
В обычное время сидит специалист техсаппорта (один или несколько) и принимает все заявки и решает практически все вопросы (на орг. уровне). Но вот наступают долгоиграющие праздники и техсаппорт разъедется праздновать по своим квартирам и отвечать на заявки будет некому. А они по-видимому будут, т.к. много служб использую вычтехнику круглосуточно. Как реализовать безлюдный техсаппорт ? Чтобы на все заявки отвечал автоответчик, все их записывал хотя бы со слов дозвонившегося на HDD "Эластикса 2.4", отправлял копию .wav на список майлов техподдержки (по принципу: кто ответственный в этот день, тот и занимается). И плюс тот же "Elastix" следом должен отправить всем на мобильники хотя бы по одной посылке вызова с А-номером техподдержки,чтобы ответственный получив такой неотвеченный звонок по А-номеру догадался, что пора бросат гостей, праздники, открывать почту и расследовать заявку ("рыть землю"). Обзвон - обязателен ... Без разницы чья очередь из дежурных. Заявок и так немного ...

Сейчас мне удалось на 90% реализовать эту задачу просто прописав в Elastix новый EXTEN=7165 с функцией VoiceMail и отправкой на mail. Создавать было легко - ибо есть наработки и простецкий встроенный интерфейс по созданию такого абонента по усолчанию. Удалось проверить - всё летает грандиозно. Но это не устраивает начальство. Нужно бы чтобы ещё была хотя бы 1 попытка вызова на список мобильников (4 шт.) с выдачей правильного А-номера (допустим "3322223"). Пытаюсь подобраться к этому вопросу через создание некой записи в extensions_custom.conf типа
[from-pstn-custom]
exten => 7165,1,Set(DID=${EXTEN})
exten => 7165,2,Set(RingGroupMethod=none) ; this not read by DialPlan !
exten => 7165,3,Goto(from-pstn,${DID},1)
exten => 7165,n,Macro(record-enable,7165,IN)
exten => 7165,n,Macro(dial-one,,${DIAL_OPTIONS},7165)
exten => 7165.,n,Goto(from-pstn,${EXTEN},1)
exten => 7165,n,Dial(DAHDI/g0/89222222222,10) ; где 8(922)22222222 - моб. телефон некоего очередного дежурного.
exten => 7165,n,Hangup

Но ничего не получается - ни зафвка в файл не пишется, ни отправка не получается на mail ... Ни звонок не звонится ...

Re: VoiceMail с записью и оповещением на обычный телефон

Добавлено: 26 дек 2014, 17:40
zzuz
Вырву , так сказать, из контекста.

"Сейчас мне удалось на 90% реализовать эту задачу" ->> "Но ничего не получается ..."

Re: VoiceMail с записью и оповещением на обычный телефон

Добавлено: 26 дек 2014, 17:42
zzuz
С таким подходом Вы поздновато начали вопрос изучать .

Re: VoiceMail с записью и оповещением на обычный телефон

Добавлено: 26 дек 2014, 17:43
zzuz

Код: Выделить всё

exten => 7165.,n,Goto(from-pstn,${EXTEN},1)
откуда и зачем точка в написании номера?

Re: VoiceMail с записью и оповещением на обычный телефон

Добавлено: 27 дек 2014, 09:47
virus_net
Reader писал(а):с выдачей правильного А-номера (допустим "3322223").
А ваш оператор позволит вам это ? Сомневаюсь. Скорее всего он не пропустит вызов не с вашим CID.

+1 к zzuz про точку
и откройте CLI

Код: Выделить всё

dialplan show 7165@from-pstn-custom
смотрите как отрабатывает dialplan при вызове

Код: Выделить всё

core set verbose 3

Re: VoiceMail с записью и оповещением на обычный телефон

Добавлено: 27 дек 2014, 13:23
zzuz
Там много чего. В продолжение отмечу одержимость автора контекстом from-pstn

Код: Выделить всё

exten => 7165,3,Goto(from-pstn,${DID},1)
exten => 7165.,n,Goto(from-pstn,${EXTEN},1)

Re: VoiceMail с записью и оповещением на обычный телефон

Добавлено: 28 дек 2014, 14:13
Reader
Согласен с замечаниями zzuz. Исправил. Получил такой самописный кусок диалплана:
[from-pstn-custom]
exten => 7165,1,Set(DID=${EXTEN})
exten => 7165,2,Set(RingGroupMethod=none)
exten => 7165,3,Macro(record-enable,7165,IN)
exten => 7165,4,Macro(dial-one,,${DIAL_OPTIONS},7165)
exten => 7165,5,Goto(from-pstn,${EXTEN},1)
exten => 7165,6,Dial(DAHDI/g0/89222222222,10)
exten => 7165,7,Hangup

Но он не позволяет работать правильно существовавшему и до его появлению отлично работавшему встроенному функционалу копирования речи дозвонившегося в файл и отправки файла на почту к неответившему дежурному. Судя по CLI там вообще что-то зациклено. И никак из этого цикла выйти не может ... Только жутко разогревает процессор и материнку, а мат. благ не производит ...
... вроде бы я строкой
exten => 7165,5,Goto(from-pstn,${EXTEN},1)
пытаюсь выпрыгнуть из [from-pstn-custom] и втиснуться обратно в [from-pstn], но меня Asterisk опять через какое-то время забрасывает в [from-pstn-custom] ! Как разорвать порочный круг ?

Re: VoiceMail с записью и оповещением на обычный телефон

Добавлено: 29 дек 2014, 00:28
ded
Контекст from-pstn-custom является через инклюд частью контекста from-pstn. Таким образом Вы создали замкнутый цикл.

1) Посмотрите в примерах в файле sip.conf как устроена голосовая почта (если у вас самописные конфиги)
2) Не переделывайте руками конфиги (усли у вас freePBX), а используйте логику готовых модулей вэб интерфейса. Общее количество ручных переделок в системе у вас уже превышает критическую массу. Скоро начнётся цепная реакция и всё рухнет.