Виджет для интеграции справочника очередей

Последние изменения: 26.02.2024

Для интеграции окна диалога во внешние системы требуется поддержка встраивания HTML фрейма во внешнее приложение.

Для интеграции необходимо добавить фрейм, открывающий следующую ссылку:

https://test.sherlockcrm.ru/externalUsers?showQueueList=true&showUsersList=false&showBorder=true&showUserMenu=false&externalObjectId=<externalObjectId>&externalSystemCode=<externalSystemCode>;

В шаблоне ссылки задаются следующие параметры:

  • showUsersList – true/false (скрывать или нет список пользователей)

  • showQueueList – true/false (скрывать или нет список очередей)

  • showBorder - true или false в зависимости от необходимости отражать темную рамку вокруг блока с диалогами. По умолчанию применяется значение true

  • showUserMenu - true или false в зависимости от необходимости скрывать иконку с инициалами пользователя и привязанным меню в правом верхнем углу. По умолчанию применяется значение true

  • isExternal - true или false в зависимости встраивается диалог во внешнюю систему или нет. В случае true скрывается основное меню с модулями слева

  • externalObjectId – идентификатор для авторизации. Такой идентификатор может формироваться ботом Sherlock Plarform по согласованным правилам или импортироваться из внешней системы. В качестве идентификатора может использоваться ID во внешней системе, email или телефон. Также Sherlock Paltform может формировать временный код для входа и отправлять ссылку с кодом во внешнее API.

  • externalSystemCode – идентификатор системы с которой идет синхронизация


Для корректной авторизации необходимо, чтобы в tbl_ExternalObjectMapping была запись с такими значениями

  • ExternalId - значение, идентичное Query параметру externalObjectId

  • InternalId - идентификатор пользователя (Id из tbl_User)

  • ObjectTypeId - всегда 1 для идентификатора пользователя

  • ExternalSystemId - идентификатор внешней системы (Id из tbl_ExternalSystem)

  • ExpiresAt - заполнять, если необходимо ограничение срока действия внешнего идентификатора

Для создания такой записи через API доступен следующий метод:

POST https:///api/v2/ExternalObjectMapping/UpdateByCode

В качестве тела запроса передавать Json следующего формата

{
"externalId": "Внешний идентификатор пользователя",
"internalId": "Guid – id пользователя",
"objectTypeId": 1, // для пользователя всегда 1
"externalSystemId": "Guid – id внешней системы"
}

Важно: для работы фрейма на сервере необходимо отключить опцию X-Frame-Options в web.config

Помогла ли вам статья?