Shagrid Posted December 4, 2017 Share Posted December 4, 2017 Здравствуйте. В далёком 2013 году на форуме писалось, что разработка многоуровневого меню есть в планах. Подскажите пожалуйста, начались ли работы в этом направлении? Link to comment
Igor Posted December 4, 2017 Share Posted December 4, 2017 На текущий момент не обнаружили значительного спроса на такую услугу, потому она не в первом списке. В будущем будет но когда сказать не смогу, так как есть более востребованные услуги. Например, значительно более востребована была АТС с несколькими меню, это сделали весной 2017. Link to comment
Timuridze Posted April 10, 2019 Share Posted April 10, 2019 Этот функционал не планируется? Очень удобно посадить на кнопку, проговаривание адреса и/или режима работы. Это бы разгрузило оператора. Link to comment
Igor Posted April 10, 2019 Share Posted April 10, 2019 На сегодня этот функционал уже доступен при работе через API. Там можно хоть вообще электронного оператора сделать :) Link to comment
Kemhost Posted April 14, 2019 Share Posted April 14, 2019 (edited) На сегодня этот функционал уже доступен при работе через API. Там можно хоть вообще электронного оператора сделать :) Безусловно круто что Вы наконец это сделали, но для полноты картины, не хватает 2х очень важных функций, которые реализовать очень не сложно. 1) Возврат клиента на ivr меню, уже после того как он поговорил с оператором. Например для перевода его на сценарий оценки консультации, или выполнения скрипта установки pin кода для пользователя, вариантов много. Оператор жмет *что-то*номер-сценария#. Соответственно на сервер отправляет NOTIFY_IVR с указанным номером сценария, и управление звонком перехватывает бот. 2) Возможность управлять IVR файлами напрямую со стороны сервера, в момент звонка отправляя нужный файл (ссылкой, или бинарными данными в ответ на IVR_NOTIFY).На сервере TTS генерирует поток ответа, и передает напрямую клиенту. С этой функцией появляется возможность реализовывать по настоящему сложные и многоуровневые ivr меню, с динамически генерируемыми ответами напрямую сервером. Например, приветствие клиента по ИО, предоставление клиенту какой то важной информации из биллинга, будь то данные по последней операции, логи входов, опять же, вариантов очень много. Edited April 14, 2019 by Kemhost Link to comment
Igor Posted April 17, 2019 Share Posted April 17, 2019 Спасибо за отзыв. 1) Возврат клиента на ivr меню, уже после того как он поговорил с оператором. Думаем реализовать трансфер на IVR. То есть после разговора или в середине разговора можно будет нажать например #999# и звонок уйдет к роботу. 2) Возможность управлять IVR файлами напрямую со стороны сервера, в момент звонка отправляя нужный файл Это технически весьма проблематично для большого облака. Скорее реализуем автоматическую начитку "на лету", если будет спрос. Link to comment
dima_vy Posted December 16, 2019 Share Posted December 16, 2019 А можно сделать перевод с одного меню на другое? Например у меня есть два меню, одно на русском, другое на английском. Могу ли например сделать так, чтобы нажатием на кнопку 9 разговор переходил на меню на английском языке? Спасибо Link to comment
Igor Posted December 16, 2019 Share Posted December 16, 2019 Такое пока можно только через API. В будущем будет больше возможностей, надеюсь скором будущем. В API вы сами решаете какой текст проговаривать и куда слать звонок после какой цифры. Link to comment
dima_vy Posted December 18, 2019 Share Posted December 18, 2019 Буду ждать, хотелось бы попроще :)) Link to comment
dima_vy Posted May 23, 2020 Share Posted May 23, 2020 Доброго времени суток:) Хотелось бы узнать, есть ли продвижение в данной теме? Спасибо Link to comment
Igor Posted May 23, 2020 Share Posted May 23, 2020 Доброго ) В этом году думаю будет, надеюсь очень скоро. АТС не стоит на месте и как видите дополнительные внешние линии уже добавили. Есть еще много планов. Link to comment
elephantbull Posted July 28, 2020 Share Posted July 28, 2020 Всем привет. Мне для своего бизнеса нужно 3 уровневое меню IVR. Но настройка с помощью API для меня сравнима с освоением китайской грамоты без учебника. КТо-нибудь мог бы помочь произвести настройку за оплату? Предложения прошу писать в личку Link to comment
Igor Posted July 28, 2020 Share Posted July 28, 2020 Вы можете привлечь любого программиста который вам напишет простой скрипт логики API. А если он пишет на PHP то может просто взять один из наших примеров и переделать под вас: https://zadarma.com/ru/blog/ivr-webhook/ По моему третий пример ближе всего к тому что вам нужно (там бесконечное меню). Link to comment
elephantbull Posted September 11, 2020 Share Posted September 11, 2020 Igor, Я уже месяц пытаюсь наладить IVR через API и ничего не выходит. Уже привлек 3 программистов и ни один из них не сумел. Потратил 5 тыс рублей. Документация и инструкция либо содержат пробелы либо этот функционал просто не работоспособен. Служба поддержки мягко "посылает" Докажите мне что многоуровневый IVR возможен. Напишите мне в личку имя того кто это хоть раз проделал на вашем бесплатно-сервисе. Link to comment
Igor Posted September 12, 2020 Share Posted September 12, 2020 Работоспособность функционала не сложно проверить на примере из гитхаба. Ссылка на пример указана в статье и вот она еще раз: https://github.com/zadarma/user-api-v1/blob/master/examples/webhook.php Похоже никто из фрилансеров что вы привлекли не захотел разбираться как работает телефония, увы писать код за клиента мы не можем, можем только давать примеры. Перед началом разработки нужнонастроить атс (сценарии должны быть, записи для воспроизведения также) и повернуть на ваш сервер вебхуки. Из вебхуков нужно по сути два NOTIFY_START начало входящего звонка в АТС. NOTIFY_IVR Работа с меню тоже простая: Получили start, сказали "проиграть приветствие ждать цифры" ("ivr_play" и "wait_dtmf"), получили цифры, дальше или на сценарий направляете (redirect) или вновь прокрутить приветствие ("ivr_play" и "wait_dtmf"), это и есть уже следующий уровень, так хоть до бесконечности. Два вебхука по 3 параметра, не считаю что адски сложно. Как можете увидеть из описания API это малый процент от всего функционала что есть. P.S.: все что я написал уже описано в статье.. вопросов по факту к поддержке я увы не увидел (в заявках был вопрос как сделать голосовое меню, вам ответили через API ? ) Link to comment
Igor Posted September 13, 2020 Share Posted September 13, 2020 А можете подсказать что именно вам нужно? Быть может это и не совсем многоуровневое меню и вообще api не нужно. Так как сейчас в вашем аккаунте не настроено ни одного действительно рабочего меню (настроен только один сценарий и в нем только один внутренний номер, то есть клиенту при звонке выбирать особо нечего ? ). Link to comment
elephantbull Posted September 14, 2020 Share Posted September 14, 2020 Igor, спасибо за информацию, в настоящий момент я не могу удостоверится доходят ли вызовы до моего вебхука. Ваши коллеги говорят что скорее всего хук некорректный. Не более того. Сам сценарий - во вложении. Хук ниже. Очень жаль что сервис и документация по нему преподносится как игрушка для не ленивых программистов (большинство из них оказывается не хотят разбираться), а не для безнесменов. if (isset($_GET['zd_echo'])) exit($_GET['zd_echo']); use Zadarma_API\Api; use Zadarma_API\Webhook\AbstractNotify; use Zadarma_API\Webhook\NotifyIvr; use Zadarma_API\Webhook\NotifyStart; use Zadarma_API\Webhook\Request; define('KEY', '177e579a06b4557e0118'); define('SECRET', '18ced67cb9f140f726d2'); class WebhookExample { private static $api = null; const INFO_FILE_ID = '199a520c8b81c207'; const WRONG_INPUT_FILE_ID = '199a520c8b81c2071'; const DTMF_NAME_2 = 'date'; const DTMF_NAME_3 = 'menu'; public static $menu = [ 'file' => '1f5240a2c672ddb6', 1 => [ 'file' => '1f5240a2c672ddb6', 1 => [ 'file' => '199a520c8b81c207', 1 => [ 'file' => '199a520c8b81c207', ], ], 2 => [ 'file' => '199a520c8b81c207', ], ], 2 => [ 'file' => '50979aa4feffcf90', ], ]; public static function example3() { $request = new Request(); /** @var NotifyIvr $notify */ if ($notify = self::getEvent([AbstractNotify::EVENT_START])) { $request ->setIvrPlay(self::$menu['file']) ->setWaitDtmf(5, 1, 1, self::DTMF_NAME_3, 'hangup') ->send(); return; } $notify = self::getEvent([AbstractNotify::EVENT_IVR]); if (!empty($notify->wait_dtmf->digits) && mb_strpos($notify->wait_dtmf->name, self::DTMF_NAME_3) === 0) { $menu = mb_substr($notify->wait_dtmf->name, mb_strlen(self::DTMF_NAME_3)); switch ($notify->wait_dtmf->digits){ case 1: case 2: case 3: $menu .= $notify->wait_dtmf->digits; break; case 4: if ($menu) { $menu = mb_substr($menu, 0, mb_strlen($menu) - 1); } break; case 5: default: $request->setHangup()->send(); return; } list($menu, $file) = self::getMenuFile($menu); $request ->setIvrPlay($file) ->setWaitDtmf(5, 1, 1, self::DTMF_NAME_3.$menu, 'hangup') ->send(); } } private static function getEvent($allowedTypes) { if (self::$api === null) { self::$api = new Api(KEY, SECRET, true); } return self::$api->getWebhookEvent($allowedTypes); } private static function getMenuFile($menuDigits) { $menuDigits = (string)$menuDigits; $menuDigitsResult = ''; $menu = self::$menu; while ($menuDigits) { $currentDigit = mb_substr($menuDigits, 0, 1); $menuDigits = mb_substr($menuDigits, 1); if (isset($menu[$currentDigit])) { $menu = $menu[$currentDigit]; $menuDigitsResult .= $currentDigit; } else { break; } } return [$menuDigitsResult, $menu['file']]; } } WebhookExample::example3(); Link to comment
Igor Posted September 14, 2020 Share Posted September 14, 2020 Бизнесмен не должен писать код. API не может быть для бизнесменов. Узнать доходят вебхуки или нет на самом деле крайне просто: попросите ваших программистов чтобы ваш скрипт сохранял логи о всех действиях, и все. Сможете посмотреть когда и что мы вам передаем, что вы отвечаете. Извиняюсь, но разбираться и править ваш код я не успею физически, ну и это не моя работа. Link to comment
dima_vy Posted September 15, 2020 Share Posted September 15, 2020 А есть шанс ещё увидеть эту функцию в интерфейсе Задарма? Или это так и будет на уровне API? Link to comment
elephantbull Posted September 15, 2020 Share Posted September 15, 2020 Igorб согласен с вами и разделяю с вами чувство занятости и отвращение выполнять чужую работу. Однако ваш сервис - коммерческая организация, не смотря на название. Я ваш клиент, неужели Вы не можете переадресовать мой пост более свободному специалисту, который поможет всей команде Zadarma удержать меня как клиента? Убежден , что если я уйду от вас в манго офис (а они почему то очень уверены что мой тест с IVR задарма не увенчается успехом), по причине неадекватного сервиса, функционала и поддержки, то уйдут еще пару десятков клиентов, прочитавших этот и последующие посты. Сделайте же меня счастливым клиентом Zadarma ! Заработайте на мне немного денег! Link to comment
Igor Posted September 15, 2020 Share Posted September 15, 2020 12 часов назад, dima_vy сказал: А есть шанс ещё увидеть эту функцию в интерфейсе Задарма? Или это так и будет на уровне API? Будет и в интерфейсе, но позже. 10 часов назад, elephantbull сказал: Вы не можете переадресовать мой пост более свободному специалисту, который поможет всей команде Zadarma удержать меня как клиента? К сожалению мы не аутсорсинговая компания и у нас нет функций написания кода для клиентов. Мы поддерживаем разработчиков кто с нами интегрируется, предоставляем документацию и отвечаем на детальные вопросы. 10 часов назад, elephantbull сказал: по причине неадекватного сервиса, функционала и поддержки, то уйдут еще пару десятков клиентов, прочитавших этот и последующие посты Пожалуйста воздержитесь от угроз, это нарушает правила форума. У Zadarma есть перечень услуг которые мы предоставляем. Других у нас нет. Я вам несколько раз сделал рекомендации как проверить работу с вебхуками, похоже вы им не последовали. В личном кабинете у вас нет ни одного вопроса с ошибками вроде "делаем так и так получается это а нам нужно другое" и с логами работы. На общий вопрос вам дали общий ответ. Мы не можем помочь клиенту, который не задает конкретного вопроса а просит "сделайте мне хорошо" а потом начинает ругать сервис, или угрожать. Link to comment
Igor Posted March 16, 2021 Share Posted March 16, 2021 Для желающих использовать многоуровневое меню в АТС Zadarma не зависимо от интерфейса, мы разработали специальный класс который максимально упрощает создание меню через API. Подробное описание как с ним работать опубликовано у нас в блоге: https://zadarma.com/ru/blog/multi-ivr-api/ Link to comment
dima_vy Posted March 21, 2021 Share Posted March 21, 2021 17.03.2021 в 01:13, Igor сказал: Для желающих использовать многоуровневое меню в АТС Zadarma не зависимо от интерфейса, мы разработали специальный класс который максимально упрощает создание меню через API. Подробное описание как с ним работать опубликовано у нас в блоге: https://zadarma.com/ru/blog/multi-ivr-api/ Спасибо, что не забываете эту тему ? Осталось дождаться возможности настройки и во внутреннем интерфейсе Задарма, для тех, кто не знает php и не имеет своего сервера ? Link to comment
Igor Posted March 24, 2021 Share Posted March 24, 2021 Цитата Осталось дождаться возможности настройки и во внутреннем интерфейсе Задарма, для тех, кто не знает php и не имеет своего сервера ? Это скоро будет, но не сделает данный скрипт бесполезным, так как с его помощью каждый может крайне легко интегрировать АТС в свою систему (имея крайне ограниченный опыт в программировании). Link to comment
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now