Получение описания каналов и порта брокера

В «1С:Шине» есть HTTP-сервис описания каналов процесса интеграции. Это специализированный сервис, который возвращает авторизованной информационной системе JSON-ответ, содержащий список экземпляров каналов, к которым эта информационная система имеет доступ, а также информацию по каждому из них. С помощью этого сервиса также можно получить порт брокера сообщений и имя очередей для подключения систем по протоколу AMQP.

Важно: Чтобы использовать HTTP-сервисы описания «1С:Шины», вам необходимо пройти аутентификацию и получить билет. Этот билет следует использовать в заголовке Authorization при каждом запросе.

Метод metadata

Метод GET. Формат вызова:

/sys/esb/metadata/channels

Возвращает авторизованной информационной системе описание каналов «1С:Шины» времени редактирования.

Структура элемента списка:
process
Имя процесса интеграции в проекте
Примечание: Для совместимости с сервисами интеграции «1С:Предприятия» имя процесса интеграции не содержит имя разработчика и название проекта. Например, если полное имя процесса интеграции имеет вид ИмяКомпании::ИмяПроекта::Основное::OfficeToShop, то в описании каналов свойство process будет иметь значение Основное::OfficeToShop.
processDescription
Описание процесса интеграции, заданное в схеме
channel
Логическое имя канала, заданное в схеме процесса интеграции
channelDescription
Описание канала, заданное в схеме процесса интеграции
access
Разрешена ли отправка сообщений в канал (WRITE_ONLY) или получение из канала (READ_ONLY)

Пример запроса (cURL):

 curl --request GET \
    --url http://localhost:9090/applications/My-Application/sys/esb/metadata/channels \
    --header "authorization: Bearer БИЛЕТ"

Пример результата:

 [ {
  "process" : "Основное::OfficeToShop",
  "processDescription" : "One Office to One Shop",
  "channel" : "toShop",
  "channelDescription" : "shop incoming",
  "sendAllowed" : "READ_ONLY"

}, {
  "process" : "Основное::OfficeToShop",
  "processDescription" : "One Office to One Shop",
  "channel" : "toOffice",
  "channelDescription" : "office incoming",
  "sendAllowed" : "READ_ONLY"
}, {
  "process" : "Основное::OfficeToShop",
  "processDescription" : "One Office to One Shop",
  "channel" : "fromShop",
  "channelDescription" : "shop outgoing",
  "sendAllowed" : "WRITE_ONLY"
}, {
  "process" : "Основное::OfficeToShop",
  "processDescription" : null,
  "channel" : "fromOffice",
  "channelDescription" : null,
  "sendAllowed" : "WRITE_ONLY"

} ]

Метод runtime

Метод GET. Формат вызова:

/sys/esb/runtime/channels

Возвращает аутентифицированной информационной системе описание каналов «1С:Шины» времени исполнения, которые этой информационной системе доступны.

Структура элемента списка:

process
Имя процесса интеграции в проекте
Примечание: Для совместимости с сервисами интеграции «1С:Предприятия» имя процесса интеграции не содержит имя разработчика и название проекта. Например, если полное имя процесса интеграции имеет вид ИмяКомпании::ИмяПроекта::Основное::OfficeToShop, то в описании каналов свойство process будет иметь значение Основное::OfficeToShop.
channel
Логическое имя канала, заданное в схеме процесса интеграции
destination
Идентификатор канала (имя очереди для подключения)
port
Порт брокера сервера «1С:Шины»

Пример запроса (cURL):

curl --request GET \
   --url http://localhost:9090/applications/My-Application/sys/esb/runtime/channels \
   --header "authorization: Bearer БИЛЕТ"

Пример результата:

{
  "items" : [ {
    "process" : "Основное::OfficeToShop",
    "channel" : "toShop",
    "destination" : "PUBLIC.VGVzdEFwcA==.-1.d34871f503c14792bd069cfde7e2caa8.toShop.shop"
  }, {
    "process" : "Основное::OfficeToShop",
    "channel" : "fromShop",
    "destination" : "PUBLIC.VGVzdEFwcA==.-1.d34871f503c14792bd069cfde7e2caa8.fromShop.shop"
  } ],
  "port" : 6698
}