Приём показаний приборов учёта. Инструкция: различия между версиями
McBurns (обсуждение | вклад) |
McBurns (обсуждение | вклад) |
||
Строка 43: | Строка 43: | ||
==Получение номера лицевого счёта от абонента== | ==Получение номера лицевого счёта от абонента== | ||
Произносится голосовое сообщение, заданное на странице '''«Получение лицевого счёта»'''. В поле «Выражение» можно использовать переменную '''[IsVoice]'''. Например: | |||
([IsVoice]? 'Назовите номер лицевого счёта' : 'Введите номер лицевого счёта и нажмите звёздочку') | |||
В случае, если идёт приём показаний голосом ('''[IsVoice] = true'''), произносится: «Назовите номер лицевого счёта». Иначе: «Введите номер лицевого счёта и нажмите звёздочку». | |||
После произнесения сообщения сценарий в течение 18 секунд ожидает произнесения номера лицевого счёта или нажатия клавиш на телефоне. | |||
Если лицевой счёт не получен или данные по нему не найдены в базе данных, сценарий ещё два раза запрашивает у абонента лицевой счёт. | |||
==Поиск лицевого счёта в базе данных== | ==Поиск лицевого счёта в базе данных== | ||
==Получение списка приборов учёта по лицевому счёту== | ==Получение списка приборов учёта по лицевому счёту== |
Версия 04:40, 21 декабря 2015
Основной алгоритм работы
- Произнесение приветственого сообщения.
- Ожидание выбора способа передачи показаний.
- Если номер телефона определён, выполняется запрос на поиск лицевого счёта по номеру телефона.
- Если номер лицевого счёта по номеру телефона не получен, выполняется получение номера лицевого счёта от абонента.
- Если лицевой счёт получен, выполняется запрос на поиск лицевого счёта в базе данных.
- Если лицевой счёт найден в базе данных, выполняется запрос на получение списка приборов учёта по этому лицевому счёту.
- По каждому прибору учёта из списка принимаются показания.
- Принятые показания проверяются и, если проверка прошла успешно, записываются в базу данных.
Пошаговая настройка
Вступительное сообщение
В этом сообщении абонент получает информацию о том, каким образом будет происходить приём показаний.
Необходимо объяснить, что при нажатии любой клавиши на телефоне в тональном режиме приём показаний будет происходить путём распознавания нажатых клавиш, иначе — путём распознавания голоса.
Ожидание выбора способа передачи показаний
В область действия сценария добавляется переменная [IsVoice], она имеет значение true, если выбрана передача показаний голосом и false, если выбрано получение показаний путём нажатия клавиш телефона. В дальнейшем эту и любые другие переменные, добавленные в область действия сценария можно использовать как в запросах, так и в голосовых сообщениях. Например, для выбора сообщения, которое будет произноситься абоненту.
Запрос на поиск лицевого счёта по номеру телефона
Если у ваших абонентов есть жёсткая привязка лицевого счёта к номеру телефона, используйте запрос на странице «Поиск лицевого счета по номеру телефона». Если такой привязки нет, запрос можно оставить пустым, и поиск по номеру телефона производиться не будет.
В запросе необходимо в обязательном порядке получить поле с номером лицевого счёта, которое выбирается на странице настроек ниже. Для подстановки в запрос номера телефона, который определился у абонента, используйте переменную [InPhone].
Например, если задать запрос:
select * from `Account` where `Phone`='[InPhone]'
при звонке с номера 2222201 будет выполнен запрос:
select * from `Account` where `Phone`='2222201'
На этой же странице можно ввести для проверки номер телефона, который будет подставлен вместо переменной [InPhone] после нажатия кнопки «Проверить». Результат выполнения запроса будет выведен в виде таблицы в поле «Результаты запроса».
При получении только одной записи в результате выполнения запроса при работе сценария лицевой счёт считается определённым и дополнительно не спрашивается у абонента.
Если не получено ни одной записи, или получено две и более записей, сценарий предлагает абоненту указать лицевой счёт.
Получение номера лицевого счёта от абонента
Произносится голосовое сообщение, заданное на странице «Получение лицевого счёта». В поле «Выражение» можно использовать переменную [IsVoice]. Например:
([IsVoice]? 'Назовите номер лицевого счёта' : 'Введите номер лицевого счёта и нажмите звёздочку')
В случае, если идёт приём показаний голосом ([IsVoice] = true), произносится: «Назовите номер лицевого счёта». Иначе: «Введите номер лицевого счёта и нажмите звёздочку».
После произнесения сообщения сценарий в течение 18 секунд ожидает произнесения номера лицевого счёта или нажатия клавиш на телефоне.
Если лицевой счёт не получен или данные по нему не найдены в базе данных, сценарий ещё два раза запрашивает у абонента лицевой счёт.