Глава 12

Автосекретарь

Я не отвечаю на телефонные звонки. У меня такое чувство, что каждый раз,

когда я это делаю, на другом конце провода кто-то есть.

– Фред Коуплз

Во многих УАТС часто используется система меню для автоматического ответа на входящие вызовы, которая позволяет вызывающим абонентам перенаправлять себя на различные добавочные номера и ресурсы в системе с помощью выбора меню. Эта система известна в телекоммуникационной отрасли как автосекретарь (АС). Автосекретарь обычно предоставляет следующие функции:

  • Перевод на добавочный номер
  • Перевод на голосовую почту
  • Перевод в очередь
  • Воспроизведение сообщения (например, «наш адрес…»).
  • Подключение к подменю (например, «для просмотра списка наших отделов …»)
  • Подключение к приемной
  • Повтор выбора

Для чего-либо еще, особенно если требуется внешняя интеграция, например, поиск в базе данных, обычно требуется интерактивный голосовой ответ (IVR).

Автосекретарь не является IVR

В opensource телекоммуникационном сообществе вы часто будете слышать термин IVR, используемый для описания автосекретаря. Однако в сфере телекоммуникаций IVR отличается от автосекретаря. По этой причине, когда вы разговариваете с кем-либо о каком-либо телекоммуникационном меню, вам следует убедиться, что вы говорите об одном и том же. Для специалиста в области телекоммуникаций – термин IVR подразумевает относительно комплексную и сложную в разработке (и последующе затратную), тогда как автосекретарь – простая и недорогая вещь, которая характерна для большинства АТС.

В этой главе мы поговорим о создании автосекретаря. IVR мы обсудим в Главе 17.1

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

Самая распространенная ошибка, которую допускают новички при разработке АС – излишняя сложность. В то время как при создании многоуровневого АС может быть много радости и чувства выполненного долга с десятками отличных опций и кучей действительно интересных подсказок, ваши абоненты имеют другую повестку дня. Причина, по которой люди звонят по телефону, в первую очередь потому, что они хотят с кем-то поговорить. В то время как люди привыкли к реальности автосекретарей (в некоторых случаях они могут ускорить процесс), по большей части люди предпочитают разговаривать с кем-то живым. Это означает, что есть два основных правила, которых должен придерживаться каждый автосекретарь:

  1. Не усложняйте.
  2. Убедитесь, что вы всегда включаете обработчик для людей, которые собираются нажать 0 каждый раз, когда они слышат автосекретаря. Если вы не хотите иметь опцию 0, имейте в виду, что многие люди будут оскорблены этим, и повесят трубку и не перезвонят. В бизнесе это вообще плохо.

Прежде чем вы начнете создавать свой АС, разумно его спроектировать. Вам нужно будет определить поток вызовов, и нужно будет указать подсказки, которые будут воспроизводиться на каждом шаге. Для этого могут быть полезны программные средства построения диаграмм, но не нужно фантазировать. Таблица 15-1 предоставляет хороший шаблон для базового автосекретаря, который будет делать то, что вам нужно.

Таблица 15-1. Базовый автосекретарь

Шаг или выбор Образец приглашения Примечание Имя файла
Приветствие-рабочее время Спасибо, что позвонили в компанию АБВ. Дневное приветствие. Воспроизводится сразу после ответа системы на вызов. daygreeting.wav
Приветствие-нерабочее время Спасибо, что позвонили в компанию ABC. Наш офис сейчас закрыт. Ночное приветствие. Как и выше, но играет в нерабочее время. nightgreeting.wav
Главное меню Если вы знаете добавочный номер человека, с которым хотите связаться, пожалуйста, введите его сейчас. Для отдела продаж, пожалуйста, нажмите кнопку 1; для отдела поддержки, нажмите 2; для перехода в каталог нашей компании, нажмите #; для информации о нашем адресе и факсе, пожалуйста, нажмите 3. Для повтора меню – нажмите клавишу 9, или вы можете остаться на линии или нажмите 0 для соединения с оператором. Приглашение главного меню. Играет немедленно после приветствия. Для вызывающего абонента, приветствие и главное меню звучат как одно приглашение, однако в системе полезно сохранить эти приглашения отдельно. mainmenu.wav
1 Пожалуйста ожидайте пока мы соединяем ваш звонок. Перевод в очередь продаж. holdwhileweconnect.wav
2 Пожалуйста ожидайте пока мы соединяем ваш звонок. Перевод в очередь поддержки. holdwhileweconnect.wav
# н/а Запуск приложения Directory() н/а
3 Наш адрес [адрес]. Наш номер факса [номер факса]., и тд. Воспроизведение записи, содержащей адрес и информацию о факсе. Возврат абонента в меню подсказок по окончанию. faxandaddress.wav
0 Перевод на секретаря. Пожалуйста, ожидайте. Перевод на ресепшен/оператору. transfertoreception.wav
9 н/а Повтор. Воспроизвести главное меню (но не приветствие.) н/а
t н/а Таймаут. Если вызывающий не выбрал ничего, рассматривать вызов, как если бы абонент набрал 0 (или в некоторых случаях, повторить запрос).
i Вы сделали неверный выбор. Пожалуйста, попробуйте еще раз. Абонент нажал недопустимую цифру: воспроизвести главное меню (но не приветствие). invalid.wav
_XXXa н/а Перевод вызова на добавочный номер. holdwhileweconnect.wav

a Это совпадение с шаблоном должно соответствовать вашему диапазону номеров.

Давайте рассмотрим различные компоненты этого шаблона. Затем мы покажем вам код набора номера, необходимый для его реализации, а также как создать для него подсказки.

Приветствие

Первое, что слышит звонящий, – это два приглашения.

Первая подсказка – это приветствие. Единственное, что должно сделать приветствие, это поприветствовать звонящего. Примерами приветствия могут быть «Спасибо, что позвонили Брайанту, Ван Меггелену и партнерам», «Добро пожаловать в Школу мудрости и дизайна футболок Лейфа» или «Вы позвонили в офис адвокатов Дьюи, Читума и Хоу». Вот и все – выбор для звонящего будет позднее. Это позволяет записывать различные приветствия без необходимости записывать новое меню. Например, в течение нескольких недель в году вы можете пожелать, чтобы в вашем приветствии говорилось «Привет сезона» или что-то в этом роде, но ваше меню менять будет не нужно. Кроме того, если вы хотите воспроизвести другую запись в нерабочее время («Спасибо, что позвонили. Наш офис закрыт»), вы можете использовать разные приветствия, но суть меню остается прежней. Наконец, если вы хотите иметь возможность возвращать вызывающих абонентов в меню из другой части системы, вы не захотите, чтобы они снова услышали приветствие.

Главное меню

Подсказка главного меню – это место, где вы сообщаете своим абонентам о доступных для них вариантах выбора. Вы должны проговаривать их как можно быстрее (без спешки).2 Когда вы записываете варианты выбора, всегда сообщайте пользователям о действиях, которые будут предприняты, прежде чем дать им цифровыеопции для выполнения этого действия. Поэтому не говорите «нажмите 1 для отдела продаж», а говорите «для отдела продаж, нажмите 1». Причина в том, что большинство людей не будут обращать должное внимание на подсказку, пока не услышат интересующий их выбор. Как только они услышат свой выбор, вы будете иметь их полное внимание и можете сообщить какую кнопку нажать, чтобы направить их туда, куда они хотят.

Другой момент, который следует учитывать – это порядок размещения выбора. Например, типичный бизнес захочет, чтобы продажи были первым пунктом меню, и большинство абонентов ожидают этого. Важно думать о своих клиентах. Например, большинство людей не будут интересоваться адресом и факсом, поэтому не делайте его первым пунктом.3 Подумайте о том, чтобы как можно быстрее доставить абонентов в назначенные места при проектировании выбора. Безжалостно вырезайте все, что не является абсолютно необходимым.

Выбор 1

Опция 1 в нашем примере будет простым трансфером. Обычно это относится к ресурсу, расположенному в другом контексте и он, как правило, имеет внутренний добавочный номер, чтобы внутренние пользователи также могли передавать ему вызовы. В этом примере мы собираемся использовать эту опцию для отправки абонентов в очередь под названием sales, которая была создана в Главе 13.

Выбор 2

Опция 2 будет технически идентичнан варианту 1. Только пункт назначения будет другим. Этот выбор переведет звонящих в очередь support.

Выбор #

Хорошо иметь опцию для каталога как можно ближе к началу записи. Многие люди будут использовать каталог, если они знают что он там есть, но не желают слушать всё меню, чтобы узнать о нём. Нетерпеливые люди будут нажимать 0, поэтому чем раньше вы расскажете им о каталоге, тем выше вероятность того, что они будут им пользоваться, и тем самым уменьшите нагрузку на вашего регистратора/секретаря.

Выбор 3

Если у вас есть опция, которая ничего не делает, кроме воспроизведения записи для вызывающего абонента (например, адрес и информация о факсе), вы можете оставить весь код для этого в том же контексте, что и меню, и просто вернуть вызывающего абонента в подсказку главного меню в конце записи. В общем, такие варианты не так полезны, как хотелось бы думать, поэтому в большинстве случаев вам, вероятно, захочется об этом забыть.

Выбор 9

Очень важно дать звонящему возможность услышать пункты меню снова. Многие люди не будут обращать внимания на все меню, и если вы не дадите им возможность снова услышать возможный выбор, они, скорее всего, нажмут 0.

Обратите внимание, что вам не нужно воспроизводить приветствие снова, только подсказку главного меню.

Выбор 0

Как указывалось ранее – нравится вам это или нет, это выбор, который предпочтут многие (возможно, большинство) ваших абонентов. Если вы действительно не хотите, чтобы кто-то обрабатывал эти вызовы, вы можете отправить этот добавочный номер в почтовый ящик, но мы не рекомендуем это. Если вы владеете бизнесом, многие из ваших абонентов будут вашими клиентами. Вы хотите, чтобы им было легко связаться с вами. Доверьтесь нам.

Тайм-аут

Многие люди звонят по номеру и не обращают внимание на происходящее. Они знают, что если они просто будут ждать на линии, то в конечном итоге будут переведены на оператора. Или, возможно, они в машинах, и, на самом деле, не могут нажимать кнопки на своих телефонах. В любом случае, сделайте им одолжение. Если они не делают никакого выбора, не беспокойте их и не заставляйте их делать его. Подключите их к оператору.

Неверный (Invalid)

Люди делают ошибки. Это нормально. Неверный обработчик сообщит им, что пункт, который они выбрали, не является допустимым параметром, и вернет в подсказку главного меню, чтобы они могли повторить попытку. Обратите внимание – вы не должны воспроизводить приветствие снова, только подсказку главного меню.

Набор добавочного номера

Если кто-то звонит в вашу систему и знает к какому добавочному номеру он хочет обратиться, ваш автосекретарь должен иметь код для обработки этого.

Хотя Asterisk может обрабатывать наложения между вариантами меню и добавочными номерами (т.е. у вас может быть пункт меню 1 и добавочные номера от 100 до 199), обычно лучше избегать этого перекрытия. В противном случае диалплану всегда придется выжидать межцифровой таймаут всякий раз, когда кто-то нажимает 1, потому что он не будет знать, планируют ли они набрать добавочный номер 123. Тайм-аут между цифрами – это задержка, которую система допускает между цифрами, прежде чем она предположит что введено все число. Этот таймер позволяет вызывающим абонентам иметь достаточно времени для набора многозначного добавочного номера, но также вызывает задержку в обработке однозначных вводов.

Создание вашего автосекретаря

После того, как вы спроектировали автосекретаря, вам нужно сделать три вещи, чтобы заставить его работать должным образом:

  • Записать подсказки.
  • Построить диалплан для меню.
  • Направить входящие каналы в контекст автосекретаря.

Начнем с разговоров о записях.

Запись подсказок

Запись подсказок для телефонной системы является критически важной задачей. Это то, что ваши абоненты услышат, когда будут взаимодействовать с вашей системой и качество и профессионализм этих подсказок отразится на вашей организации.

Asterisk очень гибок в этом отношении и может работать со многими различными аудиоформатами. Мы обнаружили, что в целом наиболее выгодным форматом является WAV. Файлы, сохраненные в этом формате, могут быть разных типов, но с Asterisk будет работать только один тип файлов WAV: файлы должны быть закодированы в 16-битном, 8000 Гц, монофоническом формате.

Рекомендуемый формат файла подсказки

Рекомендуемый нами формат файла WAV полезен для системных подсказок, поскольку его можно легко конвертировать в любой другой, который ваши телефоны могут использовать без искажений, и практически любой компьютер может воспроизводить его без какого-либо специального программного обеспечения. Таким образом, не только Asterisk может легко обработать файл, но также легко работать с ним на ПК (что может быть полезно). Asterisk может обрабатывать и другие форматы файлов и в некоторых случаях они могут быть более подходящими для ваших потребностей, но в целом мы считаем, что с 16-битными 8 кГц файлами WAV проще всего работать и, в большинстве случаев, имеют лучшее возможное качество.

По сути, есть два способа получить подсказки в систему. Одним из них является запись звуковых файлов в студии или на ПК, а затем перемещение этих файлов в систему. Второй способ заключается в записи подсказок непосредственно в систему с помощью телефонного аппарата. Мы предпочитаем второй метод.

Наш совет таков: не зацикливайтесь на сложностях записи звука через ПК или в студии.4 Это вообще необязательно. Телефонный аппарат будет делать записи превосходного качества, и причины просты: микрофон и электроника в телефоне тщательно разработаны для захвата человеческого голоса в формате, который идеально подходит для передачи по телефонным сетям, и, следовательно, телефонный аппарат также идеально подходит для подсказок. Устройство будет захватывать звук в правильном формате, отфильтровывать фоновые шумы и нормализовать уровень децибел.

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

Использование диалплана для создания записей

Простейшим способом записи подсказок является использование приложения Record(). Например:

[UserServices]

exten => 500,1,Playback(vm-intro)

same => n,Record(daygreeting.wav)

same => n,Wait(2)

same => n,Playback(daygreeting)

same => n,Hangup

exten => 501,1,Playback(vm-intro)

same => n,Record(mainmenu.wav)

same => … etc … (создайте код диалплана для каждого приглашения,

которое необходимо записать)

Для использования в этом контексте вам нужно будет включить его в контекст, в котором ваши варианты наборов входят в диалплан. Итак, в вашем контексте [LocalSets] вы должны добавить строку include => UserServices. В продакшене вам, вероятно, понадобится пароль, чтобы не каждый мог записывать подсказки.

Этот добавочный номер воспроизводит подсказку, издает звуковой сигнал, делает запись и воспроизводит эту запись.5 Примечательно, что приложение Record() принимает в качестве аргумента все имя файла, а Playback() исключает расширение типа файла (.wav, .gsm и т.д.). Это связано с тем, что приложение Record() должно знать, в каком формате должна быть сделана запись, а Playback() – нет. Вместо этого, Playback() автоматчески выбирает лучший доступный формат аудио, основанный на используемом кодеке вашего телефона и форматов, доступных в папке sounds (например, если у вас есть файлы daygreeting.wav и daygreeting.gsm в вашей папке sounds, Playback(daygreeting) будет выбирать тот, который требует наименьшую нагрузку ЦП для воспроизведения звонящему).

Вам, вероятно, понадобится отдельный добавочный номер для записи каждого из приглашений, возможно, скрытый от ваших обычных внутренних номеров, чтобы избежать стирания ваших текущих подсказок меню. Если количество ваших запросов велико, повторять этот номер с небольшими изменениями для каждого будет утомительно, но есть способы обойти это. Мы покажем вам, как сделать вашу оперативную запись более разумной в Главе 17, но пока метод, описанный выше, будет отвечать нашим непосредственным потребностям.

Диалплан

Вот код, необходимый для создания автосекретаря, который мы разработали ранее. Мы часто будем использовать пустые строки перед метками, чтобы облегчить чтение диалплана, но учтите, что наличие пустой строки не означает, что имеется другой номер:

[main_menu]

exten => s,1,Verbose(1, Caller ${CALLERID(all)} has entered the auto attendant)

same => n,Answer()

;устанавливаем таймер между набором цифр

same => n,Set(TIMEOUT(digit)=2)

; ожидание в 1 секунду до установки аудио

same => n,Wait(1)

; Если Пон-Пятн 9-17 переходим на метку daygreeting

same => n,GotoIfTime(9:00-17:00,mon-fri,*,*?daygreeting:afterhoursgreeting)

; ПРИВЕТСТВИЕ НЕРАБОЧЕГО ВРЕМЕНИ

same => n(afterhoursgreeting),Background(nightgreeting)

same => n,Goto(menuprompt)

; ДНЕВНОЕ ПРИВЕТСТВИЕ

same => n(daygreeting),Background(daygreeting)

same => n,Goto(menuprompt)

; ПРИВЕТСТВИЕ ГЛАВНОГО МЕНЮ

same => n(menuprompt),Background(mainmenu)

same => n,WaitExten(4) ; больше 4 секунд – уже слишком много

same => n,Goto(0,1) ; Если абонент нажал ‘0’

exten => 1,1,Verbose(1, Caller ${CALLERID(all)} has entered the sales queue)

same => n,Goto(Queues,7002,1) ; очередь sales – см. Главу 13

exten => 2,1,Verbose(1, Caller ${CALLERID(all)} has entered the service queue)

same => n,Goto(Queues,7001,1) ; очередь service – см Главу 13

exten => 3,1,Verbose(1, Caller ${CALLERID(all)} has requested address and fax

info)

same => n,Background(faxandaddress) ; Инф-я – адрес и факс

same => n,Goto(s,menuprompt) ; Вернуть абонента в главное меню

exten => #,1,Verbose(1, Caller ${CALLERID(all)} is entering the directory)

same => n,Directory(default) ; Направить абонента в каталог.

; Используйте контекст InternalSets для вызова

exten => 0,1,Verbose(1, Caller ${CALLERID(all)} is calling the operator)

same => n,Dial(SIP/operator) ; Operator – номер/очередь

exten => i,1,Verbose(1, Caller ${CALLERID(all)} has entered an invalid

selection)

same => n,Playback(invalid)

same => n,Goto(s,menuprompt)

exten => t,1,Verbose(1, Caller ${CALLERID(all)} has timed out)

same => n,Goto(0,1)

; Вы захотите иметь соответствие шаблону для различных номеров, которые

; позволите набирать внешним абонентам

; НО ТОЛЬКО НЕ ВКЛЮЧАЙТЕ КОНТЕКСТ LOCALSETS ИЛИ ВНЕШНИЕ АБОНЕНТЫ СМОГУТ

; СОВЕРШАТЬ ВЫЗОВЫ ИЗ ВАШЕЙ СИСТЕМЫ, ЧТО БЫ ВЫ ЗДЕСЬ НИ ДЕЛАЛИ, ТЩАТЕЛЬНО

; ПРОТЕСТИРУЙТЕ ЕГО, ЧТОБЫ УБЕДИТЬСЯ, ЧТО ВНЕШНИЕ АБОНЕНТЫ НЕ СМОГУТ НИЧЕГО

; ДЕЛАТЬ, КРОМЕ НАБОРА ВНУТРЕННИХ НОМЕРОВ

exten => _1XX,1,Verbose(1,Call to an extension starting with ‘1’)

same => n,Goto(InternalSets,${EXTEN},1)

Доставка входящих вызовов

Любой вызов в систему будет входить в диалплан в контексте, определенном для любого канала, на который поступил вызов. Во многих случаях это будет контекст с именем incoming или from-pstn или что-то подобное. Звонки будут поступать либо с добавочным номером (как в случае с DID) или без него (как в случае с традиционной аналоговой линией).

Независимо от названия контекста и от имени внутреннего номера, вы будете отправлять каждый входящий вызов в меню. Вот несколько примеров:

[from-pstn] ; для аналоговой линии context=from-pstn

; (обычно канал DAHDI)

exten => s,1,Goto(main_menu,s,1)

[incoming] ; DID, входящий в канал с context=incoming

; (PRI, SIP или IAX)

exten => 4169671111,1,Goto(main_menu,s,1)

В зависимости от того, как вы конфигурируете свои входящие каналы, вы, как правило, используете приложение Goto() если хотите отправлять вызов автосекретарю. Это гораздо лучше чем использование автосекретаря во входящем контексте.

IVR

Мы рассмотрим Интерактивное голосовое меню (IVR) более подробно в Главе 17, но прежде чем мы это сделаем, поговорим о том, что важно для любого IVR. Интеграция базы данных является предметом следующей главы.

Заключение

Автосекретарь может предоставить очень полезную услугу абонентам. Однако, если он не спроектирован и не реализован должным образом, он также может стать барьером для ваших абонентов, который может их отпугнуть. Потратьте время, чтобы тщательно спланировать вашего автосекретаря, и сделать его простым.

1Следует отметить, что Asterisk-отличный инструмент для создания IVR. Это неплохо для создания автосекретаря.

2При необходимости, вы можете использовать программу редактирования аудио, такую как Audacity, чтобы удалить тишину и даже немного ускорить запись.

3 На самом деле, мы обычно не рекомендуем это в AС, потому что это добавляется к тому, что абонент будет слышать, и большинство людей отправятся на веб-сайт для получения такого рода информации.

4Если вы не являетесь экспертом в этих областях, в таком случае пойдите на это!

5Приглашение vm-intro неидеально (оно просит вас оставить сообщение), но оно достаточно близко для наших целей. По крайней мере, инструкции по использованию верны: нажмите #, чтобы завершить запись. После того, как вы освоили запись приглашений, вы можете вернуться назад, записать настраиваемое приглашение и изменить приоритет 1, чтобы отразить более подходящие инструкции для записи собственных приглашений.

Остались вопросы?

Я - Першин Артём, менеджер компании Voxlink. Хотите уточнить детали или готовы оставить заявку? Укажите номер телефона, я перезвоню в течение 3-х секунд.

VoIP оборудование

ближайшие курсы

ближайшие Вебинары

ONLINE

Why Choose HUGE?

Unlimited pre-designed elements

Each and every design element is designed for retina ready display on all kind of devices

User friendly interface and design

Each and every design element is designed for retina ready display on all kind of devices

100% editable layered PSD files

Each and every design element is designed for retina ready display on all kind of devices

Created using shape layers

Each and every design element is designed for retina ready display on all kind of devices