============================================================
AGENT_CONNECTED
============================================================

.. toctree::
   :maxdepth: 3
   
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
 }


.. toctree::
   :maxdepth: 3