Стартовая страница › Форумы › Разработка и интеграция › Класс CommandReader
- В этой теме 13 ответов, 4 участника, последнее обновление 2 года, 3 месяца назад сделано
manjey73.
-
АвторЗаписи
-
16.04.2024 в 18:33 #32258
sergyltdУчастникЗдравствуйте
Да, трудно объять необъятное. Пытаюсь разобраться в коде. Нашел такой вот класс -CommandReader. Насколько я понимаю, если в настройках стоит возможность читать команды из файла, то этот класс запускается при старте проекта и мониторит папку Cmd. Если увидит файл с расширением *.dat делает из него команду и загоняет ее в очередь.
Но никак не могу найти какой формат этого файла? По аналогии с другими файлами это двоичный формат, не текст. А вот как зашифровать команду в этот файл? Подскажите где копать?17.04.2024 в 09:28 #32267
manjey73УчастникВообще не понятно зачем вам это нужно?
Насколько помню, в папку Cmd попадали файлы для перезапуска линии, и подобного.
Сейчас это можно делать кодом команды, часть из которых делают все то же самое.Вот только вчера вспоминали как выполнить внеочередной опрос устройства.
Коды командИ вот @Romiros протестировал сегодня на примере Модуля автоуправления
17.04.2024 в 09:29 #32268
manjey73УчастникВ том числе можно создать расчетный канал и либо явно указать устройство, линию. Либо вводить ее как обычную команду.
То же давненько тестировал.17.04.2024 в 12:26 #32283
MikhailМодераторДобрый день!
Команды, отправляемые через интерфейс Администратора, записываются в файлы. Без явной необходимости лучше файлами не пользоваться. Чтобы точно узнать формат, создайте экземпляр класса TeleCommand и вызовите метод Save(…)Ссылка на код.
-
Ответ изменён 2 года, 3 месяца назад пользователем
Mikhail.
17.04.2024 в 21:46 #32289
sergyltdУчастникЗдравствуйте
Спасибо за пояснения. Я просто озаботился написать какой-нибудь модуль для отправки оповещений через e-mail,|| telegram,||sms без использования модуля автоуправления. Но если честно, такой объем инфо чтоб разобраться что и как работает, что в голове сумбур и не определюсь с чего начать. Изучаю исходный код, пытаюсь определить свой путь. Хочется попроще вариант найти, но чтоб работал. И далеко не все понимаю. Поэтому надеюсь и в дальнейшем на вашу помощь.
Вот и сейчас, понял что отсылать команды через файлы не рекомендуется, а вот почему не понял.18.04.2024 в 11:00 #32297
JurasskParkУчастникЯ когда что-то не понимаю, я рисую. 🙂
Мы же тоже не понимаем, что вы автоматизируете, какое оборудование, что вы хотите в итоге.Нарисуйте блок-схему что и как будет. 🙂
18.04.2024 в 11:21 #32298
manjey73Участник@sergyltd так вам не надо через файлы отправлять, там же можно в своем коде указывать каналы, устройства и т.д. для отправки.
А сервер уже сам все сделает.Не разбирался сильно, тут может @Romiros быстрее подскажет. Из драйверов и модулей вроде это доступно.
По идее вам нужен шаблон создавать и настраивать, в котором будете указывать каналы, устройства и т.д. что отправлять, по аналогии с МАУ.
Ну и учитывайте некоторый подход, если ваш модуль будет выполнять аналогичные МАУ действия, то он либо только ваш для внутреннего использования, либо тоже платный.
Как-то так.18.04.2024 в 14:14 #32301
MikhailМодераторпросто озаботился написать какой-нибудь модуль для отправки оповещений через e-mail,|| telegram,||sms без использования модуля автоуправления
Это плохая идея, потому что продажа лицензий на дополнительные модули помогает развивать проект Rapid SCADA.
18.04.2024 в 18:39 #32314
sergyltdУчастник@JurasskPark Нарисуйте блок-схему что и как будет.
Вот я и хочу уложить в голове что и куда для того чтоб сделать блоксхему. Конечно хочется максимальное количество кода скопировать, и минимальное дописать.
А вот откуда скопировать и куда вставить не до конца понимаю.18.04.2024 в 18:50 #32315
sergyltdУчастник@manjey73 По идее вам нужен шаблон создавать и настраивать, в котором будете указывать каналы, устройства и т.д. что отправлять, по аналогии с МАУ.
Вот думаю. А если сделать скриптом? Ну приблизительно так —
Telecommand myCmd = new Telecommand();
myCmd.DeviceNum=1;
……………..
myCmd.Save();
А в канал формулу типа если ==1, то делай скрипт.
Вот не пробовал, будет работать?18.04.2024 в 19:06 #32316
sergyltdУчастник@Mikhail Это плохая идея, потому что продажа лицензий на дополнительные модули помогает развивать проект Rapid SCADA.
Теоретически я с вами согласен. Но все-таки каждая идея имеет свою цену. Если б я АСУчивал Арктик СПГ, то даже мыслей бы не появилось про писание кода. Купил бы модулей 100 и все в порядке. В моем случае, на сегодняшний день чистый мониторинг. Командовать нечем. Убедить руководство что надо купить МАУ ради отсылки пары сообщений в неделю не реально. А тем не менее загнать эту пару сообщений в телеграм хочется.
Вот если бы модуль Notify стоил бы в 2 раза дороже, но при этом отсылал бы почту и телеграм, то тоже не стал бы париться.19.04.2024 в 14:35 #32329
MikhailМодераторПериодически бывает, что руководство выделяет сотруднику немного наличных, чтобы обойти долгие процедуры закупки. Приобретая модуль, экономится время сотрудника, которое стоит намного дороже.
19.04.2024 в 16:16 #32338
sergyltdУчастникОй как все в этом мире относительно. И мое время тоже. Я уже писал, что на сегодняшний день занимаюсь игрушками — делаю различные проекты, которые ВОЗМОЖНО пригодятся в дальнейшем. В рамках своих игрушек оцениваю возможности и стоимости различных вариантов, перспективы возможных изменений и дополнений.
Поэтому вопрос что лучше купить телеграмм + МАУ + нотификатор или ограничиться просто нотификатором или …. остается открытым. Тфк же как и вопрос — стоит ли вобще использовать опенсорс.
Но пока есть возможность поиграть, хочется оторваться по полной.19.04.2024 в 16:52 #32340
manjey73УчастникНу из мастхэв пожалуй это МАУ (но со сложными алгоритмами привет скрипты)
Графики Про и Telegram
Остальное по вкусу и необходимости. Например для частного использования дома Карты не нужны, что там показывать на карте? один собственный дом что ли? 🙂 -
Ответ изменён 2 года, 3 месяца назад пользователем
-
АвторЗаписи
- Для ответа в этой теме необходимо авторизоваться.
