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

Разработка дополнительных модулей, подключение различных приложений.

Модератор: immortal

Ответить
alex_090
Сообщения: 1
Зарегистрирован: Вт май 17, 2016 11:00 am
Благодарил (а): 0
Поблагодарили: 2 раза

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

Сообщение alex_090 » Чт май 19, 2016 12:58 pm

Решил я подружить свой самопальный контроллер (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 КБ) 4903 просмотра
В свойствах делаем привязку команд контроллера к объектам МД, в данном случае привязываемся к выключателям 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 КБ) 4903 просмотра
2.JPG
2.JPG (28.96 КБ) 4903 просмотра
За это сообщение автора alex_090 поблагодарили (всего 2):
Otto (Вс май 29, 2016 6:42 pm) • skysilver (Пт окт 20, 2017 9:32 pm)
Рейтинг: 2.33%
Аватара пользователя
foxvlad
Сообщения: 287
Зарегистрирован: Пн сен 22, 2014 3:18 pm
Откуда: Сочи
Благодарил (а): 78 раз
Поблагодарили: 78 раз
Контактная информация:

Re: Модуль TCP socket

Сообщение foxvlad » Пт окт 20, 2017 6:32 pm

Подскажите а на сколько сложно сделать то же самое только по UDP запросам?
Можно переделать или придется писать с нуля?
_Андрей
Сообщения: 1
Зарегистрирован: Пт ноя 03, 2017 7:14 pm
Благодарил (а): 1 раз
Поблагодарили: 0

Re: Модуль TCP socket

Сообщение _Андрей » Пт ноя 03, 2017 7:25 pm

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