Вход менеджеров из вашей CRM

Кнопка «Мессенджеры» в вашей CRM открывает чаты сразу под нужным менеджером, без отдельного пароля. Включается в ⚙ Настройки → «Вход из вашей CRM» — там же адрес входа и секрет.

CRM формирует ссылку:

https://адрес-сервиса/t/<номер компании>/sso?uid=<id менеджера в CRM>&name=<имя>&role=manager&ts=<unix-время>&sig=<подпись>
sig = HMAC-SHA256(секрет, "uid|name|role|ts") в виде hex

Ссылка действует 5 минут. При первом входе менеджер создаётся сам, дальше обновляется его имя. Администратор может отключить менеджера в настройках.

Пример на PHP

$ts = time();
$sig = hash_hmac('sha256', "{$user->id}|{$user->name}|manager|{$ts}", SSO_SECRET);
$url = SSO_URL . '?' . http_build_query([
  'uid' => $user->id, 'name' => $user->name, 'role' => 'manager', 'ts' => $ts, 'sig' => $sig,
]);

Пример на Node.js

const ts = Math.floor(Date.now() / 1000);
const sig = crypto.createHmac('sha256', SSO_SECRET).update(`${user.id}|${user.name}|manager|${ts}`).digest('hex');
const url = `${SSO_URL}?${new URLSearchParams({ uid: user.id, name: user.name, role: 'manager', ts, sig })}`;