Клиент WebSocket

Инициализация

Новый("AddIn.WebSocket.Client");

Синоним: New()

Инициализация внешнего компонента (Клмент). Полученный таким образом объект используется для дальнейшего взаимодействия.

Пример использования:

1
 Клиент = Новый("AddIn.WebSocket.Client");

Подключение к серверу

Подключиться(АдресСервера)

Синоним: Connect()

Выполняет подключение к серверу, блокируется вызов до решения о подключение. Состояние подключения можно определить свойством Статус

После подключение прием и отправка сообщений выполняется в фоновом режиме соответствующими методами Получить и Отправить.

Параметры:

АдресСервера - Строка - Полный адрес сервера с протоколом и портом, например wss://echo.websocket.org

Пример использования:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
 АдресСервера = "wss://echo.websocket.org";

     Попытка
             Клиент.Подключиться(АдресСервера);
     Исключение

             Описание = ОписаниеОшибки();
             ТекстОшибки =  Клиент.ОписаниеОшибки();

             ТекстОписания = Описание + ": " + ТекстОшибки;

             ВызватьИсключение ТекстОписания;

     КонецПопытки;

Отключение от сервера

Отключиться()

Синоним: Disconnect()

Выполняет отключение от сервера.

Пример использования:

1
 Клиент.Отключиться();

Отправка сообщения

Отправить(ТелоСообщения)

Синоним: Send()

Добавляет сообщение для фоновой отправки клиенту

Параметры:

ТелоСообщения - Строка - Тело отправляемого сообщения

Пример использования:

1
2
3
 ТелоСообщения = "Hello World 1C";

 Сервер.Отправить(ТелоСообщения);

Получение сообщения

Получить(Таймаут, Данные)

Синоним: Receive()

Получает принятое сообщение в фоновом режиме, если сообщений нет ждет Таймаут миллисекунд, или ждет до появления сообщения, если Таймаут=0

Возвращаемое значение:

Тип: Булево

Описание: Признак принятия сообщения. Истина, если сообщение принято

Параметры:

Таймаут - Число - Количество миллисекунд, на которое заблокировать вызов и ожидать сообщения. Если 0 - ждать бесконечно.

Данные - Строка - Полученные данные

Пример использования:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
 Таймаут = 0;
 Данные = "";

 // Постоянный цикл принятие сообщений
 Пока Клиент.Принять(Таймаут, Данные) Цикл

     Сообщить("Принят пакет данных:");
     Сообщить(Данные);

 КонецЦикла;

 Таймаут = 3000;

 // Ждем 3 секунды, если не принято сообщений исполнение кода продолжается
 Пока Клиент.Принять(Таймаут, Данные) Цикл

     Сообщить("Принят пакет данных:");
     Сообщить(Данные);

 КонецЦикла;

 Сообщить("Закончен прием сообщений");

Статус

Статус

Синоним: Status

Возвращаемое значение:

Тип: Число

Описание: Текущий статус подключения

-1 - Ошибка подключения

0 - Не подключено

1 - Подключено

Пример использования:

1
2
3
 Если Клиент.Статус = 1 Тогда
     // Можно выполнять отправку данных
 КонецЕсли;

Сервер

Сервер

Синоним: Server

Возвращаемое значение:

Тип: Строка

Описание: Хранит адрес текущего соединения

Пример использования:

1
2
3
 Если Клиент.Сервер = 1 Тогда
     Сообщить("Сейчас подключено к серверу: " + Клиент.Сервер);
 КонецЕсли;