Форма обратной связи на сайте
- Приложение «Форма на сайт»
- Сценарий использования формы обратной связи на сайте
- Настройка источников получения заявок
- Настройка виджета обратной связи
- Техническое описание используемых реквизитов виджета
- Получение лидов через почтовое сообщение (email)
- Внешняя обработка (свой API)
С общим описанием блока сквозной аналитики можно ознакомиться в статье Сквозная аналитика.
Приложение «Форма на сайт»
Для подключения приложения «Форма на сайт» необходимо открыть окно «Приложения для 1С:CRM» в разделе «Главное» и выбрать приложение «Форма на сайт»:
Важно! Данное приложение доступно только при наличие активного действующего договора «1С:КП Отраслевой».
Приложение «Форма на сайт» загружает заявки (лиды), используя инструменты, которые поставляются бесплатно с решением 1С:CRM:
- Разбор поступающих от сайта входящих электронных писем по заданному шаблону и создание по ним документов «Заявка» в 1С:CRM.
- Размещение формы на сайт (виджета) и создание заявок в 1С:CRM по заполненной посетителем сайта информации с заполнением источника откуда пришел клиент на сайт.
- Доработка загрузки заявок через внешнюю обработку.
- Наполнение «воронки продаж» заявками с приземлением на рабочее место менеджера «Мои продажи» в колонку «Обращения».
Сценарий использования формы обратной связи на сайте
После загрузки страницы сайта, в нижнем правом углу появляется синяя кнопка открытия виджета.
Кнопка открытия виджета на сайте после встраивания
При клике на кнопку открывается форма виджета и из 1С:CRM запрашиваются настроенные поля по GUID виджета. Пока выполняется запрос, пользователю показывается анимация загрузки. В выбранной системе аналитики (например, Yandex) срабатывает цель «открыли форму»:
Анимация в случае задержки получения данных со стороны 1С:CRM
После успешного получения полей из 1С:CRM, они отображаются в виджете:
Пример открытия формы виджета
При заполнении формы подсвечиваются обязательные к заполнению поля выбранного источника получения лидов в 1С:CRM. В выбранной системе аналитики (например, Yandex) срабатывает цель «Начали заполнять форму»:
Цель «Начали заполнять форму»
После отправки данных в 1С:CRM, пользователю показывается индикатор ожидания.
Получение подтверждения получения заявки пользователю
После получения ответа от 1С:CRM пользователю показывается номер созданной им заявки. Если в течение дня уже была оставлена заявка с таким же телефоном и/или email, обновляются поля имеющейся заявки.
В выбранной системе аналитики (например, Yandex) срабатывает цель «Успешно отправлена».
Срабатывание цели «Успешное отправлена»
Если произошла ошибка при отправке заявки (пропал интернет, 1С:CRM было недоступно), в выбранной системе аналитики (например, Yandex) срабатывает цель «Ошибка»:
Срабатывание цели «Ошибки»
Настройка источников получения заявок
Для получения заявок необходимо опубликовать http-сервис CRM_LeadsExchange. Настройка http-сервиса не требует привлечения специалиста, но возможна только на ПК с установленным и настроенным веб-сервером. Подробные описания доступны по ссылкам «Установка веб‑сервера» и «Публикация http‑сервиса CRM_LeadsExchange».
Важно! Сайт и База 1С должны работать по одинаковому протоколу (или оба по http или оба по https).
Для корректного взаимодействия виджета обратной связи и веб-сервера, на котором опубликован http-сервис, необходимо выполнить дополнительные настройки.
Для веб-сервера Apache потребуется отредактировать конфигурационный файл httpd.conf. Разрешите загрузку следующих модулей, убрав символ комментария, расположенный в начале строки:
LoadModule rewrite_module modules/mod_rewrite.so
LoadModule headers_module modules/mod_headers.so
Найдите в файле секцию публикации информационной базы и добавьте следующие строки:
Options +FollowSymLinks
Header always set Access-Control-Allow-Origin "*"
Header always set Access-Control-Allow-Methods "POST, GET, OPTIONS, DELETE, PUT"
Header always set Access-Control-Max-Age "1000"
Header always set Access-Control-Allow-Headers "x-requested-with, Content-Type, origin, authorization, accept, client-security-token"
RewriteEngine On
RewriteCond %{REQUEST_METHOD} OPTIONS
RewriteRule ^(.*)$ $1 [R=200,L]
После внесений изменений секция публикации информационной базы должна выглядеть следующим образом:
Редактирование конфигурационного файла Apache
Сохраните файлы и перезапустите службу веб-сервера Apache.
Для веб-сервера IIS необходимо установить расширение CORS для обхода ограничений политики безопасности браузера при выполнении кода виджета, размещаемого на одном домене и http-сервиса «1С», размещенного на другом домене. Скачать расширение CORS и получить подробную информацию можно по следующей ссылке:
https://www.iis.net/downloads/microsoft/iis-cors-module
Так же необходимо установить модуль URL Rewrite для переопределения URL по произвольным правилам. Получить подробную информацию можно по следующей ссылке:
https://learn.microsoft.com/ru-ru/iis/extensions/url-rewrite-module/using-the-url-rewrite-module
После установки дополнений потребуется внести изменения в конфигурационный файл web.config веб-сервера IIS. Изменения (выделены жирным шрифтом) вносятся после секции </handlers>. Пример конфигурационного файла:
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<handlers>
<remove name="1C Web-service Extension" />
<add name="1C Web-service Extension" path="*" verb="*" modules="IsapiModule" scriptProcessor="C:Program Files1cv88.3.13.1694binwsisapi.dll" resourceType="Unspecified" requireAccess="None" preCondition="bitness64" />
</handlers>
<cors enabled="true">
<add origin="*" maxAge="1000">
<allowMethods>
<add method="GET" />
<add method="HEAD" />
<add method="POST" />
<add method="OPTIONS" />
<add method="PUT" />
<add method="DELETE" />
</allowMethods>
<exposeHeaders>
<add header="x-requested-with" />
<add header="Content-Type" />
<add header="origin" />
<add header="authorization" />
<add header="accept" />
<add header="client-security-token" />
</exposeHeaders>
</add>
</cors>
<rewrite>
<outboundRules>
<rule name="Set Access-Control-Allow-Methods for OPTIONS response" preCondition="OPTIONS" patternSyntax="Wildcard">
<match serverVariable="RESPONSE_Access-Control-Allow-Methods" pattern="*" negate="false" />
<action type="Rewrite" value="POST" />
</rule>
<rule name="Set Access-Control-Allow-Headers for OPTIONS response" preCondition="OPTIONS" patternSyntax="Wildcard">
<match serverVariable="RESPONSE_Access-Control-Allow-Headers" pattern="*" negate="false" />
<action type="Rewrite" value="Origin, X-Requested-With, Content-Name, Content-Type, Accept" />
</rule>
<rule name="Set Access-Control-Allow-Origin for OPTIONS response" preCondition="OPTIONS" patternSyntax="Wildcard">
<match serverVariable="RESPONSE_Access-Control-Allow-Origin" pattern="*" negate="false" />
<action type="Rewrite" value="*" />
</rule>
<rule name="Set Access-Control-Max-Age for OPTIONS response" preCondition="OPTIONS" patternSyntax="Wildcard">
<match serverVariable="RESPONSE_Access-Control-Max-Age" pattern="*" negate="false" />
<action type="Rewrite" value="3600" />
</rule>
<rule name="Set X-Content-Type-Options for OPTIONS response" preCondition="OPTIONS" patternSyntax="Wildcard">
<match serverVariable="RESPONSE_X-Content-Type-Options" pattern="*" negate="false" />
<action type="Rewrite" value="nosniff" />
</rule>
<preConditions>
<preCondition name="OPTIONS">
<add input="{REQUEST_METHOD}" pattern="OPTIONS" />
</preCondition>
</preConditions>
</outboundRules>
<rules>
<rule name="OPTIONS" patternSyntax="Wildcard" stopProcessing="true">
<match url="*" />
<conditions logicalGrouping="MatchAny">
<add input="{REQUEST_METHOD}" pattern="OPTIONS" />
</conditions>
<action type="CustomResponse" statusCode="200" subStatusCode="0" statusReason="OK" statusDescription="OK" />
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>
Сохраните файл и перезапустите службу веб-сервера IIS.
Настройка виджета обратной связи
«Виджет обратной связи» используется для размещения на сайте организации формы обратной связи. Отображаемые поля у виджета настраиваются из решения 1С:CRM. При этом на одном сайте может быть настроено более одного виджета с разными отображаемыми полями.
Результатом работы виджета является:
- Генерация заявки в решении 1C:CRM с заполненными данными от лида.
- Автоматический разбор и передача в решение 1C:CRM информации из utm_метки, по которой пришел лид, а именно:
- source;
- medium;
- сайт;
- рекламная кампания;
- цель (целевое действие).
Подключение виджета на сайт начинается из решения 1С:CRM. На рабочем месте «Сквозная аналитика» в 1C:CRM необходимо создать новый источник получения лидов со сценарием «Виджет обратной связи»:
Создание источника лидов «Виджет обратной связи»
При настройке виджета обратной связи доступны следующие настройки:
- Сценарий источника получения лидов. Вы можете выбрать один из представленных сценариев для получения заявок и телефонных звонков с разных сервисов.
- Настройка расписания по своему усмотрению, чтобы не потерять заявки с ваших источников. Виджет обратной связи работает в режиме реального времени.
- Назначение ответственного пользователя за обработку заявок или роль (например: менеджеры).
- Идентификатор — используется для виджета обратной связи. Заявки будут привязаны к конкретному источнику.
- Маркетинговые мероприятия используются в том случае, если с сервиса не приходит информация о канале и источнике рекламы (utm-метка).
- Настройка виджета обратной связи: вы можете добавить свои поля либо изменить их порядок отображения в виджете. В правом окне вы можете увидеть примерное отображение виджета.
Далее следует раскрыть группу «Сервис виджета» и указать следующие поля:
- источник получения аналитики;
- счетчик;
- адрес публикации базы 1С:CRM.
После завершения настройки пользователю предоставляется сгенерированный код для вставки на сайте организации (на каждой странице, либо на конкретной), например:
<script id="widgetCrm" src="https://form.1crm.ru/widget.js"
data-token="1234"
data-source="a6bbd1da-1c5a-48b1-b8c3-495a9aa74e6f"
data-url="http://test.ru:8080/sfpCRM3"
data-metrica="12345678"
data-analitics="UA-12345678-1">
</script>
После вставки кода в страницу (шапку или подвал) сайта, пользователю достаточно один раз заполнить появившийся виджет тем самым проверив его работу.
При сохранении источника лидов в решении 1С:CRM автоматически будет выполнена регистрация целей (действий пользователя) в выбранной системе метрики (Yandex или Google) для каждого размещенного виджета по маске 1crm_form_[data-metrica%2Bdata-source]_action:
- 1crm_form_[11061127%2Ba6bbd1da-1c5a-48b1-b8c3-495a9aa74e6f]_view — Пользователь кликнул на кнопку открытия виджета.
- 1crm_form_[11061127%2Ba6bbd1da-1c5a-48b1-b8c3-495a9aa74e6f]_start — Пользователь начал заполнять виджет.
- 1crm_form_[11061127%2Ba6bbd1da-1c5a-48b1-b8c3-495a9aa74e6f]_end — Пользователь отправил данные в «1С», но произошла ошибка.
- 1crm_form_[11061127%2Ba6bbd1da-1c5a-48b1-b8c3-495a9aa74e6f]_success — Виджет успешно отправил данные в «1С».
Где: 11061127 — уникальный код счетчика в подключенном источнике статистики (например, Yandex); 2Ba6bbd1da-1c5a-48b1-b8c3-495a9aa74e6f — уникальный код виджета.
Через регистрацию целей возможно будет отслеживать не только получения заявок от лидов, но и промежуточные результаты такого заполнения.
При размещении виджета на сайте следует соблюдать рекомендации:
- Один виджет на весь сайт — в подвале сайта разместить код, полученный из 1С:CRM.
- Разные виджеты для страниц/разделов/лендингов — может понадобиться при необходимости разного набора полей на страницах. Для этого код виджета нужно разместить на конкретной странице.
- Не размещайте на одной странице несколько кодов вызова. Работать будет тот, который подключен последним в коде страницы.
Техническое описание используемых реквизитов виджета
В решении 1С:CRM генерируется код для вставки на сайт, в котором:
- src=»https://form.1crm.ru/widget.js» — адрес на сайт разработчика откуда берется исходник виджета, является константой.
- data-token=»1234″ — служебный параметр, в настоящее время не используется.
- data-source=»a6bbd1da-1c5a-48b1-b8c3-495a9aa74e6f» — уникальный номер (GUID) виджета на сайте. Параметр участвует в передаче информации для выбранной системы метрики (Yandex или Google). Генерируется автоматически.
- data-url=»http://test.ru:8080/sfpCRM3″ — адрес, по которому опубликована информационная база. Именно по этому пути идет взаимодействие виджета с базой. Подставляется автоматически.
- data-metrica=»12345678″ — уникальный номер (GUID) счетчика в подключенной Yandex метрика. Параметр участвует в передаче информации по действиям виджета в Yandex‑метрику. Генерируется автоматически при подключенной системе Yandex метрика.
- data-analitics=»UA-12345678-1″ — уникальный номер (GUID) счетчика в подключенной Google Analytics. Параметр участвует в передаче информации по действиям виджета в Google Analytics. Генерируется автоматически при подключенной системе Google Analytics.
Виджет в своей работе передает в 1С:CRM следующие данные и их описание:
- Историю посещения — страницы, посещенные пользователем с первого визита до отправки данных в «1С» с учетом GET параметров. Дубли страниц исключаются из списка.
- Нужен звонок — было заполнено поле «Телефон».
- Реферер — откуда попали на сайт (если есть).
- Сайт — полный домен сайта.
- GUID виджета.
- Тема — url без домена и GET параметров + целевое действие (заполнена форма).
- UTM — вся строка GET запроса страницы, с которой отправлена форма.
- Содержимое utm_меток:
- utm_Campaign,
- utm_Medium,
- utm_Source.
- Идентификатор достижения цели.
- Дополнительные поля — поля для показываемой на сайте формы в дополнение к базовым.
Получение заявок через почтовое сообщение (email)
Сценарий «Почтовое сообщение»
Настройте данный источник, если у вас нет возможности использовать виджет и другие сервисы. Просто отправляйте письмо в 1C:CRM с вашей заявкой. Для этого нужно указать учетную запись, на которую будут приходить письма, указать email отправителя, задать тему письма и сопоставить параметры с Вашими данными. Для удобства пример тела письма будет сгенерирован автоматически. Достаточно будет реализовать на стороне сайта передачу заявки в требуемом формате.
Внешняя обработка (свой API)
Сценарий «Внешняя обработка»
Вы можете загружать данные с вашего сайта с использованием API. Для этого достаточно отредактировать обработку (пример файла обработки можно выгрузить из виджета) и вставить новую обработку в данный источник. После сохранения источника, данные с Вашего сайта будут загружаться в 1C:CRM автоматически.