Клиент 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 Тогда
Сообщить("Сейчас подключено к серверу: " + Клиент.Сервер);
КонецЕсли;
|