Для некоторых из моих ресурсов способ установки целей для частного обновления мне не подходит. Я добавляю сложные целевые правила и хотел бы знать, как перехватить сообщение и динамически установить эти цели.
Например, отправляется следующее сообщение:
Symfony\Component\Mercure\Update {#11108 ▼
-topics: [▼
"https://api:8443/books/bb4277f0-9d48-415b-9338-10cdc0105602"
]
-data: "{"@context":"\/contexts\/Book","@id":"\/books\/bb4277f0-9d48-415b-9338-10cdc0105602","@type":"Book","id":"bb4277f0-9d48-415b-9338-10cdc0105602","contains_black_magic:"true,…}"
-targets: []
-id: null
-type: null
-retry: null
}
Потому что "содержит_блэк_маги c - это true
, а текущим носителем книги является Том Марволо Риддл, я хотел бы предупредить Альбуса Дамблдора и, таким образом, добавить его целевой URI https://api:8443/users/00000000-0000-0000-0000-000000000000
(соответствует директору Хогвартса)
Symfony\Component\Mercure\Update {#11108 ▼
-topics: [▼
"https://api:8443/books/bb4277f0-9d48-415b-9338-10cdc0105602"
]
-data: "{"@context":"\/contexts\/Book","@id":"\/books\/bb4277f0-9d48-415b-9338-10cdc0105602","@type":"Book","id":"bb4277f0-9d48-415b-9338-10cdc0105602","contains_black_magic:"true,…}"
-targets: ["https://api:8443/users/00000000-0000-0000-0000-000000000000"]
-id: null
-type: null
-retry: null
}
Обратите внимание, что я использую Mercure с Messenger и не хочу использовать языковые выражения (мне нужно внедрить выделенные службы).
Есть ли способ обновить цели до того, как объект Update
станет sert к хабу?