Приём показаний приборов учёта. Инструкция: различия между версиями

Материал из Call Office Wiki
Перейти к навигации Перейти к поиску
Строка 43: Строка 43:


==Получение номера лицевого счёта от абонента==
==Получение номера лицевого счёта от абонента==
Произносится голосовое сообщение, заданное на странице '''«Получение лицевого счёта»'''. В поле «Выражение» можно использовать переменную '''[IsVoice]'''. Например:
  ([IsVoice]?  'Назовите номер лицевого счёта' : 'Введите номер лицевого счёта и нажмите звёздочку')
В случае, если идёт приём показаний голосом ('''[IsVoice] = true'''), произносится: «Назовите номер лицевого счёта». Иначе: «Введите номер лицевого счёта и нажмите звёздочку».
После произнесения сообщения сценарий в течение 18 секунд ожидает произнесения номера лицевого счёта или нажатия клавиш на телефоне.
Если лицевой счёт не получен или данные по нему не найдены в базе данных, сценарий ещё два раза запрашивает у абонента лицевой счёт.
==Поиск лицевого счёта в базе данных==
==Поиск лицевого счёта в базе данных==
==Получение списка приборов учёта по лицевому счёту==
==Получение списка приборов учёта по лицевому счёту==

Версия 04:40, 21 декабря 2015

Основной алгоритм работы

  1. Произнесение приветственого сообщения.
  2. Ожидание выбора способа передачи показаний.
  3. Если номер телефона определён, выполняется запрос на поиск лицевого счёта по номеру телефона.
  4. Если номер лицевого счёта по номеру телефона не получен, выполняется получение номера лицевого счёта от абонента.
  5. Если лицевой счёт получен, выполняется запрос на поиск лицевого счёта в базе данных.
  6. Если лицевой счёт найден в базе данных, выполняется запрос на получение списка приборов учёта по этому лицевому счёту.
  7. По каждому прибору учёта из списка принимаются показания.
  8. Принятые показания проверяются и, если проверка прошла успешно, записываются в базу данных.

Пошаговая настройка

Вступительное сообщение

В этом сообщении абонент получает информацию о том, каким образом будет происходить приём показаний.

Необходимо объяснить, что при нажатии любой клавиши на телефоне в тональном режиме приём показаний будет происходить путём распознавания нажатых клавиш, иначе — путём распознавания голоса.

Ожидание выбора способа передачи показаний

В область действия сценария добавляется переменная [IsVoice], она имеет значение true, если выбрана передача показаний голосом и false, если выбрано получение показаний путём нажатия клавиш телефона. В дальнейшем эту и любые другие переменные, добавленные в область действия сценария можно использовать как в запросах, так и в голосовых сообщениях. Например, для выбора сообщения, которое будет произноситься абоненту.

Запрос на поиск лицевого счёта по номеру телефона

Если у ваших абонентов есть жёсткая привязка лицевого счёта к номеру телефона, используйте запрос на странице «Поиск лицевого счета по номеру телефона». Если такой привязки нет, запрос можно оставить пустым, и поиск по номеру телефона производиться не будет.

В запросе необходимо в обязательном порядке получить поле с номером лицевого счёта, которое выбирается на странице настроек ниже. Для подстановки в запрос номера телефона, который определился у абонента, используйте переменную [InPhone].

Например, если задать запрос:

  select * from `Account` where `Phone`='[InPhone]'

при звонке с номера 2222201 будет выполнен запрос:

  select * from `Account` where `Phone`='2222201'

На этой же странице можно ввести для проверки номер телефона, который будет подставлен вместо переменной [InPhone] после нажатия кнопки «Проверить». Результат выполнения запроса будет выведен в виде таблицы в поле «Результаты запроса».

При получении только одной записи в результате выполнения запроса при работе сценария лицевой счёт считается определённым и дополнительно не спрашивается у абонента.

Если не получено ни одной записи, или получено две и более записей, сценарий предлагает абоненту указать лицевой счёт.

Получение номера лицевого счёта от абонента

Произносится голосовое сообщение, заданное на странице «Получение лицевого счёта». В поле «Выражение» можно использовать переменную [IsVoice]. Например:

  ([IsVoice]?  'Назовите номер лицевого счёта' : 'Введите номер лицевого счёта и нажмите звёздочку')

В случае, если идёт приём показаний голосом ([IsVoice] = true), произносится: «Назовите номер лицевого счёта». Иначе: «Введите номер лицевого счёта и нажмите звёздочку».

После произнесения сообщения сценарий в течение 18 секунд ожидает произнесения номера лицевого счёта или нажатия клавиш на телефоне.

Если лицевой счёт не получен или данные по нему не найдены в базе данных, сценарий ещё два раза запрашивает у абонента лицевой счёт.

Поиск лицевого счёта в базе данных

Получение списка приборов учёта по лицевому счёту

Приём показаний по каждому прибору учёта из списка

Проверка полученных показаний

Запись принятых показаний в базу данных