Клиентское уведомление

Клиентское уведомление

Клиентское уведомление ​

Событие, которое срабатывает при получении клиентского уведомления, которое говорит пользователям об изменении состояния объекта.

Имя события ​

text
client-notification

Запрос ​

  • Подписка
  • Отписка
js
cn.emit('add-topics', 'client-notification')
js
cn.emit('remove-topics', 'client-notification')

Ответ ​

Ответ содержит следующие поля:

ПолеТипОписание
entityIdStringID элемента системы, который отправил уведомление
entityTypeIntegerТип элемента. 1 – Объект, 2 – Связь.
stateIdIntegerID состояние, в которое перешла сущность.
soundNameStringИмя звука, который проигрывается при уведомлении.
timestampIntegerВремя уведомления.

Пример ​

Запрос ​

javascript
const comet = require('socket.io-client');

// Comet settings
const COMET_CONNECT_TIMEOUT = 5000;
const sessionId = "..."
const conf = {
    cometHost: 'https://example.com',
    cometPort: '1234',
};

const url = `${conf.cometHost}` + (conf.cometPort ? `:${conf.cometPort}` : '');
const cn = comet.connect(url, {
    query: { forceNew: true, sessionId },
    timeout: COMET_CONNECT_TIMEOUT,
});

cn.emit('add-topics', 'client-notification');

cn.on('client-notification', msg => {
      console.log(msg);
});

Ответ ​

json
 {
     "entityId":"634023d414d3e37c5d8c865b",
     "entityType":1,
     "stateId":3,
     "soundName":"sound1",
     "timestamp":1667391064587
 }