Класс CommandReader

Просмотр 14 сообщений - с 1 по 14 (из 14 всего)
  • Автор
    Записи
  • #32258
    sergyltd
    Участник

    Здравствуйте
    Да, трудно объять необъятное. Пытаюсь разобраться в коде. Нашел такой вот класс -CommandReader. Насколько я понимаю, если в настройках стоит возможность читать команды из файла, то этот класс запускается при старте проекта и мониторит папку Cmd. Если увидит файл с расширением *.dat делает из него команду и загоняет ее в очередь.
    Но никак не могу найти какой формат этого файла? По аналогии с другими файлами это двоичный формат, не текст. А вот как зашифровать команду в этот файл? Подскажите где копать?

    #32267
    manjey73
    Участник

    Вообще не понятно зачем вам это нужно?
    Насколько помню, в папку Cmd попадали файлы для перезапуска линии, и подобного.
    Сейчас это можно делать кодом команды, часть из которых делают все то же самое.

    Вот только вчера вспоминали как выполнить внеочередной опрос устройства.
    Коды команд

    И вот @Romiros протестировал сегодня на примере Модуля автоуправления
    test MAU

    #32268
    manjey73
    Участник

    В том числе можно создать расчетный канал и либо явно указать устройство, линию. Либо вводить ее как обычную команду.
    То же давненько тестировал.

    #32283
    Mikhail
    Модератор

    Добрый день!
    Команды, отправляемые через интерфейс Администратора, записываются в файлы. Без явной необходимости лучше файлами не пользоваться. Чтобы точно узнать формат, создайте экземпляр класса TeleCommand и вызовите метод Save(…)

    Ссылка на код.

    • Ответ изменён 2 года, 3 месяца назад пользователем Mikhail.
    #32289
    sergyltd
    Участник

    Здравствуйте
    Спасибо за пояснения. Я просто озаботился написать какой-нибудь модуль для отправки оповещений через e-mail,|| telegram,||sms без использования модуля автоуправления. Но если честно, такой объем инфо чтоб разобраться что и как работает, что в голове сумбур и не определюсь с чего начать. Изучаю исходный код, пытаюсь определить свой путь. Хочется попроще вариант найти, но чтоб работал. И далеко не все понимаю. Поэтому надеюсь и в дальнейшем на вашу помощь.
    Вот и сейчас, понял что отсылать команды через файлы не рекомендуется, а вот почему не понял.

    #32297
    JurasskPark
    Участник

    Я когда что-то не понимаю, я рисую. 🙂
    Мы же тоже не понимаем, что вы автоматизируете, какое оборудование, что вы хотите в итоге.

    Нарисуйте блок-схему что и как будет. 🙂

    #32298
    manjey73
    Участник

    @sergyltd так вам не надо через файлы отправлять, там же можно в своем коде указывать каналы, устройства и т.д. для отправки.
    А сервер уже сам все сделает.

    Не разбирался сильно, тут может @Romiros быстрее подскажет. Из драйверов и модулей вроде это доступно.

    По идее вам нужен шаблон создавать и настраивать, в котором будете указывать каналы, устройства и т.д. что отправлять, по аналогии с МАУ.
    Ну и учитывайте некоторый подход, если ваш модуль будет выполнять аналогичные МАУ действия, то он либо только ваш для внутреннего использования, либо тоже платный.
    Как-то так.

    #32301
    Mikhail
    Модератор

    просто озаботился написать какой-нибудь модуль для отправки оповещений через e-mail,|| telegram,||sms без использования модуля автоуправления

    Это плохая идея, потому что продажа лицензий на дополнительные модули помогает развивать проект Rapid SCADA.

    #32314
    sergyltd
    Участник

    @JurasskPark Нарисуйте блок-схему что и как будет.

    Вот я и хочу уложить в голове что и куда для того чтоб сделать блоксхему. Конечно хочется максимальное количество кода скопировать, и минимальное дописать.
    А вот откуда скопировать и куда вставить не до конца понимаю.

    #32315
    sergyltd
    Участник

    @manjey73 По идее вам нужен шаблон создавать и настраивать, в котором будете указывать каналы, устройства и т.д. что отправлять, по аналогии с МАУ.

    Вот думаю. А если сделать скриптом? Ну приблизительно так —
    Telecommand myCmd = new Telecommand();
    myCmd.DeviceNum=1;
    ……………..
    myCmd.Save();
    А в канал формулу типа если ==1, то делай скрипт.
    Вот не пробовал, будет работать?

    #32316
    sergyltd
    Участник

    @Mikhail Это плохая идея, потому что продажа лицензий на дополнительные модули помогает развивать проект Rapid SCADA.

    Теоретически я с вами согласен. Но все-таки каждая идея имеет свою цену. Если б я АСУчивал Арктик СПГ, то даже мыслей бы не появилось про писание кода. Купил бы модулей 100 и все в порядке. В моем случае, на сегодняшний день чистый мониторинг. Командовать нечем. Убедить руководство что надо купить МАУ ради отсылки пары сообщений в неделю не реально. А тем не менее загнать эту пару сообщений в телеграм хочется.
    Вот если бы модуль Notify стоил бы в 2 раза дороже, но при этом отсылал бы почту и телеграм, то тоже не стал бы париться.

    #32329
    Mikhail
    Модератор

    Периодически бывает, что руководство выделяет сотруднику немного наличных, чтобы обойти долгие процедуры закупки. Приобретая модуль, экономится время сотрудника, которое стоит намного дороже.

    #32338
    sergyltd
    Участник

    Ой как все в этом мире относительно. И мое время тоже. Я уже писал, что на сегодняшний день занимаюсь игрушками — делаю различные проекты, которые ВОЗМОЖНО пригодятся в дальнейшем. В рамках своих игрушек оцениваю возможности и стоимости различных вариантов, перспективы возможных изменений и дополнений.
    Поэтому вопрос что лучше купить телеграмм + МАУ + нотификатор или ограничиться просто нотификатором или …. остается открытым. Тфк же как и вопрос — стоит ли вобще использовать опенсорс.
    Но пока есть возможность поиграть, хочется оторваться по полной.

    #32340
    manjey73
    Участник

    Ну из мастхэв пожалуй это МАУ (но со сложными алгоритмами привет скрипты)
    Графики Про и Telegram
    Остальное по вкусу и необходимости. Например для частного использования дома Карты не нужны, что там показывать на карте? один собственный дом что ли? 🙂

Просмотр 14 сообщений - с 1 по 14 (из 14 всего)
  • Для ответа в этой теме необходимо авторизоваться.