Триггер для Data Streams, который отправляет сообщения в WebSocket-соединения
Триггер для Data Streams отправляет сообщения в WebSocket-соединения при отправке данных в поток.
Триггеру для Data Streams необходимы сервисные аккаунты для управления потоком и отправки сообщений в WebSocket-соединения. Вы можете использовать один и тот же сервисный аккаунт для обеих операций.
О том, как создать триггер для Data Streams, читайте в инструкции Создать триггер для Data Streams, который отправляет сообщения в WebSocket-соединения.
Группирование сообщений
Настройки группирования позволяют передавать в WebSocket-соединения сразу несколько сообщений. Эти настройки задают ограничение сверху по размеру группы сообщений и по времени ее накопления. Например, если размер группы сообщений равен 3, то в WebSocket-соединения могут поступать группы, в которых содержится от 1 до 3 сообщений.
Роли, необходимые для корректной работы триггера для Data Streams
- Для создания триггера вам необходимо разрешение на сервисный аккаунт, от имени которого триггер выполняет операцию. Это разрешение входит в роли iam.serviceAccounts.user, editor и выше.
- Для работы триггера сервисным аккаунтам необходимы роли:
api-gateway.websocketBroadcaster
на каталог, в котором находится API-шлюз;yds.admin
на поток, при отправке данных в который вызывается триггер.
Формат сообщения от триггера для Data Streams
Триггер для Data Streams принимает и отправляет сообщения только в формате JSON
После того как триггер сработает, он отправит в WebSocket-соединения сообщение с массивом messages
:
{
"messages":[
{
"key1":"value1"
},
{
"key2":"value2"
}
]
}