{
    "componentChunkName": "component---src-templates-doc-page-js",
    "path": "/docs/ru/telephony/switch_to_operator/",
    "result": {"data":{"site":{"siteMetadata":{"title":"Gatsby-doc-engine"}},"markdownRemark":{"id":"24d22c0b-d69d-53e6-b9b5-2630a25dea58","excerpt":"Перевод на оператора Для перевода звонка на оператора используйте  с типом . Синтаксис Параметры перевода на оператора для телефонного канала: Параметр Тип…","html":"<h1>Перевод на оператора</h1>\n<hr>\n<p>Для перевода звонка на оператора используйте <a href=\"/1.10.3/docs/ru/bot_answers/about_bot_answers\"><code class=\"language-text\">$response.replies</code></a> с типом <a href=\"/1.10.3/docs/ru/bot_answers/message_types#switch\"><code class=\"language-text\">switch</code></a>.</p>\n</br>\n<h3>Синтаксис</h3>\n<div class=\"gatsby-highlight\" data-language=\"js\"><pre class=\"language-js\"><code class=\"language-js\">$response<span class=\"token punctuation\">.</span>replies\r\n     <span class=\"token punctuation\">.</span><span class=\"token function\">push</span><span class=\"token punctuation\">(</span><span class=\"token punctuation\">{</span>\r\n        <span class=\"token literal-property property\">type</span><span class=\"token operator\">:</span> <span class=\"token string\">\"switch\"</span><span class=\"token punctuation\">,</span>\r\n        <span class=\"token literal-property property\">phoneNumber</span><span class=\"token operator\">:</span> <span class=\"token string\">\"01234567\"</span><span class=\"token punctuation\">,</span>                         <span class=\"token comment\">// номер телефона для перевода</span>\r\n        <span class=\"token literal-property property\">headers</span><span class=\"token operator\">:</span><span class=\"token punctuation\">{</span>                                        <span class=\"token comment\">// SIP заголовки</span>\r\n             <span class=\"token string-property property\">\"Remote-Party-ID\"</span><span class=\"token operator\">:</span> remotePartyId <span class=\"token punctuation\">,</span>\r\n             <span class=\"token literal-property property\">testheader</span><span class=\"token operator\">:</span><span class=\"token string\">\"header\"</span>\r\n             <span class=\"token punctuation\">}</span><span class=\"token punctuation\">,</span>\r\n        <span class=\"token literal-property property\">transferChannel</span> <span class=\"token operator\">:</span> <span class=\"token string\">\"237-test-237-VDQ-28334674\"</span><span class=\"token punctuation\">,</span>    <span class=\"token comment\">// botId</span>\r\n        <span class=\"token literal-property property\">continueCall</span><span class=\"token operator\">:</span> <span class=\"token boolean\">false</span><span class=\"token punctuation\">,</span>\r\n        <span class=\"token literal-property property\">continueRecording</span><span class=\"token operator\">:</span> <span class=\"token boolean\">false</span>\r\n        <span class=\"token punctuation\">}</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span></code></pre></div>\n</br>\n<p>Параметры перевода на оператора для телефонного канала:</p>\n<table>\n<thead>\n<tr>\n<th>Параметр</th>\n<th>Тип</th>\n<th>Описание</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code class=\"language-text\">phoneNumber</code></td>\n<td><code class=\"language-text\">string</code></td>\n<td>Номер телефона, на который будет переведен звонок.</td>\n</tr>\n<tr>\n<td><code class=\"language-text\">headers</code></td>\n<td><code class=\"language-text\">оbject</code></td>\n<td>При переводе на оператора для телефонного канала можно установить SIP заголовки, которые будут передаваться в <code class=\"language-text\">invite</code> сообщении на указанный номер. Данная возможность, как правило, используется для передачи <a href=\"https://wiki.sipnet.ru/index.php/Caller_ID\" target=\"_blank\" rel=\"noopener noreferrer\">АОН информации клиента</a>.</td>\n</tr>\n<tr>\n<td><code class=\"language-text\">transferChannel</code></td>\n<td><code class=\"language-text\">string</code></td>\n<td>Укажите в поле <code class=\"language-text\">botId</code> для <a href=\"/1.10.3/docs/ru/telephony/call_routing\">перевода вызова через SIP-транк, который относится к данному каналу</a>. При этом будут применены параметры подключенного SIP-транка.</td>\n</tr>\n<tr>\n<td><code class=\"language-text\">continueCall</code></td>\n<td><code class=\"language-text\">boolean</code></td>\n<td>При <code class=\"language-text\">true</code>, абонент будет возвращен к диалогу с ботом после разговора со оператором, а также, если оператор недоступен. </br> </br> По умолчанию <code class=\"language-text\">false</code>.</td>\n</tr>\n<tr>\n<td><code class=\"language-text\">continueRecording</code></td>\n<td><code class=\"language-text\">boolean</code></td>\n<td>При <code class=\"language-text\">true</code>, разговор продолжает записываться, в том числе с оператором и при повторном возвращении абонента в диалог с ботом. </br> </br> <a href=\"/1.10.3/docs/ru/telephony/call_detail\">Запись звонка будет доступна в логах диалогов</a>. </br> </br> По умолчанию <code class=\"language-text\">false</code>.</td>\n</tr>\n</tbody>\n</table>\n</br>\n<p class='warn'><a href=/1.10.3/docs/ru/bot_answers/message_types#switch  >Подробнее о переводе на оператора</a></p>\n</br>\n<h3>Статус перевода на оператора</h3>\n<p class='warn'>При помощи метода <code class=\"language-text\">$dialer.getTransferStatus()</code> вы можете отслеживать статус перевода абонента на оператора.</p>\n<p>Метод <code class=\"language-text\">$dialer.getTransferStatus()</code> возвращает объект с полями:</p>\n<ul>\n<li><code class=\"language-text\">status: \"SUCCESS\" | \"FAIL\"</code> — статус перевода на оператора.</li>\n<li><code class=\"language-text\">hangup: true | false</code> — при <code class=\"language-text\">true</code> абонент завершил звонок. При <code class=\"language-text\">false</code> абонент ещё на линии и возвращен в диалог с ботом, если <a href=\"#%D0%A1%D0%B8%D0%BD%D1%82%D0%B0%D0%BA%D1%81%D0%B8%D1%81\"><code class=\"language-text\">continueCall: true</code></a>.</li>\n<li><code class=\"language-text\">number</code> — номер телефона, на который переводился звонок.</li>\n</ul>\n<p>Например:</p>\n<div class=\"gatsby-highlight\" data-language=\"sc\"><pre class=\"language-sc\"><code class=\"language-sc\"><span class=\"token keyword\">theme:</span> /\r\n\r\n    <span class=\"token keyword\">state:</span> Start\r\n        <span class=\"token storageType\">q!:</span> *start\r\n        <span class=\"token variableParameter\">a:</span> Start new call\r\n\r\n    <span class=\"token keyword\">state:</span> SwitchStateContinue\r\n       <span class=\"token storageType\">q!:</span> перевод на оператора\r\n       <span class=\"token variableParameter\">script:</span>\r\n        $response.replies\r\n        .push({\r\n           \"type\":\"switch\",\r\n           \"phoneNumber\":\"12345\",\r\n           \"continueCall\":true,\r\n           \"continueRecording\":true\r\n            });\r\n\r\n    <span class=\"token keyword\">state:</span> TransferEvent\r\n        <span class=\"token storageType\">event:</span> transfer\r\n        <span class=\"token variableParameter\">script:</span>\r\n            var status = $dialer.getTransferStatus();\r\n            log(status);</code></pre></div>\n</br>\n<p>В лог будет добавлена запись формата:</p>\n<div class=\"gatsby-highlight\" data-language=\"text\"><pre class=\"language-text\"><code class=\"language-text\">17:14:40.459 [main] INFO  js - {\"status\":\"SUCCESS\",\"hangup\":false,\"number\":\"12345\"}\r\n17:14:40.482 [main] INFO  js - {\"status\":\"FAIL\",\"hangup\":true,\"number\":\"12345\"}</code></pre></div>\n</br>\n<h3>Оператор недоступен</h3>\n<p>При неуспешном переводе на оператора, например, номер для перевода занят, абонент может быть возвращен в диалог с ботом. Для этого укажите в <code class=\"language-text\">$response.replies</code> параметр <code class=\"language-text\">continueCall: true</code> и отслеживайте <code class=\"language-text\">event: transfer</code> в сценарии.</p>\n<p>Например:</p>\n<div class=\"gatsby-highlight\" data-language=\"sc\"><pre class=\"language-sc\"><code class=\"language-sc\"><span class=\"token keyword\">theme:</span> /\r\n\r\n    <span class=\"token keyword\">state:</span> Start\r\n        <span class=\"token storageType\">q!:</span> *start\r\n        <span class=\"token variableParameter\">a:</span> Start new call\r\n\r\n    <span class=\"token keyword\">state:</span> SwitchStateContinue\r\n       <span class=\"token storageType\">q!:</span> перевод на оператора\r\n       <span class=\"token variableParameter\">script:</span>\r\n        $response.replies\r\n        .push({\r\n           \"type\":\"switch\",\r\n           \"phoneNumber\":\"12345\",\r\n           \"continueCall\":true,\r\n           \"continueRecording\":true\r\n            });\r\n\r\n    <span class=\"token keyword\">state:</span> TransferEvent\r\n        <span class=\"token storageType\">event:</span> transfer\r\n        <span class=\"token variableParameter\">script:</span>\r\n            if ($dialer.getTransferStatus().status === 'FAIL') {\r\n                $reactions.answer(\"Оператор сейчас не может ответить на ваш вопрос. Мы обязательно свяжемся с вами позже\")\r\n            } else {\r\n                $reactions.answer(\"Спасибо, что связались с нами. Оцениите, пожалуйста, качество обслуживания\")\r\n            }</code></pre></div>\n<p>Обратите внимание, что абонент будет возвращен в стейт, где отслеживается событие <code class=\"language-text\">event: transfer</code>. Здесь вы можете добавить реплики или реакции бота.</p>\n</br>\n<h3>Отображение номера телефона при переводе на оператора</h3>\n<p>При переводе звонка на оператора можно настроить отображение фактического номера клиента, а не номера бота. Для этого необходимо создать телефонное подключение и настроить SIP-транк без регистрации и пароля:</p>\n<ul>\n<li>перейдите на вкладку <em>Настройка телефонии</em> в боковом меню > <em>Создать новое подключение</em>;</li>\n<li>в меню <em>Общие настройки > Пароль</em> оставьте поле пустым;</li>\n<li>в меню <em>Расширенные настройки > Требуется регистрация</em> переведите переключатель в неактивное положение;</li>\n<li>заполните остальные поля в соответствии с <a href=\"/1.10.3/docs/ru/telephony/telephony_setup#%D0%A1%D0%BE%D0%B7%D0%B4%D0%B0%D0%BD%D0%B8%D0%B5-%D0%B8-%D0%BD%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B9%D0%BA%D0%B0-%D0%BF%D0%BE%D0%B4%D0%BA%D0%BB%D1%8E%D1%87%D0%B5%D0%BD%D0%B8%D1%8F\">инструкцией</a>.</li>\n</ul>\n<p class='tip'>Обратите внимание, что SIP-транки провайдера Билайн не позволяют использовать настройки в таком виде. Поэтому отображение фактического номера клиента для них недоступно.</p>","frontmatter":{"title":"","description":null},"headings":[{"value":"Перевод на оператора"}]}},"pageContext":{"slug":"/docs/ru/telephony/switch_to_operator/","previous":{"fields":{"slug":"/docs/ru/telephony/telephone_channel/"},"frontmatter":{"title":"","description":null}},"next":{"fields":{"slug":"/docs/ru/telephony/statistics/"},"frontmatter":{"title":"","description":null}}}},
    "staticQueryHashes": ["1209419333"]}