1C-Bitrix
25.700.0
Загрузка...
Поиск...
Не найдено
producerclientexample.php
См. документацию.
1
<?php
2
3
namespace
Bitrix\Calendar\Core\Queue\Examples
;
4
5
use
Bitrix\Calendar\Core\Queue\Message\Message
;
6
use
Bitrix\Calendar\Core\Queue\Rule\Registry
;
7
use Bitrix\Calendar\Core\Queue;
8
use CCalendar;
9
10
class
ProducerClientExample
11
{
20
public
static
function
run
()
21
{
22
// it's only for example
23
// in real cases rule should register in advance
24
self::registerRule();
25
26
$message
= self::generateMessage();
27
self::sendMessage(
$message
);
28
}
29
33
private
static
function
generateMessage():
Message
34
{
35
return
(
new
Message
())
36
->setBody([
37
'userId'
=> CCalendar::GetUserId(),
// notice recipient
38
'content'
=>
'Message sended '
. date(
'Y-m-d H:i:s'
),
// notice text
39
'exampleField'
=>
'dwdwdw'
,
// field for hash
40
])
41
->setRoutingKey(
'example'
)
42
;
43
}
44
54
private
static
function
sendMessage(
Message
$message
)
55
{
56
Queue\Producer\Factory::getProduser
()->send(
$message
);
57
}
58
64
private
static
function
registerRule()
65
{
66
Registry::getInstance()->registerRuleClass(RuleExample::class);
67
}
68
}
Bitrix\Calendar\Core\Queue\Examples\ProducerClientExample
Определения
producerclientexample.php:11
Bitrix\Calendar\Core\Queue\Examples\ProducerClientExample\run
static run()
Определения
producerclientexample.php:20
Bitrix\Calendar\Core\Queue\Producer\Factory\getProduser
static getProduser(?string $type=self::PRODUCER_TYPES['immediate'])
Определения
factory.php:14
Bitrix\Calendar\Core\Queue\QueueListener\Registry
Определения
registry.php:16
Bitrix\Calendar\Core\Queue\Interfaces\Message
Определения
message.php:16
Bitrix\Calendar\Core\Queue\Examples
Определения
consumerclientexample.php:3
Bitrix\Calendar\Core\Queue\Message
Определения
builderhandledmessagefromdatamanager.php:3
$message
$message
Определения
payment.php:8
bitrix
modules
calendar
lib
core
queue
examples
producerclientexample.php
Создано системой
1.14.0