mknk
@mknk
Разработчик 1С-Битрикс

Почему не приходят уведомления пользователям при делегировании задания бизнес-процесса в 1с-Битрикс Корпоративный портал?

Всем добрый день!

Есть 1С-Битрикс Корпоративный портал (коробка). Работает исправно, push-уведомления по задачам, напоминаниям и т.п. приходят.

Столкнулся с проблемой в отсутствии уведомлении пользователя если на него делегируют задание в бизнес-процессе. При этом само задание появляется и он может его вполнить.
В таблице b_event записи по уведомлениям относящиеся к бизнес-процессу вообще отсутствуют как таковые.
В документации по модулям и конкретно по модулю бизнес-процессы этот момент как-то упущен от слова совсем.

Может у кого были подобные прецеденты и вы нашли решение?
У меня есть подозрение что я где-то недосмотрел недочитал.
  • Вопрос задан
  • 1908 просмотров
Решения вопроса 1
mknk
@mknk Автор вопроса
Разработчик 1С-Битрикс
В итоге реализовал через события бизнес-процессов.
Если кому надо, то код ниже рабочий.

<?php

use Bitrix\Main\Loader;

class BizprocEvents
{
    public static function OnTaskDelegate($taskId, $fromUserId, $toUserId)
    {
        $arTask = self::getTask($taskId);
        self::addNotify($toUserId, $arTask["NAME"], $arTask["DESCRIPTION"]);
        return true;
    }

    private static function getTask($taskId)
    {
        global $DB;
        $taskId = intval($taskId);
        $strSql = "SELECT DESCRIPTION, NAME, DOCUMENT_NAME FROM b_bp_task WHERE ID = '" . $taskId . "'";
        $result = $DB->Query($strSql);
        return $result->Fetch();
    }

    private static function addNotify($toUserId, $name, $text)
    {
        Loader::includeModule("im");

        $arMessageFields = array(
            "TO_USER_ID" => $toUserId,
            "FROM_USER_ID" => 0,
            "NOTIFY_TYPE" => IM_NOTIFY_SYSTEM,
            "NOTIFY_MODULE" => "bizproc",
            "NOTIFY_MESSAGE" => $name . "[BR]" . $text . "[BR][url=тут урл]Перейти к бизнес-процессам[/url]",
            "NOTIFY_MESSAGE_OUT" => $name . "[BR]" . $text . "[BR][url=тут урл]Перейти к бизнес-процессам[/url]"
        );
        CIMNotify::Add($arMessageFields);
    }
}
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
askunash
@askunash
Тренер Битрикс
Боюсь, это уведомление не заложено в активити. Нет стенда под рукой, чтобы проверить, но почти уверен.
Если так, то закладываете другой механизм в самом шаблоне - запрет делегировать, вместо него запрос допинфо с выбором кому передать. На статусах, желательно.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы