Дерево страниц

Код

Описание

Структура Identity

typedef i32 ItemId

Идентификатор элемента в событии

enum IdentityItemType {
kPerson,
kWorkstation,
kDevice,
kResource,
}

Вид элемента идентификации

struct Attribute {
1: required string name,
2: required string value
}

Отдельный атрибут любой сущности события (самого события, идентификации, потока данных):

  1. контакт;
  2. метаинформация о контакте
struct ContactWithMeta {
1: required Attribute contact,
2: optional string meta
}

Контакты идентификации с метаинформацией:

  1. контакт;
  2. метаинформация о контакте

struct Identity {

1: required ItemId identity_id,
2: required IdentityItemType identity_type,
3: required list<Attribute> identity_contacts,
4: optional list<Attribute> identity_attributes,
5: optional list<ContactWithMeta> identity_contacts_with_meta

}

Идентификация получателя или отправителя объекта:

  1. уникальный номер идентификации внутри объекта, используется для ссылок на идентификацию;
  2. вид элемента идентификации;
  3. набор контактов идентификации;
  4. не обязательный набор атрибутов идентификации;
  5. набор контактов идентификации c метаинформацией

struct EventData {
1: required ItemId data_id,
2: optional list<Attribute> data_attributes
}

Описание потока данных события:

  1. уникальный идентификатор потока данных внутри события, используется для ссылок на поток;
  2. необязательный набор атрибутов потока данных

struct ChatMessage {
1: required ItemId sender_id,
2: required string sent_time,
3: required string utf8_text,
4: optional ItemId mes_data_id
}

Описание одного сообщения класса "Беседа":

  1. ссылка на идентификацию, которая является отправителем сообщения;
  2. локальное время передачи сообщения в формате ГГГГ-ММ-ДДTЧЧ:ММ:СС+ЧЧ:ММ (ISO 8601 c форматированием yyyy-MM-ddTHH:mm:sszzz);
  3. текст сообщения в кодировке UTF-8;
  4. идентификатор данных объекта, в которых будет передано содержимое сообщения, если utf8_text пустой

typedef string LinkNameType
struct ItemLink {

1: required ItemId id,
2: required ItemId link_to_id,
3: required LinkNameType link_name
}

Описание связи между различными сущностями события:

  1. идентификатор сущности события, от которой идёт связь;
  2. идентификатор сущности события, к которой идёт связь;
  3. имя (тип) связи
const LinkNameType link_name_ws = "workstation_link"Список имён поддерживаемых связей между сущностями:
  • имя для задания связи идентификаций типа "Персона" и "Рабочая станция"

struct Event {
1: required EventClass evt_class,
2: required TmServiceType evt_service,
3: optional list<Attribute> evt_attributes,
4: required list<Identity> evt_senders,
5: required list<Identity> evt_receivers,
6: required list<EventData> evt_data,
7: optional list<ChatMessage> evt_messages,
8: optional list<ItemLink> evt_links,
9: optional Identity evt_source,
10: optional Identity evt_destination

}

Описание события, которое нужно передать в Traffic Monitor:

  1. класс события;
  2. сервис события;
  3. атрибуты события;
  4. отправители события;
  5. получатели события;
  6. данные события;
  7. сообщения события для класса "Беседа";
  8. связи между сущностями в событии;
  9. источник события;
  10. приемник события

struct Credentials {
1: required string company_name,
2: required string token
}

Структура, описывающая параметры доступа к Traffic Monitor:

  1. название клиента (или компании в нашем случае). Этот параметр связывает плагин внешнего разработчика с лицензией;
  2. токен авторизации. Эта строка является «секретом», который знают плагин и Traffic Monitor. Так реализована авторизация источника данных

typedef i64 EventId

Идентификатор загружаемого события

typedef i64 StreamId

Идентификатор загружаемого потока данных события

typedef i32 InterfaceVersion
const InterfaceVersion pushapi_version = 1

Версия PushAPI интерфейса

enum EventClass {
kChat,
kEmail,
kMfp,
kWeb,
kFileExchange,
kPhoto,
kMultimedia,
kVoiceTalk
}

Поддерживаемые "классы" событий в PushAPI:

  • Беседа
  • Почта
  • Печать, копирование и сканирование
  • Интернет-активность
  • Обмен файлами
  • Фотосъемка
  • Запись мультимедиа
  • Звонок
  • Нет меток