Страница 1 из 1

[Модуль] TCP socket (TCP_socket)

Добавлено: Чт май 19, 2016 12:58 pm
alex_090
Решил я подружить свой самопальный контроллер (STM32+EPS8266) с МД. Да вот беда - команды передаются и принимаются этим контроллером не HTTP запросами (делал как можно проще) а просто отправкой/приемом в открытый сокет команд типа LOAD1_ON (вкл. нагрузку на 1-м канале), LOAD1_OFF (выкл. нагрузку на 1-м канале), SWITCH1_ON (выключатель 1-го канала замкнут) и т.д. Поискал что-то готовое - не нашел, решил написать свой модуль.

Итак основные задачи которые должен выполнять модуль:
1. Создание, открытие и поддержание в открытом состоянии TCP/IP сокетов на указанном IP и порте (режим клиент)
2. Возможность привязки своих произвольных команд контроллера к свойствам объектов созданных в МД

Модуль находится на стадии тестирования.
Скачать можно здесь
Кратко про настройку модуляПоказать
Добавляем новый сокет, указываем IP и порт TCP сервера к которому будем подключаться (наш контроллер)
1.JPG
1.JPG (34.38 КБ) 5168 просмотров
В свойствах делаем привязку команд контроллера к объектам МД, в данном случае привязываемся к выключателям SW1, SW2...
Поле "Название" содержит команды которые понимает наш контроллер. Команды могут быть абсолютно любые лишь бы их воспринимал ваш контроллер.
Поле "Значение" содержит строки типа SET(1), SET(0), GET(1), GET(0).
SET(1) означает что когда связанное свойство (status) связанного объекта (SW1) будет равно 1 (тому что в скобках после SET) в сокет отправится команда из поля "Название" (LOAD1_ON). Аналогично для SET(0).
GET(1) означает что когда от контроллера поступит команда из поля "Название" (SWITCH1_ON) значение связанного свойства (status) связанного объекта (SW1) изменится на 1, то есть выключатель SW1 перейдет во включенное положение на сцене например. Аналогично для GET(0), выключатель SW1 перейдет в выключенное положение.
3.JPG
3.JPG (79.02 КБ) 5168 просмотров
2.JPG
2.JPG (28.96 КБ) 5168 просмотров

Re: Модуль TCP socket

Добавлено: Пт окт 20, 2017 6:32 pm
foxvlad
Подскажите а на сколько сложно сделать то же самое только по UDP запросам?
Можно переделать или придется писать с нуля?

Re: Модуль TCP socket

Добавлено: Пт ноя 03, 2017 7:25 pm
_Андрей
Можно получить ли таблицы для Mysql?
Понадобилось выявлять обращение китайской камеры к почтовому серверу, не хочу давать товарищам возможность выходить на мой аккаунт, а буду перенаправлять обращения на МДМ по определенному адресу. Далее по этому же тревожному сигналу скрипт будет сохранять картинки на сервере. Все просто, только нужно вылавливать обращение по TCP. Сейчас от камеры они идут на десяток китайских серверов, возвращаются обратно, и камера пытается авторизоваться на моем сервере. Это ей не удается и операция завершается.
Если расскажете, как подключить модуль и дадите таблицы, буду премного благодарен.