Настроить вебсокеты

Продукты
Все продукты

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

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

На сервере приложений должна быть развернута Windows Server 2012, Windows Server 2016 или Windows 8/10 с установленными Internet Information Services (IIS) не ниже версии 8. Конфигурационные файлы в базовой версии Creatio по умолчанию настроены и необходимо только выполнить настройки со стороны сервера. Однако если вы разворачиваете и настраиваете Creatio впервые, рекомендуем проверить настройки конфигурационных файлов и убедиться, что веб-сокеты работают корректно. 

Для использования защищенного соединения HTTPS требуется дополнительная настройка.

Важно. Если в вашей локальной сети используется прокси-сервер, то для него необходимо настроить протокол работы вебсокетов. Как правило, описание настройки данного протокола можно найти в документации прокси-сервера.

В данной статье описан процесс настройки конфигурационных файлов Creatio для корректной работы вебсокетов.

На заметку. Установка на сервер компонентов, обеспечивающих работу по протоколу WebSockets, подробно описана в статье Проверить обязательные компоненты Windows.

Проверить настройки вебсокетов для Windows Server 2012 или Windows server 2016 

Чтобы проверить настройку вебсокетов в Creatio, развернутом на сервере под управлением Windows Server 2012 или Windows Server 2016:

  1. Убедитесь, что в файле Web.config, который находится в корневой директории сайта Creatio, отключено наследование, а также указаны ограничения на длину и время выполнения запроса.

    <location path="." inheritInChildApplications="false">
        <system.web>
          ...
          <httpRuntime maxRequestLength="73400" executionTimeout="28800" targetFramework="4.7" />
  2. Для файла Web.config, который размещен в директории Путь к корневому каталогу Creatio\Terrasoft.WebApp\ проверьте, чтобы было указано значение типа wsService по умолчанию “Terrasoft.Messaging.MicrosoftWSService.MicrosoftWSService, Terrasoft.Messaging.MicrosoftWSService”, указан порт для подключения клиентов, ограничения на длину и время выполнения запроса HTTP, а также вызов дополнительных модулей.

    Важно. Для Microsoft Windows Server версии 2012 и выше рекомендуется использовать значение “MicrosoftWSService”, а не “SuperWSService”.

    На заметку. Значение portForClientConnection="0" означает использование порта web-приложения.

    <wsService type="Terrasoft.Messaging.MicrosoftWSService.MicrosoftWSService,
    Terrasoft.Messaging.MicrosoftWSService" encrypted="false" portForClientConnection="0" />
    ...
    <location path="." inheritInChildApplications="false">
        <system.web>
         ...
          <httpRuntime maxRequestLength="102400" executionTimeout="28800"
     targetFramework="4.6.2" />
          <httpHandlers>
            ...
            <add verb="GET" path="*ViewModule.aspx.ashx" type="Terrasoft.Messaging.MicrosoftWSService.WSHandler,
    Terrasoft.Messaging.MicrosoftWSService" />
    ...
    <system.webServer>
        ...
        <handlers>
          ...
          <add name="WSHandler" verb="*" path="*ViewModule.aspx.ashx"
    type="Terrasoft.Messaging.MicrosoftWSService.WSHandler, Terrasoft.Messaging.MicrosoftWSService" />
    

    На заметку. Подключение по протоколу WebSockets можно проверить при помощи консоли разработчика (Developer Tools) веб-браузера. В случае успешного подключения в консоли будет содержаться запись типа: WebSocket-connection opened for url:ws://demo.creatio.com/0/Nui/ViewModule.aspx.ashx

Часто задаваемые вопросы по настройке вебсокетов 

Как проверить правильность настройки вебсокетов? 

Существует несколько быстрых способов проверить корректность настройки вебсокетов:

  • Воспользуйтесь функциональностью импорта данных из Excel. Если вебсокеты настроены правильно, то импорт данных будет выполнен.
  • В консоли разработчика веб-браузера введите команду Terrasoft.ServerChannel.ping(). При корректной настройке вебсокетов сервер ответит pong (Рис. 1). При любом другом ответе сервера необходимо проверить правильность настройки вебсокетов.
    Рис. 1 — Проверка настройки вебсокетов при помощи консоли разработчика веб-браузера
    scr_chapter_websockets_check_working.png
  • Запустите вручную бизнес-процесс, в котором есть стартовый таймер и автогенерируемая страница. Если автогенерируемая страница откроется, значит, вебсокеты настроены правильно.

На заметку. Элементы бизнес-процессов подробно описаны в отдельном блоке.

Я настроил вебсокеты, но они не работают. Почему? 

Если после настройки вебсокеты не работают, проверьте:

  • Установлены ли на сервере все компоненты протокола WebSockets. Подробнее >>>
  • Установлен ли протокол использования вебсокетов для прокси-сервера, если он используется в вашей локальной сети.
  • Настройки антивируса и Firewall. Если нет возможности отключить на сервере эти программы, добавьте IP-адрес и порт вашего сайта Creatio в список исключений для входящих и исходящих потоков.
  • Наличие расширений и надстроек web-браузера, в том числе VPN. Расширения могут блокировать работу вебсокетов.