Сравнение версий

Ключ

  • Эта строка добавлена.
  • Эта строка удалена.
  • Изменено форматирование.

...

Russian

На платформе TWIN существуют встроенные переменные, которые можно использовать в любом сценарии. Встроенные переменные не нужно объявлять. Вы можете сразу использовать их в своих сценариях. При указании переменных в текстах сценариев сценариях обязательно используйте фигурные скобки (например, чтобы добавить в сценарий переменную "сейчассегодня" используйте {nowсистемные.сегодня}).

Image Added

Подсказка

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

Например:

  • Правильные варианты: {Новая_переменная}, {Новая_Переменная}, {новаяПеременная}.
  • Неправильный вариант: {Новая.переменная}.

Системные переменные

В сценариях можно использовать следующие системные переменные:

{системные.сейчас} (имеет аналог: {now}) - возвращает текущие дату и время (например, 2019-11-22 04:06:58). Текущие дата и время определяются в тот момент, когда на основе сценария строится диалог с клиентом.

Подсказка

Для входящей телефонии и чатов данная переменная имеет аналог {now}. В исходящей телефонии аналог не работает.

Пример использования:

Клиент звонит в магазин.

Бот делает сообщение: Внимание, в течение этого месяца у нас проходит грандиозная распродажа! Цены снижены до 30%. Сегодня {системные.сейчас}. Торопитесь успеть!


{системные.сегодня} (имеет аналог: {today} - возвращает текущую дату без указания времени (например, 2019-11-22). Текущая дата определяется в тот момент, когда на основе сценария строится диалог с клиентом.

Подсказка

Для входящей телефонии и чатов данная переменная имеет аналог {today}. В исходящей телефонии аналог не работает.

Пример использования:

Клиент создает заказ и хочет узнать, когда он сможет его забрать.

Бот отвечает клиенту: заказ будет готов к получению сегодня {системные.сегодня}, начиная с 18.00.

Image Added


{системные.время} (имеет аналог:  {time} ) - возвращает текущее время без указания даты (например, 04:06:58). Текущее время определяется в тот момент, когда на основе сценария строится диалог с клиентом.

Подсказка

Для входящей телефонии и чатов данная переменная имеет аналог {time}. В исходящей телефонии аналог не работает.

Пример использования:

Клиент звонит в службу точного времени.

Бот отвечает клиенту: Тоное Точное время: {системные.время}


{системные.телефон} - возвращает номер телефона клиента, который указан в задании на обзвон для выполнения вызова.

Пример использования:

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

Бот отвечает клиенту: Уточнитеуточните, заказ оформлен на номер {системные.телефон}? , а также по По завершению разговора бот отправляет шаблонное смс с информацией о заказе на номер клиента:

Image RemovedImage Added

{системные.предыдущий} - возвращает номер сценария, из которого был выполнен переход в текущий сценарий. Переменная позволяет получать информацию, из какого сценария был выполнен переход.

Пример использования:

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


{системные.дозвон} - возвращает количество успешных дозвонов до кандидата в рамках задания на обзвон.

Пример использования:

Например, можно настроить правило перезвона через блок "Результат". Если количество успешных дозвонов до клиента составляет более 10, то такого клиента можно не беспокоить новыми вызовами.


{системные.запись} - возвращает ссылку на аудиозапись текущего диалога в телефонии.

Информация

На данный момент переменная {системные.запись} используется только в отчетах, сформированных для получения информации о заданиях на обзвон (Статистика → Отчеты → Адрес записи звонка). Формат файла записи: ".mp3".

Переменные детектора ({детектор.эмоций})

Детектор эмоций предназначен для определения эмоциональной окраски ответа клиента. Данная переменная доступна только для сценариев, которые используются в телефонии.

В системе существуют следующие переменные детектора эмоций: 

  • {negativ}- негативная эмоциональная окраска;
  • {positive}- позитивная эмоциональная окраска;
  • {neutral}- нейтральная эмоциональная окраска.

Пример использования:

В зависимости от эмоциональной окраски ответов клиента бот может развивать диалог или в одну или в другую сторону:

Информация

При решении 99% решаемых задач данная функция не используется. Определить негатив в диалоге с клиентом вы можете с помощью намерений, которые будут содержать в себе негативные слова (например, мат и/или брань). При помощи детектора эмоций вы можете распознавать эмоциональную окраску более мягких формулировок, когда, например, в трудной ситуации нужно сообщить клиенту какую-либо важную информацию (например, заказ был отменен). Старайтесь использовать детектор эмоций только в тех случаях, где это действительно необходимо и вы не можете определить эмоциональную окраску с помощью намерения. 

Переменные детектора пола ({детектор.пол})

Детектор пола предназначен для определения пола клиента по его голосу. Данная переменная доступна только для сценариев, которые используются в телефонии.

Информация

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

В системе существуют следующие переменные детектора пола: 

  • male - мужской;
  • female - женский;
  • unsure - система на смогла прийти к однозначному решению;
  • unknown - не удалось определить пол или определение пола  выключено/не поддерживается;

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

Пример использования:

Иллюстрация ниже демонстрирует сравнение пола абонента, который участвует в диалоге, с переменной пола мужского рода из реестра:

{переменная|падеж:имя_падежа} 

Склонение переменных для правильного произношение синтезом согласно падежу.

Пример: {m_0|падеж:родительный} - где m_0, например: Иван Иванович. И согласно сценарию "могу я услышать m_0 ?", задача использовать переменную в родительном падеже.

Поддерживаются все падежи:

именительный                      (кто? что?)  пример: -это кто? -Иван Иванович

родительный                        (кого? чего?)   пример: -нет кого? - Анны Андреевны или Ивана Ивановича

дательный                            (кому? чему?)      пример: чему вы рады? -Анне Андреевне и Ивану Ивановичу

винительный                        (кого? что?)   пример: кого/что вы видите? -Ивана Ивановича или Анну Андреевну

творительный                     (кем? чем?)  пример: кем восхищаетесь? -Иваном Ивановичем и Анной Андреевной

предложный                           (о ком? о чем?)  пример: о ком думаете? - об Иване Ивановиче и Анне Андреевне


Переменные значения которых не меняются и которые нельзя изменить в процессе диалога

{companyId} - строка, идентификатор компании которой принадлежит бот.
{botId} - строка, идентификатор бота.
{dialogId} - строка, идентификатор текущего диалога.
{dialog} - объект, автоматически, при вставке в строку, трансформируется в текст диалога.
{referer} - строка, URL с которого пришёл пользователь (используется для чатов).
{utcNow} - текущее дата и время в часовом поясе UTC+0.
{utcTime} - текущее время в часовом поясе UTC+0.
{utcToday} - текущая дата в часовом поясе UTC+0.

Информация о клиенте (конечный пользователь Twin, участник диалога)

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

{clientId} - uuid, внутренний идентификатор клиента в системе Twin.
{clientPhone} - строка, номер телефона клиента.
{clientEmail} - строка, адрес электронной почты клиента.
{clientName} - строка, имя клиента.
{clientNickname} - строка, псевдоним клиента.
{clientExternalId} - строка, внешний идентификатор клиента в системе, который может задавать при старте диалога.
{clientMetadata} - массив, любые данные о клиенте.


Данные, которые можно изменить только в процессе переключения со звонка на чат, либо наоборот

(Пока данный функционал не доступен в полном объеме, т.к. не запущен CIS. В данный момент можно использовать, например для определения в каком мессенджере ведется диалог):

{communicationType} - строка, тип коммуникации с клиентом. Допустимые значения: TEXT, VOICE.
{channelType} - строка, тип канала общения. Допустимые значения: WEB, MOBILE, MESSENGER.
{messenger} - строка, тип мессенджера. Допустимые значения: WHATSAPP, VIBER, TELEGRAM, VKONTAKTE, FACEBOOK, SKYPE, SLACK, YANDEX, ALICE, THREADS.


Данные, меняющиеся при каждом обращении к боту, автоматически

{percept} - строка, хранит фразу которую сказал пользователь и на которую в данный момент отвечает бот.
{clientLastAnswerTime} - целое число, время последней фразы клиента в секундах.
{botLastAnswerTime} - целое число, время последнего ответа бота в секундах.

Переменные будут пополняться в этой статье по мере их появления на нашей платформе

...