1C-Bitrix 25.700.0
Загрузка...
Поиск...
Не найдено
callback_ednaru.php
См. документацию.
1<?php
2
3use Bitrix\ImConnector\Library;
10
11define("NOT_CHECK_PERMISSIONS", true);
12define("EXTRANET_NO_REDIRECT", true);
13define("STOP_STATISTICS", true);
14define("NO_KEEP_STATISTIC", "Y");
15define("NO_AGENT_STATISTIC","Y");
16define("DisableEventsCheck", true);
17define('BX_SECURITY_SESSION_READONLY', true);
18
19require_once($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/prolog_before.php");
20
22$messageFields = $jsonText ? Json::decode($jsonText) : null;
23
24if (!$messageFields || !Loader::includeModule('messageservice'))
25{
27}
28
29// region Old API
30if (isset($messageFields['dlvStatus']) && isset($messageFields['imOutMessageId']))
31{
32 $messageId = $messageFields['imOutMessageId'];
33 $externalStatus = (string)$messageFields['dlvStatus'];
34
36 if ($message && $externalStatus != '')
37 {
38 $message->updateStatusByExternalStatus($externalStatus);
39 }
40}
41else if (isset($messageFields['imSubject']) && Loader::includeModule('imconnector'))
42{
43 $messageFields['CONNECTOR'] = Library::ID_EDNA_WHATSAPP_CONNECTOR;
44 $portal = new \Bitrix\ImConnector\Input($messageFields);
45 $portal->reception();
46}
47//endregion
48// region New API
49else if (isset($messageFields['requestId'], $messageFields['status']))
50{
51 $messageId = $messageFields['requestId'];
52 $externalStatus = (string)$messageFields['status'];
53
55 if ($message && $externalStatus !== '')
56 {
57 $message->updateStatusByExternalStatus($externalStatus);
58 }
59}
60else if (isset($messageFields['userInfo']) && Loader::includeModule('imconnector'))
61{
62 $addResult = EdnaRuIncomingMessage::addMessage(Ednaru::ID, $messageFields);
63
64 if (!$addResult->isSuccess())
65 {
67 }
68 $messageFields['internalId'] = $addResult->getId();
69
70 Application::getInstance()->addBackgroundJob(
71 [EdnaRuIncomingMessage::class, 'sendMessageToChat'],
73 Application::JOB_PRIORITY_NORMAL
74 );
75
76}
77else if (isset($messageFields['approveStatus']) && Loader::includeModule('messageservice'))
78{
80}
81// endregion
$jsonText
Определения callback_ednaru.php:21
$messageFields
Определения callback_ednaru.php:22
if(! $messageFields||!isset($messageFields['message_id'])||!isset($messageFields['status'])||!CModule::IncludeModule("messageservice")) $messageId
Определения callback_ismscenter.php:26
$externalStatus
Определения callback_ismscenter.php:27
static getInstance()
Определения application.php:98
static getInput()
Определения httprequest.php:548
Определения loader.php:13
Определения json.php:9
static loadByExternalId(string $senderId, string $externalId, ?string $from=null)
Определения message.php:71
$_SERVER["DOCUMENT_ROOT"]
Определения cron_frame.php:9
$message
Определения payment.php:8