Внутренний поиск

Данное действие доступно только в коробочном модуле "Чат-боты для сотрудников. Конструктор от Zabotix. Коробочная версия".

Действие "Внутренний поиск" позволяет выполнить полнотекстовый поиск по указанному информационному блоку вашего портала Битрикс24 и вывести в чат список найденных элементов.

Действие доступно только в секции "Действия бота до ответа" в разделе "Прочее".

Параметры действия:

  • Текст для поиска - текст, который будет искать действие в элементах инфоблока. В данное поле можно подставить значения любых переменных. Обязательное поле.
  • Тип инфоблока - тип информационного блока. Обязательное поле.
  • Инфоблок - информационный блок Битрикс24, в котором будет производиться поиск. Обязательное поле.
  • Количество показываемых элементов - количество результатов (элементов), которые чат-бот должен вывести в чате. По умолчанию 10. Обязательное поле.
  • Текст сообщения, если поиск неудачен - текст, который чат-бот выведет в случае возникновении ошибки при запросе или при отсутствии результатов (элементов). Обязательное поле.



Подготовка информационного блока для лучшей работы 

Искать можно в любом информационном блоке вашего коробочного Битрикс24, но для наилучшей работы есть ряд особенностей по предварительной настройке информационного блока.

Поиск осуществляется по заголовку, описанию и свойствам элементов указанного инфоблока.


Возьмём для примера стандартный информационный блок "Товарный каталог CRM" из типа "Каталоги CRM".

Откроем его настройки.

Два важных параметра, на которые необходимо обратить внимание:
  • Индексировать элементы для модуля поиска - параметр должен быть включен. Если его выключить, поиск по данному инфоблоку работать не будет работать.
  • URL страницы детального просмотра - если параметр пустой, то результат поиска будет в виде обычного текста без возможности перейти к элементу по клику на ссылку. Если параметр заполнен - результаты поиска будут иметь кликабельные ссылки на элементы. Адрес зависит от особенностей вашего портала и инфоблока. Например, для инфоблока "Товарный каталог CRM" он может быть таким #SITE_DIR#crm/catalog/#IBLOCK_ID#/product/#ELEMENT_ID#/, где SITE_DIR - путь к сайту, IBLOCK_ID - ID инфоблока, ELEMENT_ID  - элемент инфоблока. Для настройки этого поля рекомендуем обратиться к администратору вашего портала.



  • Значения свойства участвуют в поиске. Включите данный параметр в настройках конкретного свойства инфоблока, если вы хотите, чтобы поиск также осуществлялся по этому свойству.


Переиндексация

Если параметр "Индексировать элементы для модуля поиска" не был включен изначально, то результаты поиска могут быть пустыми, пока вы не запустите переиндексацию. Сделать это можно, перейдя в "Настройки - Поиск - Переиндексация".


Настройка поиска

Действие "Внутренний поиск" осуществляет поиск за счёт стандартных инструментов модуля Поиск Битрикса, поэтому учитывайте это при работе с поиском внутри чат-бота.

Перейдите в "Настройки - Настройки продукта - Настройки модулей - Поиск" и настройте поиск в соответствии со своими задачами. 

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


Пример настройки и выполнения поиска

Перейдём к действию "Внутренний поиск".

В параметре "Текст для поиска" мы указали переменную search_string.



В вашем случае это может быть любая другая переменная, главное, чтобы на момент выполнения действия она была заполнена. Сделать это можно различными способами, например вы можете записать пришедший от пользователя текст в типе ответа "Ждать произвольного ответа пользователя" в переменную.



И далее в секции "Действия бота после ответа" запустить узел в котором будет осуществляться поиск.





В результате поиска чат-бот выведет заголовок + описание элементов указанного инфоблока, которые соответствуют тексту поиска.

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



Если инфоблок настроен правильно, заголовок элемента будет кликабельным.

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



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