Плагин предназначен для работы с UDP сокетами компьютера. И он позволяет:
- Работать в режиме сервера. Открыть порт для перехвата всех входящих датаграммов (данные + данные об отправителе)
- Работать в режиме клиента.
- Передавать данные между ПК.
- Передавать данные между программами в ПК используя “localhost”.
После подключения плагина у нас появляется объект с указанным нами именем. Например у нас два сокета UDP1 UDP2.

Сокет Udp может работать в двух режимах:
- Клиента. Общаться с одним сокетом.
- Сервера. Обработка всех датаграммов.
При работе в режиме клиента нам нужно установить соединение с помощью функции connectToHost(“адрес”,порт).
После чего при поступлении данных от указанного адреса, у нас будет вызываться функция readDataUdpSocket(“имя объекта”). При этом способе все данные аккумулируются в одном буфере и могут быть считаны.
При работе в режиме сервера происходит обработка всех датаграммов(данные + данные отправителя). Будет вызываться функция readDatagramUdpSocket(“имя объекта”). При этом все датаграммы хранятся отдельно и последовательно считываются.
Пример:
У нас есть два сокета.
UDP1 – сервер, слушает порт 2026
UDP2 – клиент
Открываем прослушивание порта 2026 для UDP1. И соединяем UDP2 с UDP1.
function ON()
{ //добавляем 2 строки
UDP1.bind(2026)
UDP2.connectToHost("localhost",2026)
}
Отправка сообщения
function senMessage() //отправляем сообщение на сервер
{
DSTREAM.clear() //очищаем
DSTREAM.writeString("Happy New Year!") //добавляем строку
DSTREAM.writeInt16(2026) //добавляем число типа int 16 бит
SCRIPT.console("send Serial: "+ UDP2.sendData(DSTREAM.getData())) //отправляем в UDP1
}
Чтение сообщений UDP1.
function readDatagramUdpSocket(name) //обрабатываем данные на сервере
{
console("readDatagramUdpSocket "+name)
if(name == "UDP1")
{
var datagram = UDP1.readDatagramObj();
DSTREAM.clear()
DSTREAM.setData(datagram.data); //устанавливаем данные в поток DSTREAM
SCRIPT.console("ip:"+datagram.ip+" port:"+datagram.port);
SCRIPT.console("from UDP: "+DSTREAM.readString()+" "+DSTREAM.readInt16())//читаем сначала строку, затем число. как и при отправке.
SCRIPT.console("send to"+UDP1.writeDatagram(DSTREAM.getData(),datagram.ip,datagram.port)) // отправляем ответ
}
}
function readDataUdpSocket(name) //обрабатываем данные от сервера
{
console("readDataUdpSocket "+name)
if(name==UDP2)
{
UDP2.readAll()
}
}
Вывод в консоль:
ip:127.0.0.1 port:58476 //пришёл датаграмм на сервер
from UDP: Happy New Year! 2026 //данные которые пришли
send to:true // отправляем ответ клиенту
readDataUdpSocket UDP2 //клиент, обработка ответа от сервера

