AF
Asterisk Forum
обсуждения телефонии, VoIP и IP-PBX
12разделов
5 423тем
34 385сообщений
← К списку тем

IVR (часть 2)

Asterisk IP PBX 22 сообщений -
#1

У меня вопрос......Имеется текстовый файл с числом (баланс)......Как можно астериск заставить проговорить это число???? Как это прописать в плане набора????
#2

Надо смотреть синтаксис аппликации SayDigits или Text-to-speech!!!!!

PS: маловато вопросительных знаков ставишь, как-то невыразительно получается!!!!!!!
#3

Ded писал(а):
Надо смотреть синтаксис аппликации SayDigits или Text-to-speech
Можно с этого места попадробней??? Это вообще в плане набора прописывается? Idea
#4

Подробней чем мануалы и примеры на voip-info-org не могу!
Сам Астериск очень подробно обо всём рассказывает, в курсе?
Код:

asterisk*CLI> show application SayDigits
asterisk*CLI>
-= Info about application 'SayDigits' =-

[Synopsis]
Say Digits

[Description]
SayDigits(digits): 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 the channel. See the LANGUAGE function for more information on setting
the language for the channel.
#5

В курсе, в курсе....уже учу переучиваю английский..... SayDigit произносит цифры, но не так как бы хотелось, написанно 120, он скажет 3 цифры, типа 1, 2, 0.... как сделать чтобы он нормально понимал баланс, да еще и произносил десятки, сотни, тысячи и минусы приближенно к человеческому пониманию??? Случаем не в extension.ael это прописывается? Логика же должна существовать какая-то?
#6

Ну что ты! Не только логика, но и всё готовое.
Посмотри внимательно на русские файлы в /var/lob/asterisk/sounds/digits/ru
там есть единицы и десятки и сотни. Чтобы признести "Увас на балансе 142,36" надо воспроизвести
play balance.gsm
play 100.gsm
play 40.gsm
play 2.gsm
play comma.gsm
play 30.gsm
play 6.gsm
Есть a2billing, где уже всё собрано на тему сообщения баланса.

И, видимо, пора тему переносить в Newbees.
#7

Ded писал(а):
Ну что ты! Не только логика, но и всё готовое.
Посмотри внимательно на русские файлы в /var/lob/asterisk/sounds/digits/ru
там есть единицы и десятки и сотни. Чтобы признести "Увас на балансе 142,36" надо воспроизвести
play balance.gsm
play 100.gsm
play 40.gsm
play 2.gsm
play comma.gsm
play 30.gsm
play 6.gsm

И все это делает одна единственная команда Say

Цитата:

И, видимо, пора тему переносить в Newbees.

Мммм... Свеженькие пчелки. Няма-няма =)

_________________
OpenSUSE 10.3 / Asterisk-trunk / Celeron 1100 (512mb) / chan_misdn (HFC)
Linksys PAP2T / SPA941 / SPA3102 / SPA2102
#8

IgorG писал(а):

И все это делает одна единственная команда Say



Я с этим ни разу не сталкивался......не могли бы вы написать хотябы примерную логику? Допустим в плане набора имеется переменная в которой хранится баланс. что дальше то делать?
#9

Вот порядок действий:
1. Зайти на voip-info.org
2. Зайти в коммандную строку asterisk и набрать show application Say
3. Спросить здесь


А вообще эта команда аналогична по применению SayDigits только проговаривает переданные цифры как число, используя заранее записанные звуковые файлы.

_________________
OpenSUSE 10.3 / Asterisk-trunk / Celeron 1100 (512mb) / chan_misdn (HFC)
Linksys PAP2T / SPA941 / SPA3102 / SPA2102
#10

Ded писал(а):

Посмотри внимательно на русские файлы в /var/lob/asterisk/sounds/digits/ru
там есть единицы и десятки и сотни.


а если нету русских файлов? только english..... чтобы нормально произносил баланс подошла комманда SayNumber! Но говорит по английски, даже если я добавлю руссифицированные файлы, то как изменить логику их произношения?
#11

Это какие-то неправильные пчёлы. © Винни-Пух.
#12

Блин, да хватит про пчелSmile......говорю же по английски все зашибись говорит, где-то же это прописано что бы он говорил 183 как "one hundred eighty three"? Мне надо просто алгоритм произношения поменять-то!
#13

Алгоритмы произношения прописаны в коде, их там около десятка. Меняете переменную языка, ложишь нужные файлы - и вуаля, цифры и даты произносятся нужным образом

Ссылки на архивы с русскими звуковыми файлами лежат на форуме, в Поиске все найдется.

Если уж приспичит сильно менять алгоритм произношения, то есть say.conf, где можно сконфигурировать все нужным образом. Правда это только в 1.4, да и там пользоваться невозможно, так как нельзя данный способ выставить по-умолчанию.

_________________
OpenSUSE 10.3 / Asterisk-trunk / Celeron 1100 (512mb) / chan_misdn (HFC)
Linksys PAP2T / SPA941 / SPA3102 / SPA2102
#14

shtorm512 писал(а):
...где-то же это прописано что бы он говорил 183 как "one hundred eighty three"? Мне надо просто алгоритм произношения поменять-то!

Чувствуется мне что это то как раз совсем не просто.
А насчет где это прописано - если я не ошибаюсь то берешь исходники астериска, находиш файл say.c, меняеш в нем алгоритм произношения, компилиш астериск.
Я могу и ошибаться но думаю что тебе поможет сделать поиск по форуму по фразе "say.c" - в найденных 4-х топиках (с этим уже 5 будет) есть ответы на твои вопросы.
#15

say.conf нету! Версия Asterisk 1.2.13
#16

а файлл say.conf для чего????? вроде как раз логику менять нет???? Shocked
_________________
Ubuntu-Server 6.06 /Asterisk 1.4.12/app_fax /spandsp4pre11
Digium TDM400/NateksNetworks VC115-2/Polycom IP301 SP /Snom 360
#17

Cache писал(а):
а файлл say.conf для чего????? вроде как раз логику менять нет???? Shocked

Ну IgorG сказал же - во-первых в 1.4, во-вторых - не работает как надо Smile
#18

Хорошо......тогда хде это меняется в Asterisk 1.2.13? Question
#19

shtorm512 писал(а):
Хорошо......тогда хде это меняется в Asterisk 1.2.13? Question

Ты эта, читать умеешь?
Я ж вроде по-русски написал - в исходниках астериска файл say.c
И потому какие ты задаешь вопросы я делаю вывод что мой совет воспользоваться поиском и прочитать 4 топика ты проигнорировал.
Думаю что их вдумчивое чтение заняло бы у тебя больше 5 минут прошедших с момента твоей последней фразы.
#20

пасибо......... Smile полезные очень топы
#21

shtorm512 писал(а):
пасибо......... Smile полезные очень топы

Ну вот, а ты все их читать не хотел Smile
#22

Cache писал(а):
а файлл say.conf для чего????? вроде как раз логику менять нет???? Shocked

Ага, только он странный в 1.4. Логику поменять можно, но только после загрузки астериска чтобы включить новую логику, нужно в консоли дать команду `say load new`. В 1.6 сделал уже чтобы можно было прямо в самом say.conf выбрать какой способ произношения использовать.

_________________
SuSE 10.1 / Asterisk-trunk / Celeron 1000 / chan_misdn (HFC)
Linksys PAP2T / SPA941 / SPA3102 / SPA2102