Плагин MegaD



  • Версия 1.1.10 была выпущена в январе 2019г.
    Версия 1.1.13 вышла в марте 2019г.
    После этого обновлений плагина не было.
    Как нам понять, почему с тех пор проблемы с плагином не было, а сейчас появилась? И, судя по всему, только у Вас. Помогите нам разобраться.

    Плагин не считывает и не меняет настройки на MegaD. Это изначально был наш принципиальный поход в работе с MegaD.

    Сейчас у Вас работают все порты (15,17,18,20,19,21) и не работает 16 порт. Попробуйте поменять его местами с любым работающим.

    Самый надежный способ обнаружения проблемы, это сниффер. Проблема у Вас повторяется и найти ее с помощью сниффера можно.



  • Перечитал эту ветку с Вашей проблемой и обнаружил следующее:
    Участник @Erik написал в Плагин MegaD:

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

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

    Участник @Erik написал в Плагин MegaD:

    Проблема с сервером Intrahouse.
    Прошу разобраться.

    Это довольно странное заключение.
    Тем не менее мы готовы разобраться с этой ситуацией. Но для этого нам необходима информация от сниффера, где видно что плагин отправляет команды на MegaD на перенастройку порта.



  • Вы от меня многого хотите.
    Достаточно того, что:

    1. Без сервера мега работает отлично.
    2. С мажордомо мега работает без поблемы.
    3. Со старой версией плагина IH мега работает отлично.

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

    Если вам интересно, прошивку я вчера на прежнюю тоже менял. Не помогло.



  • Можно констатировать - причина проблемы не найдена.
    Когда (и если) у кого-то из пользователей MegaD возникнет подобная проблема, надеемся, он поможет нам докопаться до истины 🙂



  • @intrapro
    Доказано, что проблема - в плагине последней версии.
    А то, как вы ее отрабатываете - отдельная тема.



  • Участник @Erik написал в Плагин MegaD:

    Доказано, что проблема - в плагине последней версии.

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

    Участник @Erik написал в Плагин MegaD:

    Вы от меня многого хотите.

    По другому мы не сможем помочь Вам.
    Проблема только у Вас. На одном контроллере (другой работает), с одним портом (остальные работают).
    Как по Вашему мы должны решать Ваш вопрос?



  • Главный вопрос, почему больше по вышеуказанной проблеие не кто не пишет? А- Не так настроена конфигурация. Б- Проблемы отсутствуют.
    Пользователи IH и Megad, давайте поможем разобраться с этим вопросом. Я завтра вечером еще раз

    Участник @Erik написал в Плагин MegaD:

    @artem521
    alt text

    alt text

    alt text

    alt text

    alt text

    Главный вопрос, почему больше по вышеуказанной проблеие не кто не пишет? А- Не так настроена конфигурация. Б- Проблемы отсутствуют.
    Пользователи IH и Megad, давайте поможем разобраться с этим вопросом. Я завтра вечером еще раз попробую настроить конфиг.



  • Участник @intrahouse написал в Плагин MegaD:

    Участник @Erik написал в Плагин MegaD:

    Доказано, что проблема - в плагине последней версии.

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

    Участник @Erik написал в Плагин MegaD:

    Вы от меня многого хотите.

    По другому мы не сможем помочь Вам.
    Проблема только у Вас. На одном контроллере (другой работает), с одним портом (остальные работают).
    Как по Вашему мы должны решать Ваш вопрос?

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

    Видимо, смотреть нужно что-то еще. Не только TCP, например.
    Если ваши шаги не приносят результатов - это значит, что ваши шаги для этой проблемы не подходят.

    А идея получить от пользователя причину, и только в этом случае начать что-то делать - желание понятное.

    Вы же даже лог изменений плагинов не показываете, чтобы пользователю было хоть немного понятно, где искать.
    Могу только сказать, что в версии плагина 1.1.10 ошибка не возникает.
    Ищите в том, что меняли.



  • Вчера выполняя указания Dev увидел, что и в версии 1.1.10 порт 16 переключился в режим P.
    Это не сказалось на работоспособности потому, что проставился чекбокс рядом с установкой режима.

    Соответственно, номера версии работающего без ошибки плагина нет.

    Но есть такой вопрос. У меня в настройках обоих контроллеров "имя скрипта" пустое, и расширения в плагине тоже не содержат имени скрипта.

    Это не может влиять?



  • Имя скрипта MegaD отправляет в запросе перед отправкой параметров (перед знаком вопроса):

    То есть:
    имя скрипта = megad.php --> запрос будет /megad.php?pt=16
    имя скрипта пустое --> запрос будет /?pt=16

    То есть пустое имя скрипта - это нормальный рабочий вариант



  • Добрый день, можно как то дать запрос на мегу чтобы узнать статус реле, включено или выключено реле? У меня внешние ролокасети на 3 провода (1 общий, 2,3 верх, низ). Хочу что бы Ih помнил статус (последние действие), проверял или реле активно у меня сейчас работает без обратной связи а ето не удобно. У меня реализировано команду устройству.



  • @amgstone

    Создайте кнопку.
    В ней выбирете "команда плагина", выберите свою мегу и напишите эту команду.
    /%pwd%/?cmd=all
    вместо pwd - свой пароль на меге.
    Кнопка будет обновлять состояния всех каналов этой меги.



  • @Erik у маня созданы ACTOR для каждой ролокасети, можно как то чтобы в ACTORе обновлялось состояние, нету описания на эту тему. Чтобы использовать эти значения в сценарии.
    Ну и у меня открытие и закрытие подключено к 2 разных реле через: ```

    this.pluginCommand({unit:'megad3', command:'/258/?cmd='+jalusi.getParam('point_open')+':1;p200;'+jalusi.getParam('point_open')+':0'});
    

    ну и по аналогии закрытие
    Вопрос как мне с 2 реле собрать информацию в одном акторе чтобы видеть последнее состояния с реле, чтобы ІН знал жалюзя сейчас открыта или закрыта, нету обратной связи.

    скрипт

    /** 
    * @name Новый мультисценарий 
    * @desc  
    * @version 4 
    */
    const switch_1 = Device("ActorE","Switch");
    const jalusi = Device("ActorD","Actor",[
        {"name":"point_open", "note":"Пін відкриття", "type":"number", "val":15},
        {"name":"point_close", "note":"Пін закриття", "type":"number", "val":16}
      ]);
    
    startOnChange([switch_1,jalusi]); 
    
    script({
        start() {
          if(this.isChanged(switch_1)){
            this.onSwitch();
          }
          if(this.isChanged(jalusi)){
            this.onJalusi();
          }
        },
        onSwitch(){
          switch(switch_1.value){
              case 0:
                if(jalusi.id === "ACTOR7"){
                  jalusi.on();
                  this.pluginCommand({unit:'megad3', command:'/258/?cmd='+jalusi.getParam('point_open')+':1;p200;'+jalusi.getParam('point_open')+':0'});
                }
                if(jalusi.id === "ACTOR8"){
                  //this.pluginCommand({unit:'megad2', command:'/258/?cmd='+jalusi.getParam('point_open')+':1;p210;'+jalusi.getParam('point_open')+':0'});
                }
                if(jalusi.id === "ACTOR9"){
                  //this.pluginCommand({unit:'megad2', command:'/258/?cmd='+jalusi.getParam('point_open')+':1;p230;'+jalusi.getParam('point_open')+':0'});
                }
              break;
              case 1:
                //this.pluginCommand({unit:'megad3', command:'/258/?cmd='+jalusi.getParam('point_open')+':0;'+jalusi.getParam('point_close')+':0'});
              break;
              case 2:
                if(jalusi.id === "ACTOR7"){
                  jalusi.off();
                  this.pluginCommand({unit:'megad3', command:'/258/?cmd='+jalusi.getParam('point_close')+':1;p200;'+jalusi.getParam('point_close')+':0'});
                }
                if(jalusi.id === "ACTOR8"){
                  jalusi.off();
                  this.pluginCommand({unit:'megad2', command:'/258/?cmd='+jalusi.getParam('point_close')+':1;p210;'+jalusi.getParam('point_close')+':0'});
                }
                if(jalusi.id === "ACTOR9"){
                  this.startTimer('T1', 30, 'turnAllOff');
                }
              break;
            }
            this.log('Жалюзі статус : '+switch_1.value+' '+jalusi.id);
        },
        turnAllOff(){
          jalusi.off();
          this.pluginCommand({unit:'megad2', command:'/258/?cmd='+jalusi.getParam('point_close')+':1;p240;'+jalusi.getParam('point_close')+':0'});
          this.exit();
        },
        onJalusi(){
          //this.log(this.isChanged(jalusi)+' 38 line');
          if(jalusi.isOn()){
            //this.log('jalusi On');
            if(jalusi.id === "ACTOR7"){
              this.pluginCommand({unit:'megad3', command:'/258/?cmd='+jalusi.getParam('point_open')+':1;p200;'+jalusi.getParam('point_open')+':0'});
            }
            if(jalusi.id === "ACTOR8"){
              this.pluginCommand({unit:'megad2', command:'/258/?cmd='+jalusi.getParam('point_open')+':1;p210;'+jalusi.getParam('point_open')+':0'});
            }
            if(jalusi.id === "ACTOR9"){
              this.pluginCommand({unit:'megad2', command:'/258/?cmd='+jalusi.getParam('point_open')+':1;p240;'+jalusi.getParam('point_open')+':0'});
            }
          }else{
            //this.log('jalusi Off');
            if(jalusi.id === "ACTOR7"){
              this.pluginCommand({unit:'megad3', command:'/258/?cmd='+jalusi.getParam('point_close')+':1;p200;'+jalusi.getParam('point_close')+':0'});
            }
            if(jalusi.id === "ACTOR8"){
              this.pluginCommand({unit:'megad2', command:'/258/?cmd='+jalusi.getParam('point_close')+':1;p210;'+jalusi.getParam('point_close')+':0'});
            }
            if(jalusi.id === "ACTOR9"){
              this.pluginCommand({unit:'megad2', command:'/258/?cmd='+jalusi.getParam('point_close')+':1;p240;'+jalusi.getParam('point_close')+':0'});
            }
          }
          this.exit();
        }
    });
    

    а так в админке http://joxi.ru/DmBRwpQSJvnMNm



  • В этом же скрипте после действия присвойте атуатору нужное значение.
    После каждого действия присвоение соответствующего значения.
    Актуатор будет всегда иметь значение, соответствующее последнему действию.



  • версию 1.1.14 убрали?
    Обновление предлагается на 1.1.13 сегодня.
    alt text



  • Участник @Erik написал в Плагин MegaD:

    версию 1.1.14 убрали?

    Версия 1.1.14 была сделана для тестирования и официально еще не публиковалась.
    При желании ее можно взять на гитхабе.



  • Значит это нервное уже.
    А что в ней нового?



  • @Erik можете подсказать что дописать?



  • После открытия
    Actor.On();
    после закрытия
    Actor.Off();

    Вместо Actor - название нужного актуатора.



  • Участник @Erik написал в Плагин MegaD:

    А что в ней нового?

    В версии v1.1.14 изменение только для параметра канала
    "Использовать функцию обработки при получении данных от контроллера"

    Ранее функция была привязана к номеру порта контроллера, теперь - к идентификатору канала, чтобы это работало для расширенных портов (MCP, I2C)

    Сегодня на github планируем выложить версию v1.1.15, в которой будет:

    1. Решение для одновременной сработки датчиков, подключенных к MCP
      (модуль MegaD-16I-XT)

    2. Возможность обработать в сценарии ответ от контроллера для команды pluginCommand

    Также на github выложен список изменений плагина за этот год :
    https://github.com/intrahouseio/intraHouse.plugin-MegaD файл CHANGELOG


Авторизуйтесь, чтобы ответить