Size: a a a

2020 November 10

A

Art in Asterisker-ы
Просто сложное меню с кучей наворотов. Порядка 400 записанных фраз
источник

IO

Ihor Olkhovskyi in Asterisker-ы
Art
Коллеги, а очень сложные IVR вы на чем пишите?
На чистом диалплане это какая то жесть получается
Не важно на чем писать, как по мне важен подход. Мне нравится идея подхода конечного автомата.
Т.е. некий автомат, у него есть состояние и есть некая карта переходов.
источник

A

Art in Asterisker-ы
Ihor Olkhovskyi
Не важно на чем писать, как по мне важен подход. Мне нравится идея подхода конечного автомата.
Т.е. некий автомат, у него есть состояние и есть некая карта переходов.
Хм, не понимаю, а есть пример?
источник

OS

Oleg Shteinliht in Asterisker-ы
Art
Коллеги, а очень сложные IVR вы на чем пишите?
На чистом диалплане это какая то жесть получается
у нас свой модуль голосового меню
источник

A

Art in Asterisker-ы
Я слышал есть всякие графические интерфейсы для этого
источник

OS

Oleg Shteinliht in Asterisker-ы
у нас есть
источник

IO

Ihor Olkhovskyi in Asterisker-ы
По факту, IVR - некий блок с параметрами. Есть описанные состояния.
Типа «Проговорить фразу А», на нажатие Х - выполнить какое-то действие ,например, переход на экстеншн. Или перейти на другой уровень IVR со своим набором действий.
И получается, что состояние автомата - это его действия, как проговаривание фразы, а выходы - просто действия.
Соответственно, составляется карта состояние - действие. И передается в сам блок.

Пример состояния X.
Проговорить фразу А
При нажатии на 1 - вызвать состояние Y
При нажатии на 2 - повесить трубку.
При нажатии на 0 - вызывать состояние Z

И получается, что имеется просто массив состояний с кучей перекрестных ссылок
источник

A

Art in Asterisker-ы
Ihor Olkhovskyi
По факту, IVR - некий блок с параметрами. Есть описанные состояния.
Типа «Проговорить фразу А», на нажатие Х - выполнить какое-то действие ,например, переход на экстеншн. Или перейти на другой уровень IVR со своим набором действий.
И получается, что состояние автомата - это его действия, как проговаривание фразы, а выходы - просто действия.
Соответственно, составляется карта состояние - действие. И передается в сам блок.

Пример состояния X.
Проговорить фразу А
При нажатии на 1 - вызвать состояние Y
При нажатии на 2 - повесить трубку.
При нажатии на 0 - вызывать состояние Z

И получается, что имеется просто массив состояний с кучей перекрестных ссылок
и все это на голом диалплане?
источник

IO

Ihor Olkhovskyi in Asterisker-ы
Было и такое.
источник

E

Eduard <<Ahtar... in Asterisker-ы
Oleg Shteinliht
у нас есть
Юзабельно?
источник

OS

Oleg Shteinliht in Asterisker-ы
Art
и все это на голом диалплане?
коллега, может интересует готовое решение под вашу задачу, с графическим интерфейсом?
источник

OS

Oleg Shteinliht in Asterisker-ы
Eduard <> Titkov
Юзабельно?
не было еще задачи, которую мы не решили с помощью нашего ГМ
источник

RP

Roman Pertsev in Asterisker-ы
Art
Коллеги, а очень сложные IVR вы на чем пишите?
На чистом диалплане это какая то жесть получается
очень сложные IVR не нужны в принципе. Когда вы гоняете клиента по лабиринтам Фавна это капец как выбешивает, 2-3 уровня это идеально.
источник

A

Art in Asterisker-ы
Roman Pertsev
очень сложные IVR не нужны в принципе. Когда вы гоняете клиента по лабиринтам Фавна это капец как выбешивает, 2-3 уровня это идеально.
там просто не одно меню. И много специфики(
источник

A

Art in Asterisker-ы
Oleg Shteinliht
коллега, может интересует готовое решение под вашу задачу, с графическим интерфейсом?
А на выходе получается голый диалплан? И как там интегрируются какие то приложения?
источник

YG

Yuriy Gorlichenko in Asterisker-ы
Ihor Olkhovskyi
По факту, IVR - некий блок с параметрами. Есть описанные состояния.
Типа «Проговорить фразу А», на нажатие Х - выполнить какое-то действие ,например, переход на экстеншн. Или перейти на другой уровень IVR со своим набором действий.
И получается, что состояние автомата - это его действия, как проговаривание фразы, а выходы - просто действия.
Соответственно, составляется карта состояние - действие. И передается в сам блок.

Пример состояния X.
Проговорить фразу А
При нажатии на 1 - вызвать состояние Y
При нажатии на 2 - повесить трубку.
При нажатии на 0 - вызывать состояние Z

И получается, что имеется просто массив состояний с кучей перекрестных ссылок
тут некоторые люди однотипные диалпланы плодят потому что думать как сделать универсальный - лень
А ты с конечными автоматами к человеку 🙂
источник

OS

Oleg Shteinliht in Asterisker-ы
Art
А на выходе получается голый диалплан? И как там интегрируются какие то приложения?
нет, диалплана у нас нет, на выходе конечный автомат )
источник

IO

Ihor Olkhovskyi in Asterisker-ы
Yuriy Gorlichenko
тут некоторые люди однотипные диалпланы плодят потому что думать как сделать универсальный - лень
А ты с конечными автоматами к человеку 🙂
Знаешь, иногда копипаста - спасение. А том потом сделают include в include с пересечением _X. и удивляются, что ничего не работает
источник

A

Art in Asterisker-ы
а про конечный автомат где то почитать можно? он так и называется? Или есть какое то правильное англ. название?
источник

OS

Oleg Shteinliht in Asterisker-ы
state machine (конечный автомат) - ищите в википедии
источник