Чат  ::   FAQ  ::   Поиск  ::   Регистрация  ::   Вход

AMI сделать звонок и проиграть сообщение.

Раздел для разработчиков для обсуждения программных и аппаратных продуктов и их реализации.

Модератор: april22

AMI сделать звонок и проиграть сообщение.

Сообщение peektoseen » 20 окт 2016, 14:46

Всем привет!
Господа знающие, подскажите, можно ли через AMI совершить звонок "в одну сторону" и проиграть сообщение? С проигрыванием сообщения вроде проблем нет, а вот с звонком не могу разобраться.
Есть Originate, но он делает сначала звонок на внутренний, затем на внешний. Не нашел способа сделать это без внутреннего телефона.
Сейчас вызов через AMI делаю так:

Код: выделить все
Action: Originate
Channel: PJSIP/102
Context: from-internal
Exten: 790436203XX
Priority: 1
Callerid: 102
Timeout: 30000


Но, как Вы понимаете - этот вариант не совсем то, что хотелось бы получить.
peektoseen
 
Сообщений: 12
Зарегистрирован: 18 фев 2013, 09:59

Re: AMI сделать звонок и проиграть сообщение.

Сообщение peektoseen » 20 окт 2016, 15:09

Кажется я приблизился к решению. Теперь в AMI я отправляю следующее (может кому поможет):
Код: выделить все
Action: Originate
Channel: SIP/mtt/790436203XX
Application: Playback
data: hello-world
Timeout: 30000


Но как быть, если мне нужно проиграть несколько файлов?
Объясню ситуацию - нужно позвонить на номер и продиктовать численный код.
peektoseen
 
Сообщений: 12
Зарегистрирован: 18 фев 2013, 09:59

Re: AMI сделать звонок и проиграть сообщение.

Сообщение Wapo » 20 окт 2016, 16:25

Все правильно написали. Только вместо приложения сделать Context: out_golos,Extensions: s,Priority: 1
ну и в диалплане:

[out_golos]
exten => s,1,Answer
same => n,Playback
same => .....

все что угодно
Аватар пользователя
Wapo
 
Сообщений: 631
Зарегистрирован: 02 мар 2011, 18:53

Re: AMI сделать звонок и проиграть сообщение.

Сообщение virus_net » 20 окт 2016, 17:19

Wapo писал(а):Все правильно написали. Только вместо приложения сделать...

Почему же вместо ? Ведь:
peektoseen писал(а):продиктовать численный код

Для этого случая есть application SayDigits:
Код: выделить все
*CLI> core show application SayDigits

-= Info about application 'SayDigits' =-

[Synopsis]
Say Digits.

[Description]
This application will play the sounds that correspond to the digits of the given number. This will use the language that is currently set for thechannel.

[Syntax]
SayDigits(digits)
мой SIP URI sip:virus_net@asterisk.ru или sip:dn@postmet.com
bitname.ru - Домены .bit (namecoin) .emc .coin .lib .bazar (emercoin)

ENUMER - звони бесплатно и напрямую.
Аватар пользователя
virus_net
 
Сообщений: 2170
Зарегистрирован: 05 июн 2013, 08:12
Откуда: Москва

Re: AMI сделать звонок и проиграть сообщение.

Сообщение peektoseen » 20 окт 2016, 18:08

Wapo писал(а):Все правильно написали. Только вместо....

virus_net писал(а):Почему же вместо ? Ведь:

Спасибо Вам за помощь!
Сейчас все работает следующим образом:

Код: выделить все
Action: Originate
Channel: SIP/mtt/790436203xx
Timeout: 30000
Context: code_auth
Exten: 790436203xx
Priority: 1
Variable: digits=123


В extensions_custom.conf (это freepbx) :
Код: выделить все
[code_auth]
exten => _X., 1, Verbose(1|Auth ring);
exten => _X., 2, Playback(zdravstujte);
exten => _X., 3, PLayback(parol);
exten => _X., 4, SayDigits(${digits});
exten => _X., 5, Hangup();


Этот вариант работает.
peektoseen
 
Сообщений: 12
Зарегистрирован: 18 фев 2013, 09:59


Вернуться в Разработка

Кто сейчас на форуме

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

© 2008 — 2018 Asterisk.ru
Digium, Asterisk and AsteriskNOW are registered trademarks of Digium, Inc.
Design and development by PostMet-Netzwerk GmbH