Изменение модели
Запрос
-
Подписка
-
Отписка
cn.emit('add-topics', 'model-changed')
cn.emit('remove-topics', 'model-changed')
Ответ
Ответ содержит следующие поля:
| Поле | Тип | Описание |
|---|---|---|
id |
String |
ID сущности. |
changeType |
Integer |
Тип изменения. |
entityType |
Integer |
|
user |
Object |
Информация о пользователе, который изменил модель. |
user.id |
String |
ID пользователя. |
user.login |
String |
Имя пользователя. |
Пример
Запрос
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', 'model-changed');
cn.on('model-changed', msg => {
console.log(msg);
});
Ответ
{
"changeType":2,
"id":"618ffac619e52c1cb9b09d64",
"entityType":1,
"user":{
"id":"618fba5319e52c1cb9b09353",
"login":"user.name"
}
}
Попытка изменить значения:
параметров объекта; свойств объекта; параметров сенсоров (сервисных свойств объекта) - задачи мониторинга; параметры связи; параметры ссылки на объект;
на точно такое же (т.е. по сути не приводящим ни к какому изменению) игнорируется - событие "model-changed" не отправляется UI клиенту через сокет.