AGENT_CONNECTED

AGENT_CONNECTED

Инициатор: оркестратор

Получатель: ui

Описание:

После фиксации факта подключения нового агента, оркестратор рассылает сообщение с информацией по агенту всем авторизованным UI.

{

   "type" : "AGENT_CONNECTED",
   "apiVersion" : "API_V1",
   "uuid" : "", // уникальный универсальный идентификатор агента (БД)
   "startDate" : "", // дата запуска агента в формате ISO 8601
   "host" : "",
   "ip" : "",
   "agentVersion" : "",
   "hardware" : {
       "key" : "value",
       "keyN" : "valueN"
   },
   "infrastructure" : [
       "tag",
       "tagN"
   },
   "runners" : [  // доступные runners
       {
           "user" : "vasya.oblomov",
           "software" : {  // список программных характеристик сервера в формате key/value, доступных пользователю
               "software1" : "",
               "1C" : "8.0.5",
               "softwareN" : ""
           },
           "agentUuid" : "",
           "connectionDate" : ""
       }
   ],
   "date" : "" // дата подключения агента - фиксируется оркестратором
   "sessions" : [],
   "user" : "domain\petrushka",
   "software" : {
       "telegram" : "1.0.6",
       "icq" : "4.8.9"
   }
}

Session.proto

syntax = "proto3";
package Robin.Protocol.Orchestrator.Messages.API.v2;

message Session
{
  string userName = 1; // пользователь
  string userAccount = 2; // УЗ пользователя
  string domainName = 3; // домен
  string windowStationName = 4;
  string connectionState = 5; // состояние сессии
  int32 sessionId = 6; //
}
syntax = "proto3";
package Robin.Protocol.Orchestrator.Messages.API.v2;
import "google/protobuf/timestamp.proto";
import "Runner.proto";
import "Session.proto";

message AgentConnected
    {
string type = 1; // "AGENT_CONNECTED"
string apiVersion = 2;
string uuid = 3; // уникальный универсальный идентификатор агента (БД)
google.protobuf.Timestamp startDate = 4; // дата запуска агента в формате ISO 8601
string host = 5;
string ip = 6;
string agentVersion = 7;
map<string, string> hardware = 8;
repeated Runner runners = 9;
repeated string infrastructure = 10;
google.protobuf.Timestamp date = 11; // дата подключения агента - фиксируется оркестратором
repeated Session sessions = 12; // активные сессии
string user = 13; // УЗ пользователя, под которым запущен агент
map<string, string> software = 14; // список программных характеристик сервера в формате key/value, на котором запущен агент
}

Runner.proto

syntax = "proto3";
package Robin.Protocol.Orchestrator.Messages.API.v2;
import "google/protobuf/timestamp.proto";

message Runner
{
   string user = 1; // учетная запись пользователя
   map<string, string> software = 2; // список программных характеристик сервера в формате key/value, на котором запущен агент
   string agentUuid = 3;
   google.protobuf.Timestamp connectionDate = 4; // дата в формате UTC
}