- Модуль: mobile
- Путь к файлу: ~/bitrix/modules/mobile/lib/Push/DeviceChannel.php
- Класс: BitrixMobilePushDeviceChannel
- Вызов: DeviceChannel::send
public function send(int $userId, Message $message): Result
{
$result = new Result();
if (empty($message->getBody()))
{
return $result->addError(new Error('Message body cannot be empty'));
}
$sent = (new CPushManager())->sendMessage([
[
'USER_ID' => $userId,
'APP_ID' => self::APP_ID,
'EXPIRY' => 0,
'PARAMS'=> [
'command' => self::COMMON_MOBILE_PUSH_EVENT,
'message'=> Json::encode($message),
],
'ADVANCED_PARAMS' => [
'senderName' => $message->getTitle() ?: self::APP_ID,
'senderMessage' => $message->getBody()
]
]
]);
if (!$sent)
{
$result->addError(new Error('An error occurred while sending a message through the Device Channel'));
}
return $result;
}