Юздеск - система автоматизации работы с заявками
Функциональность интеграции
- создание карточек при входящих и исходящих звонках
- исходящие звонки по клику из Юздеск
- история звонков и прослушивание записей разговоров в Юздеск
Подключение и настройка
В Личном кабинете UIS войдите в раздел Тарифы и опции, разверните Все опции:
И подключите API «Базовые отраслевые решения»:
Чтобы UIS и Юздеск могли обмениваться данными, необходимо разрешить запросы к серверу UIS от любых IP-адресов и создать авторизационный ключ API.
Перейдите в раздел Аккаунт — Правила и настройки безопасности — вкладка API добавьте 0.0.0.0/0 в белый список:
0.0.0.0/0
Чтобы получить авторизационный ключ API, войдите в Управление пользователями и разрешите одному из пользователей (например, Администратору) доступ к API по ключу. Обязательно скопируйте и сохраните ключ — он показывается только один раз, при создании, и понадобится для дальнейшей настройки:
В аккаунте Юздеск войдите в раздел Каналы — Телефония:
Задайте произвольное название, в поле Телефония выберите из списка UIS и сохраните:
После сохранения вставьте в поле App Secret скопированный ранее в UIS ключ API:
Настройка сотрудников
Сотрудники не копируются автоматически из одного сервиса в другой. Это значит, что сотрудники должны быть созданы вручную и в личном кабинете UIS, и в сервисе Юздеск.
Когда сотрудники созданы, в Личном кабинете UIS перейдите в раздел Сотрудники и выберите из списка нужного сотрудника:
И скопируйте из адресной строки значение из параметра recordId:
Теперь войдите в Профиль этого же сотрудника в Юздеск и вставьте полученное значение в поле ID оператора и сохраните:
Повторите с каждым сотрудником, который будет работать со звонками.
Настройка уведомлений для передачи данных
Чтобы данные из UIS передавались в Юздеск, необходимо настроить четыре типа HTTP-уведомлений (вебхуков) о событиях.
При поступлении вебхука Юздеск авторизует его по специальному токену. Чтобы его получить, в аккаунте Юздеск войдите в раздел Каналы — UIS — Токены канала:
И скопируйте токен:
В Личном кабинете UIS войдите в раздел Уведомления и кликните Добавить:
Необходимо настроить четыре вида уведомлений:
1) Название уведомления: Входящий звонок на виртуальный номер
Тип события: Входящий звонок на виртуальный номер
Способ уведомления: HTTP
Метод: POST
URL: https://secure.usedesk.ru/telephony/uis/webhook/incoming_call_started/
В тело уведомления вставьте текст:
{
"ud_channel_token":"токен из пункта 9",
"app_id":{{app_id}},
"call_session_id":{{call_session_id}},
"call_source":{{call_source}},
"called_phone_number":{{called_phone_number}},
"calling_phone_number":{{calling_phone_number}},
"communication_id":{{communication_id}},
"communication_type":{{communication_type}},
"contact_full_name":{{contact_full_name}},
"contact_group_ids":{{contact_group_ids}},
"contact_id":{{contact_id}},
"contact_phone_number":{{contact_phone_number}},
"cpn_region_id":{{cpn_region_id}},
"cpn_region_name":{{cpn_region_name}},
"direction":{{direction}},
"external_id":{{external_id}},
"notification_mnemonic":{{notification_mnemonic}},
"notification_name":{{notification_name}},
"notification_time":{{notification_time}},
"notification_timestamp":{{notification_timestamp}},
"scenario_id":{{scenario_id}},
"scenario_name":{{scenario_name}},
"start_time":{{start_time}},
"tp_project":{{tp_project}},
"virtual_phone_number":{{virtual_phone_number}},
"visitor_country":{{visitor_country}}
}
2) Название уведомления: Исходящий звонок
Тип события: Исходящий звонок
Способ уведомления: HTTP
Метод: POST
URL: https://secure.usedesk.ru/telephony/uis/webhook/outgoing_call_started/
В тело уведомления вставьте текст:
{
"ud_channel_token":"токен из пункта 9",
"app_id":{{app_id}},
"call_session_id":{{call_session_id}},
"call_source":{{call_source}},
"called_phone_number":{{called_phone_number}},
"calling_phone_number":{{calling_phone_number}},
"communication_id":{{communication_id}},
"communication_type":{{communication_type}},
"contact_full_name":{{contact_full_name}},
"contact_group_ids":{{contact_group_ids}},
"contact_id":{{contact_id}},
"contact_phone_number":{{contact_phone_number}},
"cpn_region_id":{{cpn_region_id}},
"cpn_region_name":{{cpn_region_name}},
"direction":{{direction}},
"employee_full_name":{{employee_full_name}},
"employee_group_ids":{{employee_group_ids}},
"employee_id":{{employee_id}},
"employee_phone_number":{{employee_phone_number}},
"extension_phone_number":{{extension_phone_number}},
"external_id":{{external_id}},
"notification_mnemonic":{{notification_mnemonic}},
"notification_name":{{notification_name}},
"notification_time":{{notification_time}},
"notification_timestamp":{{notification_timestamp}},
"start_time":{{start_time}},
"tp_project":{{tp_project}},
"virtual_phone_number":{{virtual_phone_number}},
"visitor_country":{{visitor_country}}
}
3) Название уведомления: Начало разговора
Тип события: Начало разговора
Способ уведомления: HTTP
Метод: POST
URL: https://secure.usedesk.ru/telephony/uis/webhook/conversation_started/
В тело уведомления вставьте текст:
{
"ud_channel_token":"токен из пункта 9",
"answer_time":{{answer_time}},
"app_id":{{app_id}},
"call_session_id":{{call_session_id}},
"call_source":{{call_source}},
"called_phone_number":{{called_phone_number}},
"calling_phone_number":{{calling_phone_number}},
"communication_id":{{communication_id}},
"communication_type":{{communication_type}},
"contact_full_name":{{contact_full_name}},
"contact_group_ids":{{contact_group_ids}},
"contact_id":{{contact_id}},
"contact_phone_number":{{contact_phone_number}},
"cpn_region_id":{{cpn_region_id}},
"cpn_region_name":{{cpn_region_name}},
"direction":{{direction}},
"employee_full_name":{{employee_full_name}},
"employee_group_ids":{{employee_group_ids}},
"employee_id":{{employee_id}},
"employee_phone_number":{{employee_phone_number}},
"extension_phone_number":{{extension_phone_number}},
"external_id":{{external_id}},
"leg_ids":{{leg_ids}},
"notification_mnemonic":{{notification_mnemonic}},
"notification_name":{{notification_name}},
"notification_time":{{notification_time}},
"notification_timestamp":{{notification_timestamp}},
"scenario_id":{{scenario_id}},
"scenario_name":{{scenario_name}},
"start_time":{{start_time}},
"tp_project":{{tp_project}},
"virtual_phone_number":{{virtual_phone_number}},
"visitor_country":{{visitor_country}}
}
4) Название уведомления: Завершение звонка
Тип события: Завершение звонка
Способ уведомления: HTTP
Метод: POST
URL: https://secure.usedesk.ru/telephony/uis/webhook/call_finished/
В тело уведомления вставьте текст:
{
"ud_channel_token":"токен из пункта 9",
"app_id":{{app_id}},
"call_session_id":{{call_session_id}},
"call_source":{{call_source}},
"called_phone_number":{{called_phone_number}},
"calling_phone_number":{{calling_phone_number}},
"clean_talk_time_duration":{{clean_talk_time_duration}},
"communication_id":{{communication_id}},
"communication_type":{{communication_type}},
"connection_time":{{connection_time}},
"contact_full_name":{{contact_full_name}},
"contact_group_ids":{{contact_group_ids}},
"contact_id":{{contact_id}},
"contact_phone_number":{{contact_phone_number}},
"cpn_region_id":{{cpn_region_id}},
"cpn_region_name":{{cpn_region_name}},
"direction":{{direction}},
"employee_full_name":{{employee_full_name}},
"employee_full_names":{{employee_full_names}},
"employee_group_ids":{{employee_group_ids}},
"employee_id":{{employee_id}},
"employee_ids":{{employee_ids}},
"employee_phone_number":{{employee_phone_number}},
"extension_phone_number":{{extension_phone_number}},
"external_id":{{external_id}},
"finish_reason":{{finish_reason}},
"finish_time":{{finish_time}},
"first_answered_employee_full_name":{{first_answered_employee_full_name}},
"first_answered_employee_id":{{first_answered_employee_id}},
"first_talked_employee_full_name":{{first_talked_employee_full_name}},
"first_talked_employee_id":{{first_talked_employee_id}},
"group_ids":{{group_ids}},
"is_lost":{{is_lost}},
"is_transfer":{{is_transfer}},
"last_answered_employee_full_name":{{last_answered_employee_full_name}},
"last_answered_employee_id":{{last_answered_employee_id}},
"last_scenario_operation_id":{{last_scenario_operation_id}},
"last_scenario_operation_name":{{last_scenario_operation_name}},
"last_talked_employee_full_name":{{last_talked_employee_full_name}},
"last_talked_employee_id":{{last_talked_employee_id}},
"lost_reason":{{lost_reason}},
"noanswered_employee_full_names":{{noanswered_employee_full_names}},
"notification_mnemonic":{{notification_mnemonic}},
"notification_name":{{notification_name}},
"notification_time":{{notification_time}},
"notification_timestamp":{{notification_timestamp}},
"operator_rating":{{operator_rating}},
"postprocess_time_duration":{{postprocess_time_duration}},
"record_file_links":{{record_file_links}},
"scenario_id":{{scenario_id}},
"scenario_name":{{scenario_name}},
"scenario_operation_ids":{{scenario_operation_ids}},
"scenario_operation_names":{{scenario_operation_names}},
"start_time":{{start_time}},
"tag_ids":{{tag_ids}},
"tag_names":{{tag_names}},
"talk_time_duration":{{talk_time_duration}},
"talked_employee_full_names":{{talked_employee_full_names}},
"toc_group_ids":{{toc_group_ids}},
"total_time_duration":{{total_time_duration}},
"total_wait_time_duration":{{total_wait_time_duration}},
"tp_project":{{tp_project}},
"virtual_phone_number":{{virtual_phone_number}},
"visitor_country":{{visitor_country}},
"wait_time_duration":{{wait_time_duration}}
}
Настройка завершена.
Как пользоваться
Чтобы совершить исходящий звонок по клику, в Юздеск войдите в карточку клиента и кликните на номер телефона:
На ваше устройство поступит звонок, и когда вы ответите, начнется дозвон до клиента.
Чтобы детализацию и послушать запись разговора, откройте карточку клиента:
Кликните на интересующий звонок, и откроется детализация: