8 (800) 302-62-68
+7 (499) 348-29-58
sale@rbs-crm.ru

Документация разработчика

РосБизнесСофт CRM > База знаний > Разработчикам > Отправка уведомлений пользователям

Отправка уведомлений пользователям

Нужно подключить trait Notifications

use \Kernel\Actions\Notifications;

Для отправки уведомлений пользователям системы используется метод sendNotification.

sendNotification($addressee, $types, $text, $title, $sender, $dopOptions = [], $action, $linkMessage)

Где:

  • addresse — Cсылка на объект «references.employees»
  • (array) types — Тип уведомления. Можно передать несколько параметров: email (отправить письмо пользователю), notification (оповещение от системы), ws (вызвать оповещение через WS сервер), message (сообщение), system (системное уведомление). Также можно передать название стороннего «Плагина» (см. ниже)
  • (string) text — Текст уведомления
  • (string) title — Заголовок уведомления (для email)
  • (array) sender — Отправитель. Если не указать, то возьмет из настроек globals.mail.COMPANY_DEFAULT_EMAIL, если указать, то в формате [email, name]
  • (string) linkMessage =. Ссылка на уведомление (для notification)

Пример:

$this->sendNotification($this->structure->responsible, ["email", "notification"], $text, $title, $this->User->getEmployee()[0], [], "", $link);

Важно! Если нужно отправить одновременно уведомление и на почту и в систему, то для параметра types сначала необходимо указать «email».

Отправка уведомлений на почту

Нужно подключить trait Notifications

use \Kernel\Actions\Notifications;

Для отправки уведомлений пользователям системы используется метод sendEmail.

sendEmail($to, $title,  $text, $from, $files)

Где:

  • (array) to — Получатель письма. [‘Адрес почтового ящика получателя’, ‘Имя получателя’]
  • (string) title — Тема письма
  • (string) text — Текст письма
  • (array) from -Отправитель письма. [‘Адрес почтового ящика отправителя’, ‘Имя отправителя’]
  • (array) files — Массив ссылок на файлы

Пример:

$this->sendEmail(['alexander@rbs360.ru', 'Александр'], 'Тема письма', 'Текст письма', ['noreply@rbs360.ru', 'RBS360 Личный кабинет']);

Отправка уведомления через сторонние плагины

Для отправки уведомления через сторонний плагин в типе уведомлений нужно указать точное название плагина (например, telegram).

Тип плагина должен быть типа: PLUGIN_TYPE_CONTENT. Также плагин должен содержать метод:

sendMessage($text, $user_id, $chat_id = null)

Пример отправки уведомления пользователю через плагин «Уведомления в Telegram»:

$this->sendNotification($this->User->getEmployee(), ["telegram"], "Текст", "", $this->User->getEmployee()[0], [], "", "");