Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. FelixCrafter83

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Profile
    • Following 0
    • Followers 0
    • Topics 1
    • Posts 19
    • Best 6
    • Groups 1

    FelixCrafter83

    @FelixCrafter83

    Starter

    7
    Reputation
    19
    Profile views
    19
    Posts
    0
    Followers
    0
    Following
    Joined Last Online

    FelixCrafter83 Follow
    Starter

    Best posts made by FelixCrafter83

    • RE: ioBroker-Windows Steuerung

      @liv-in-sky Das habe ich jetzt auch gemacht.

      Ich wollte das sowieso machen, aber ich bin nicht so schnell.

      Die EXE habe ich mit pyinstaller gemacht.

      Ich hoffe es ist alles gepuplished was benötigt wird.
      Viel Spaß damit es auzuprobieren und es zu modifizieren, falls erwünscht.

      Hier der Link zum Repo: https://github.com/felixcrafter54/message-client

      posted in ioBroker Allgemein
      FelixCrafter83
      FelixCrafter83
    • RE: Adapter für Ecoflow Einbindung

      Ich habe heute etwas rumgetüftelt und habe die Proto files in der App gefunden.
      nur sind die komisch codiert, ich habe dann chatgpt zur hilfe genommen, das mir dann es in klartext ausgegeben hat.
      Jetzt ist die Frage, ob jemand weiß, wie man von der einen darstellung auf die klartext dartstellung kommt:

      Hier mal das, was ich in der App gefunden habe:

       \n\u0016wn511_socket_sys.proto\"\u00ca\u0001\n\brtc_data\u0012\u0011\n\u0004week\u0018\u0001 \u0001(\u0005H\u0000\u0088\u0001\u0001\u0012\u0010\n\u0003sec\u0018\u0002 \u0001(\u0005H\u0001\u0088\u0001\u0001\u0012\u0010\n\u0003min\u0018\u0003 \u0001(\u0005H\u0002\u0088\u0001\u0001\u0012\u0011\n\u0004hour\u0018\u0004 \u0001(\u0005H\u0003\u0088\u0001\u0001\u0012\u0010\n\u0003day\u0018\u0005 \u0001(\u0005H\u0004\u0088\u0001\u0001\u0012\u0012\n\u0005month\u0018\u0006 \u0001(\u0005H\u0005\u0088\u0001\u0001\u0012\u0011\n\u0004year\u0018\u0007 \u0001(\u0005H\u0006\u0088\u0001\u0001B\u0007\n\u0005_weekB\u0006\n\u0004_secB\u0006\n\u0004_minB\u0007\n\u0005_hourB\u0006\n\u0004_dayB\b\n\u0006_monthB\u0007\n\u0005_year\"\u009e\u0001\n\u0013time_range_strategy\u0012\u0011\n\tis_config\u0018\u0001 \u0001(\b\u0012\u0011\n\tis_enable\u0018\u0002 \u0001(\b\u0012\u0011\n\ttime_mode\u0018\u0003 \u0001(\u0005\u0012\u0011\n\ttime_data\u0018\u0004 \u0001(\u0005\u0012\u001d\n\nstart_time\u0018\u0005 \u0001(\u000b2\t.rtc_data\u0012\u001c\n\tstop_time\u0018\u0006 \u0001(\u000b2\t.rtc_data\"\u001f\n\u0010plug_ack_message\u0012\u000b\n\u0003ack\u0018\u0001 \u0001(\r\"\u00a5\u0004\n\u0013plug_heartbeat_pack\u0012\u0015\n\berr_code\u0018\u0001 \u0001(\rH\u0000\u0088\u0001\u0001\u0012\u0016\n\twarn_code\u0018\u0002 \u0001(\rH\u0001\u0088\u0001\u0001\u0012\u0014\n\u0007country\u0018\u0003 \u0001(\rH\u0002\u0088\u0001\u0001\u0012\u0011\n\u0004town\u0018\u0004 \u0001(\rH\u0003\u0088\u0001\u0001\u0012\u0014\n\u0007max_cur\u0018\u0005 \u0001(\u0005H\u0004\u0088\u0001\u0001\u0012\u0011\n\u0004temp\u0018\u0006 \u0001(\u0005H\u0005\u0088\u0001\u0001\u0012\u0011\n\u0004freq\u0018\u0007 \u0001(\u0005H\u0006\u0088\u0001\u0001\u0012\u0014\n\u0007current\u0018\b \u0001(\u0005H\u0007\u0088\u0001\u0001\u0012\u0011\n\u0004volt\u0018\t \u0001(\u0005H\b\u0088\u0001\u0001\u0012\u0012\n\u0005watts\u0018\n \u0001(\u0005H\t\u0088\u0001\u0001\u0012\u0013\n\u0006switch\u0018\u000b \u0001(\bH\n\u0088\u0001\u0001\u0012\u0017\n\nbrightness\u0018\f \u0001(\u0005H\u000b\u0088\u0001\u0001\u0012\u0016\n\tmax_watts\u0018\r \u0001(\u0005H\f\u0088\u0001\u0001\u0012 \n\u0013heartbeat_frequency\u0018\u000e \u0001(\u0005H\r\u0088\u0001\u0001\u0012\u0018\n\u000bmesh_enable\u0018\u000f \u0001(\u0005H\u000e\u0088\u0001\u0001B\u000b\n\t_err_codeB\f\n\n_warn_codeB\n\n\b_countryB\u0007\n\u0005_townB\n\n\b_max_curB\u0007\n\u0005_tempB\u0007\n\u0005_freqB\n\n\b_currentB\u0007\n\u0005_voltB\b\n\u0006_wattsB\t\n\u0007_switchB\r\n\u000b_brightnessB\f\n\n_max_wattsB\u0016\n\u0014_heartbeat_frequencyB\u000e\n\f_mesh_enable\"*\n\u0013plug_switch_message\u0012\u0013\n\u000bplug_switch\u0018\u0001 \u0001(\r\"%\n\u000fbrightness_pack\u0012\u0012\n\nbrightness\u0018\u0001 \u0001(\u0005\"\u001f\n\fmax_cur_pack\u0012\u000f\n\u0007max_cur\u0018\u0001 \u0001(\u0005\"]\n\u0010time_task_config\u0012\u0011\n\ttask_name\u0018\u0001 \u0001(\t\u0012(\n\ntime_range\u0018\u0002 \u0001(\u000b2\u0014.time_range_strategy\u0012\f\n\u0004type\u0018\u0003 \u0001(\u0005\"N\n\u0015time_task_config_post\u0012\r\n\u0005index\u0018\u0001 \u0001(\u0005\u0012&\n\u000btask_config\u0018\u0002 \u0001(\u000b2\u0011.time_task_config\"D\n\tPowerItem\u0012\u0011\n\ttimestamp\u0018\u0001 \u0001(\r\u0012\u0010\n\btimezone\u0018\u0002 \u0001(\u0011\u0012\u0012\n\nplug_power\u0018\u0003 \u0001(\r\"B\n\tPowerPack\u0012\u000f\n\u0007sys_seq\u0018\u0001 \u0001(\r\u0012$\n\u0010sys_power_stream\u0018\u0002 \u0003(\u000b2\n.PowerItem\"\u001f\n\fPowerAckPack\u0012\u000f\n\u0007sys_seq\u0018\u0001 \u0001(\r\"#\n\u000emax_watts_pack\u0012\u0011\n\tmax_watts\u0018\u0001 \u0001(\u0005\"%\n\u000emesh_ctrl_pack\u0012\u0013\n\u000bmesh_enable\u0018\u0001 \u0001(\r\"\u001b\n\bret_pack\u0012\u000f\n\u0007ret_sta\u0018\u0001 \u0001(\bb\u0006proto3
      

      So sieht das dann in klartext aus:
      wn511_socket_sys.proto

      syntax = "proto3";
      
      message rtc_data {
        optional int32 week = 1 [default = 1];
        optional int32 sec = 2 [default = 1];
        optional int32 min = 3 [default = 1];
        optional int32 hour = 4 [default = 1];
        optional int32 day = 5 [default = 1];
        optional int32 month = 6 [default = 1];
        optional int32 year = 7 [default = 1];
      }
      
      message time_range_strategy {
        optional bool is_config = 1;
        optional bool is_enable = 2;
        optional int32 time_mode = 3;
        optional int32 time_data = 4;
        optional rtc_data start_time = 5;
        optional rtc_data stop_time = 6;
      }
      
      message plug_ack_message {
        optional int32 ack = 1;
      }
      
      message plug_heartbeat_pack {
        optional int32 err_code = 1 [default = 1];
        optional int32 warn_code = 2 [default = 1];
        optional int32 country = 3 [default = 1];
        optional int32 town = 4 [default = 1];
        optional int32 max_cur = 5 [default = 1];
        optional int32 temp = 6 [default = 1];
        optional int32 freq = 7 [default = 1];
        optional int32 current = 8 [default = 1];
        optional int32 volt = 9 [default = 1];
        optional int32 watts = 10 [default = 1];
        optional bool switch = 11;
        optional int32 brightness = 12 [default = 1];
        optional int32 max_watts = 13 [default = 1];
        optional int32 heartbeat_frequency = 14 [default = 1];
        optional bool mesh_enable = 15;
      }
      
      message plug_switch_message {
        optional int32 plug_switch = 1;
      }
      
      message brightness_pack {
        optional int32 brightness = 1;
      }
      
      message max_cur_pack {
        optional int32 max_cur = 1;
      }
      
      message time_task_config {
        optional string task_name = 1;
        optional time_range_strategy time_range = 2;
        optional int32 type = 3;
      }
      
      message time_task_config_post {
        optional int32 index = 1;
        optional time_task_config task_config = 2;
      }
      
      message PowerItem {
        optional int64 timestamp = 1;
        optional string timezone = 2;
        optional int32 plug_power = 3;
      }
      
      message PowerPack {
        optional int32 sys_seq = 1;
        repeated PowerItem sys_power_stream = 2;
      }
      
      message PowerAckPack {
        optional int32 sys_seq = 1;
      }
      
      message max_watts_pack {
        optional int32 max_watts = 1;
      }
      
      message mesh_ctrl_pack {
        optional int32 mesh_enable = 1;
      }
      
      message ret_pack {
        optional bool ret_sta = 1;
      }
      
      posted in Einbindung von Geräten
      FelixCrafter83
      FelixCrafter83
    • RE: ioBroker-Windows Steuerung

      @qlink die abfrage ob z.bsp chrome läuft gibt es jetzt, zusätzlich gibt es jetzt auch die hotkeys senden option

      posted in ioBroker Allgemein
      FelixCrafter83
      FelixCrafter83
    • RE: Adapter für Ecoflow Einbindung

      Ich habe es geschafft alles in Klartext darzustellen hier eine txt Datei:ProtobufsDecoded.txt
      Das müssten alle aus der App sein.
      Mann muss sie sich nur etwas zusammenbasteln.

      posted in Einbindung von Geräten
      FelixCrafter83
      FelixCrafter83
    • RE: ioBroker-Windows Steuerung

      @qlink

      Um auf deine erste Frage drauf einzugehen:
      Ich persönlich benutze nicht mehr so viel Blockly, außer meiner alten Skripte.
      Ich nutze schon seit längeren nur noch Node-Red.
      Da würde man dann die http request node nehmen.

      So ich habe dein Blockly etwas nachgebaut und den request Block durch meinen erstellten Block ersetzt.

      Screenshot 2024-03-05 195852.png

      Da der Message-Client immer etwas zurücksendet, wie zum Beispiel:

      Systemfunction executing

      bei einer Systemfunktion, hat der Block request eine Ausgabe, die man in einer Variable, hier Antwort, speichern kann.

      Mein Block hat auch gewisse Eingabevariablen.
      Außer json müsste eigentlich alles selbsterklärend sein.
      Bei Json muss nämlich das in dieser Form eingeben werden:

      {"type":"hotkey","payload":"F15"}
      

      Mit dem json_generator kann man direkt auf die Werte zugreifen um den Typ (Modus) und den Payload (Inhalt) zu setzten.
      Dann wird daraus dieser String erzeugt und er muss nicht eingegeben werden.

      So würde das Beispiel aussehen, wenn man die screen_on Funktion nutzt:

      a904e268-25b9-4ab0-9f3c-4ce823f6d8a1-image.png
      Ich hoffe ich konnte dir hiermit weiterhelfen.
      Um noch die anderen Funktionen des Message-Client zu sehen, kannst du dir die readme auf Github ansehen.

      Hier das neue Beispiel Blockly:

      <xml xmlns="https://developers.google.com/blockly/xml">
        <variables>
          <variable id="ty4I6t;`3g2@Qo^cIGQS">type</variable>
          <variable id="zkcwi`_:P|Y-H+w!P0U3">payload</variable>
          <variable id="KJ`(],L1vH}H^)otDRqm">host</variable>
          <variable id="TjJSy2#L3OUQDiT~:I97">json</variable>
          <variable id="uo$)0f5gD`Gm=HjjOwa`">username</variable>
          <variable id="h33;DbV.1JTf?hPM3#_4">password</variable>
          <variable id="05cyd~/fXw)wYrY_9`j6">Antwort</variable>
        </variables>
        <block type="procedures_defcustomreturn" id="Z54Pq[qn:vy8Fw}n3A9]" x="613" y="63">
          <mutation statements="false">
            <arg name="type" varid="ty4I6t;`3g2@Qo^cIGQS"></arg>
            <arg name="payload" varid="zkcwi`_:P|Y-H+w!P0U3"></arg>
          </mutation>
          <field name="NAME">json_generator</field>
          <field name="SCRIPT">anNvbiA9IEpTT04uc3RyaW5naWZ5KHsNCiAgICB0eXBlIDogdHlwZSwNCiAgICBwYXlsb2FkIDogcGF5bG9hZA0KfSkNCg0KcmV0dXJuIGpzb247</field>
          <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
        </block>
        <block type="procedures_defcustomreturn" id="H!?tgvif0E3`u4B,w{e1" x="588" y="113">
          <mutation statements="false">
            <arg name="host" varid="KJ`(],L1vH}H^)otDRqm"></arg>
            <arg name="json" varid="TjJSy2#L3OUQDiT~:I97"></arg>
            <arg name="username" varid="uo$)0f5gD`Gm=HjjOwa`"></arg>
            <arg name="password" varid="h33;DbV.1JTf?hPM3#_4"></arg>
          </mutation>
          <field name="NAME">request</field>
          <field name="SCRIPT">cmV0dXJuIGF3YWl0IG5ldyBQcm9taXNlKA0KICAgIChyZXNvbHZlLCByZWplY3QpID0+IHsNCiAgICAgICAgcmVxdWlyZSgicmVxdWVzdCIpKCJodHRwOi8vIiArIGhvc3QgKyAiOjgwODAvIiwgew0KICAgICAgICAgICAgbWV0aG9kOiAiUE9TVCIsDQogICAgICAgICAgICBib2R5OiBqc29uLA0KICAgICAgICAgICAgaGVhZGVyczogew0KICAgICAgICAgICAgICAgICJBdXRob3JpemF0aW9uIjogYEJhc2ljICR7QnVmZmVyLmZyb20oYCR7dXNlcm5hbWV9OiR7cGFzc3dvcmR9YCkudG9TdHJpbmcoImJhc2U2NCIpfWAsDQogICAgICAgICAgICAgICAgIkNvbnRlbnQtTGVuZ3RoIjoganNvbi5sZW5ndGgsDQogICAgICAgICAgICAgICAgIkNvbnRlbnQtVHlwZSI6ICJhcHBsaWNhdGlvbi9qc29uIg0KICAgICAgICAgICAgfSANCiAgICAgICAgfSkub24oImRhdGEiLCAocmVzcG9uc2UpID0+IHsNCiAgICAgICAgICAgIHJlc29sdmUocmVzcG9uc2UudG9TdHJpbmcoKSkNCiAgICAgICAgfSkub24oImVycm9yIiwgKGVycm9yKSA9PiByZWplY3QoZXJyb3IpICk7DQogICAgfQ0KKQ==</field>
          <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
        </block>
        <block type="variables_set" id="YqU71]Z+:=wA)?51:4%)" x="138" y="188">
          <field name="VAR" id="05cyd~/fXw)wYrY_9`j6">Antwort</field>
          <value name="VALUE">
            <block type="procedures_callcustomreturn" id="C.@%1r4Dd)jcPQSno:Sr">
              <mutation name="request">
                <arg name="host"></arg>
                <arg name="json"></arg>
                <arg name="username"></arg>
                <arg name="password"></arg>
              </mutation>
              <value name="ARG0">
                <block type="text" id="[Rls=Dv(tX[~?,{I@=S{">
                  <field name="TEXT"></field>
                </block>
              </value>
              <value name="ARG1">
                <block type="procedures_callcustomreturn" id="%Jw---e/=/1p{vro~gUm">
                  <mutation name="json_generator">
                    <arg name="type"></arg>
                    <arg name="payload"></arg>
                  </mutation>
                  <value name="ARG0">
                    <block type="text" id="0%`5Ivayw4`)7fHe]/=/">
                      <field name="TEXT">systemfunction</field>
                    </block>
                  </value>
                  <value name="ARG1">
                    <block type="text" id="dh{WIfs1!eh`gC[LExVD">
                      <field name="TEXT">screen_on</field>
                    </block>
                  </value>
                </block>
              </value>
              <value name="ARG2">
                <block type="text" id="uufN7iZ[`pZzC=_jH+AS">
                  <field name="TEXT"></field>
                </block>
              </value>
              <value name="ARG3">
                <block type="text" id="82y)t{xcd!]EG?A-ts8?">
                  <field name="TEXT"></field>
                </block>
              </value>
            </block>
          </value>
        </block>
      </xml>
      

      Beispiel

      posted in ioBroker Allgemein
      FelixCrafter83
      FelixCrafter83
    • RE: ioBroker-Windows Steuerung

      @qlink

      Hallo, ich hatte keine Zeit gehabt mich deiner Frage zu widmen.

      Dies habe ich jetzt gemacht und möchte Dir und auch andere in diesem Topic mein erstelltes Blockly bereitstellen.

      Ich bin jetzt auf ein anderes Modul als Request gegangen, da es deprecated ist. Deshalb nutze ich jetzt Axios, wie man dies Installiert komme ich gleich zu.
      Man kann leider nicht den Blockly httpPost Block benutzen da er keine Authentifizierung hat.

      So, damit mein Blockly funktionier muss erst in den Instanz Einstellungen von Javascript Axios installiert werden.

      Screenshot 2024-11-17 145008.png

      Dort geht man rein und gibt bei Zusätzliche NPM-Module "axios" ohne die Gänsefüsschen ein und drückt Enter. Danach noch die Speichern Taste drücken.

      So jetzt kommen wir mal zum Blockly

      Screenshot 2024-11-17 145945.png

      <xml xmlns="https://developers.google.com/blockly/xml">
        <variables>
          <variable id="05cyd~/fXw)wYrY_9`j6">Antwort</variable>
          <variable id="fTNS@?jYjM#KE.CR-mfM">type</variable>
          <variable id="v{;437#UnpG@Gz,9wi{]">payload</variable>
          <variable id="E4{G8%+?zO[buECtyli8">host</variable>
          <variable id="ndKqZ+s}Q8_J2zgP{]Hi">json</variable>
          <variable id="NaEY_n)9Ak#D)p.|*DW)">username</variable>
          <variable id="jU:(at05h5/Z]).1pbAw">password</variable>
          <variable id="WkdOp=DdByyU{Hf%duu7">Objekt</variable>
          <variable id=".Hn*tX32xa9]}sedS.Rz">Ausgabe</variable>
          <variable id="v5_8zUtLYJgn{{kAs`Ag">process</variable>
          <variable id="ih-}E#L@O[@Ht:cRpmBM">status</variable>
        </variables>
        <block type="variables_set" id="b#L7b2}c`J]s2/9fL82V" x="50" y="44">
          <field name="VAR" id="05cyd~/fXw)wYrY_9`j6">Antwort</field>
          <value name="VALUE">
            <block type="procedures_callcustomreturn" id="q/J/vjxx~jn]~XlFE?ks">
              <mutation name="request3">
                <arg name="host"></arg>
                <arg name="json"></arg>
                <arg name="username"></arg>
                <arg name="password"></arg>
              </mutation>
              <value name="ARG0">
                <block type="text" id="0H)^hF7b@,4X#wXxY=2v">
                  <field name="TEXT"></field>
                </block>
              </value>
              <value name="ARG1">
                <block type="procedures_callcustomreturn" id="wFTHMBXB)6XEc[Z]Q3vw">
                  <mutation name="json_generator">
                    <arg name="type"></arg>
                    <arg name="payload"></arg>
                  </mutation>
                  <value name="ARG0">
                    <block type="text" id="JCDS^GY3cLS9x:@}f8~r">
                      <field name="TEXT"></field>
                    </block>
                  </value>
                  <value name="ARG1">
                    <block type="text" id="w+1H9l/Y(WIt.F%6+T3V">
                      <field name="TEXT"></field>
                    </block>
                  </value>
                </block>
              </value>
              <value name="ARG2">
                <block type="text" id="jKe-rWC5i*l~7kVx3s1@">
                  <field name="TEXT"></field>
                </block>
              </value>
              <value name="ARG3">
                <block type="text" id="sj_$]X40Kbu);D$(F@@o">
                  <field name="TEXT"></field>
                </block>
              </value>
            </block>
          </value>
          <next>
            <block type="comment" id="9l;)OfO@W4,TSQYckPvW">
              <field name="COMMENT">Einlesen der Antwort</field>
              <next>
                <block type="variables_set" id=":vby;%kQ,7NTo!}?FAs[">
                  <field name="VAR" id="WkdOp=DdByyU{Hf%duu7">Objekt</field>
                  <value name="VALUE">
                    <block type="convert_json2object" id="gytHq8hYpM+1_*yksZ5x">
                      <value name="VALUE">
                        <block type="variables_get" id="m4|{ug:;El}qs^ZjFP}F">
                          <field name="VAR" id="05cyd~/fXw)wYrY_9`j6">Antwort</field>
                        </block>
                      </value>
                    </block>
                  </value>
                  <next>
                    <block type="comment" id="Y)/Kk`7sPI%+n2R{H{w/">
                      <field name="COMMENT">String oder Objekt</field>
                      <next>
                        <block type="controls_if" id="W`o(JmwVsuiE%4`t%.wW">
                          <mutation elseif="1"></mutation>
                          <value name="IF0">
                            <block type="logic_compare" id="Hs+l?9m4GMSmm$iGvAN~">
                              <field name="OP">EQ</field>
                              <value name="A">
                                <block type="convert_type" id="K@GQpF,*a;@QS2saMLk]">
                                  <value name="ITEM">
                                    <block type="variables_get" id="rjfb*nVdb}$iWLBh0R;T">
                                      <field name="VAR" id="WkdOp=DdByyU{Hf%duu7">Objekt</field>
                                    </block>
                                  </value>
                                </block>
                              </value>
                              <value name="B">
                                <block type="text" id="dx6b5)nwYLI;b-dGVq,%">
                                  <field name="TEXT">object</field>
                                </block>
                              </value>
                            </block>
                          </value>
                          <statement name="DO0">
                            <block type="comment" id="~]uV1{yEIC02/jmevV`#">
                              <field name="COMMENT">process</field>
                              <next>
                                <block type="controls_if" id="d}}iy=fF[6Z:B-H;Tzut">
                                  <value name="IF0">
                                    <block type="object_has_attr" id="bZkucarJxh^(bschEw-l">
                                      <field name="ATTR">process</field>
                                      <value name="OBJECT">
                                        <shadow type="get_object" id="8+0Zs*Tt:=[6[o~IO`}d">
                                          <field name="OID">Object ID</field>
                                        </shadow>
                                        <block type="variables_get" id=",VxFyF*cv]`Z-U.f-$Jg">
                                          <field name="VAR" id="WkdOp=DdByyU{Hf%duu7">Objekt</field>
                                        </block>
                                      </value>
                                    </block>
                                  </value>
                                  <statement name="DO0">
                                    <block type="variables_set" id="#Km8-jJh(JtNrRmDgMH:">
                                      <field name="VAR" id="v5_8zUtLYJgn{{kAs`Ag">process</field>
                                      <value name="VALUE">
                                        <block type="get_attr" id="}WPeU/*fSw_H0W8(MJqB">
                                          <value name="PATH">
                                            <shadow type="text" id="CDF~sA7Fg5ZG8]:MX4bT">
                                              <field name="TEXT">attribute1</field>
                                            </shadow>
                                            <block type="text" id="CW-qi8d/5XFID#QwRxIt">
                                              <field name="TEXT">process</field>
                                            </block>
                                          </value>
                                          <value name="OBJECT">
                                            <shadow type="get_object" id="Kj5Zc~mrV{%P8^z?2Iy.">
                                              <field name="OID">Object ID</field>
                                            </shadow>
                                            <block type="variables_get" id="jr=tDUvxQ`}]v*KzFQAL">
                                              <field name="VAR" id="WkdOp=DdByyU{Hf%duu7">Objekt</field>
                                            </block>
                                          </value>
                                        </block>
                                      </value>
                                      <next>
                                        <block type="variables_set" id="1$STGQMssh`H6.REl?sO">
                                          <field name="VAR" id="ih-}E#L@O[@Ht:cRpmBM">status</field>
                                          <value name="VALUE">
                                            <block type="get_attr" id="p{lVupi649H^$8@LU#{W">
                                              <value name="PATH">
                                                <shadow type="text" id="CDF~sA7Fg5ZG8]:MX4bT">
                                                  <field name="TEXT">attribute1</field>
                                                </shadow>
                                                <block type="text" id="RNR0JDp?G/E]C.-L~(V0">
                                                  <field name="TEXT">status</field>
                                                </block>
                                              </value>
                                              <value name="OBJECT">
                                                <shadow type="get_object" id="Kj5Zc~mrV{%P8^z?2Iy.">
                                                  <field name="OID">Object ID</field>
                                                </shadow>
                                                <block type="variables_get" id="gGwA=:^w5AAi0e9j3~`O">
                                                  <field name="VAR" id="WkdOp=DdByyU{Hf%duu7">Objekt</field>
                                                </block>
                                              </value>
                                            </block>
                                          </value>
                                          <next>
                                            <block type="comment" id="OI49,a1dH;FZ@1vrW4[N">
                                              <field name="COMMENT">Hiernach weitere Blöcke</field>
                                              <next>
                                                <block type="debug" id="h_+LyeWFvMDV2`S45*$+">
                                                  <field name="Severity">info</field>
                                                  <value name="TEXT">
                                                    <shadow type="text" id="G7vL,7r)FwS?ex7Xlgp#">
                                                      <field name="TEXT">test</field>
                                                    </shadow>
                                                    <block type="variables_get" id="LhX2t,@cnR-J3upiW{!H">
                                                      <field name="VAR" id="v5_8zUtLYJgn{{kAs`Ag">process</field>
                                                    </block>
                                                  </value>
                                                  <next>
                                                    <block type="debug" id="w3qVI$Aupu#`pEiETBa_">
                                                      <field name="Severity">info</field>
                                                      <value name="TEXT">
                                                        <shadow type="text" id="G7vL,7r)FwS?ex7Xlgp#">
                                                          <field name="TEXT">test</field>
                                                        </shadow>
                                                        <block type="variables_get" id="3r8D8fTEk#/?*(nbh9Hr">
                                                          <field name="VAR" id="ih-}E#L@O[@Ht:cRpmBM">status</field>
                                                        </block>
                                                      </value>
                                                    </block>
                                                  </next>
                                                </block>
                                              </next>
                                            </block>
                                          </next>
                                        </block>
                                      </next>
                                    </block>
                                  </statement>
                                </block>
                              </next>
                            </block>
                          </statement>
                          <value name="IF1">
                            <block type="logic_compare" id="y)dK{/}-r^z^@8DPzGj|">
                              <field name="OP">EQ</field>
                              <value name="A">
                                <block type="convert_type" id="7|BGpP@|W_jkjH0%0F)*">
                                  <value name="ITEM">
                                    <block type="variables_get" id="FVnW|C]BLyZU[kHkc-Z;">
                                      <field name="VAR" id="WkdOp=DdByyU{Hf%duu7">Objekt</field>
                                    </block>
                                  </value>
                                </block>
                              </value>
                              <value name="B">
                                <block type="text" id="raclcE4Jw+*j,O@UJ_+q">
                                  <field name="TEXT">string</field>
                                </block>
                              </value>
                            </block>
                          </value>
                          <statement name="DO1">
                            <block type="comment" id="v4ln:$-;-K3Ak7?v7m}1">
                              <field name="COMMENT">message, command, hotkey oder systemfunction</field>
                              <next>
                                <block type="variables_set" id="b_gKh4|*;l^a]B=SZWI.">
                                  <field name="VAR" id=".Hn*tX32xa9]}sedS.Rz">Ausgabe</field>
                                  <value name="VALUE">
                                    <block type="variables_get" id="6eJ1r=E5aW?52I@aUKke">
                                      <field name="VAR" id="WkdOp=DdByyU{Hf%duu7">Objekt</field>
                                    </block>
                                  </value>
                                  <next>
                                    <block type="comment" id="7HS{2.OzN[4UWWf$|ngB">
                                      <field name="COMMENT">Hiernach weitere Blöcke</field>
                                      <next>
                                        <block type="debug" id="~Y,(jj21{(Vgg^d;/F`j">
                                          <field name="Severity">info</field>
                                          <value name="TEXT">
                                            <shadow type="text" id="G7vL,7r)FwS?ex7Xlgp#">
                                              <field name="TEXT">test</field>
                                            </shadow>
                                            <block type="variables_get" id="Cb_OBIY3x]/+5=3g(hRh">
                                              <field name="VAR" id=".Hn*tX32xa9]}sedS.Rz">Ausgabe</field>
                                            </block>
                                          </value>
                                        </block>
                                      </next>
                                    </block>
                                  </next>
                                </block>
                              </next>
                            </block>
                          </statement>
                        </block>
                      </next>
                    </block>
                  </next>
                </block>
              </next>
            </block>
          </next>
        </block>
        <block type="procedures_defcustomreturn" id="Z54Pq[qn:vy8Fw}n3A9]" x="663" y="63">
          <mutation statements="false">
            <arg name="type" varid="fTNS@?jYjM#KE.CR-mfM"></arg>
            <arg name="payload" varid="v{;437#UnpG@Gz,9wi{]"></arg>
          </mutation>
          <field name="NAME">json_generator</field>
          <field name="SCRIPT">anNvbiA9IEpTT04uc3RyaW5naWZ5KHsNCiAgICB0eXBlIDogdHlwZSwNCiAgICBwYXlsb2FkIDogcGF5bG9hZA0KfSkNCg0KcmV0dXJuIGpzb247</field>
          <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
        </block>
        <block type="procedures_defcustomreturn" id="$ddJErJe`G|i!1I8h-lj" x="663" y="113">
          <mutation statements="false">
            <arg name="host" varid="E4{G8%+?zO[buECtyli8"></arg>
            <arg name="json" varid="ndKqZ+s}Q8_J2zgP{]Hi"></arg>
            <arg name="username" varid="NaEY_n)9Ak#D)p.|*DW)"></arg>
            <arg name="password" varid="jU:(at05h5/Z]).1pbAw"></arg>
          </mutation>
          <field name="NAME">request3</field>
          <field name="SCRIPT">Y29uc3QgYXhpb3MgPSByZXF1aXJlKCJheGlvcyIpOw0KDQpyZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4gew0KICAgICAgICBheGlvcy5wb3N0KGBodHRwOi8vJHtob3N0fTo4MDgwL2AsIGpzb24sIHsNCiAgICAgICAgICAgIGhlYWRlcnM6IHsNCiAgICAgICAgICAgICAgICAiQXV0aG9yaXphdGlvbiI6IGBCYXNpYyAke0J1ZmZlci5mcm9tKGAke3VzZXJuYW1lfToke3Bhc3N3b3JkfWApLnRvU3RyaW5nKCJiYXNlNjQiKX1gLA0KICAgICAgICAgICAgICAgICJDb250ZW50LVR5cGUiOiAiYXBwbGljYXRpb24vanNvbiINCiAgICAgICAgICAgIH0NCiAgICAgICAgfSkNCiAgICAgICAgLnRoZW4ocmVzcG9uc2UgPT4gcmVzb2x2ZShKU09OLnN0cmluZ2lmeShyZXNwb25zZS5kYXRhKSkpDQogICAgICAgIC5jYXRjaChlcnJvciA9PiByZWplY3QoZXJyb3IpKTsNCiAgICB9KTs=</field>
          <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
        </block>
      </xml>
      

      Beispiel2

      Ich habe es so Aufgebaut das es mit jeden Funktionen mit Message Client funktioniert.

      Jetzt zu deinen Fragen:

      1. Du musst bei type: process und bei payload: chrome ohne .exe eingeben, das wird automatisch drangehangen.
        Dann kannst du die Informationen aus den Variablen process und status entnehmen.

      2. Um zum Beispiel eine .bat datei oder eine Verknüpfung vom Desktop starten zu können musst du bei type: command eintragen und bei payload: C:\Users\xxxxx\Desktop\chrome.lnk für die Verknüpfung oder "C:\Users\xxxxx\Documents\start.bat" für die .bat Datei.

      posted in ioBroker Allgemein
      FelixCrafter83
      FelixCrafter83

    Latest posts made by FelixCrafter83

    • RE: ioBroker-Windows Steuerung

      @Qlink
      Hallo vielen Dank für dein Lob und deine Nachricht.
      Ich habe es selber mal ausprobiert und bei mir drückt er die Taste ESC. Habe ich mit einer Website herausgefunden wo man die Tastatur überprüfen kann.
      Folgende Fragen erstmal an dich:

      • Hast du von mir die neuste Version des Scriptes (die letzte aus diesem topic) und die neuste Version von MessageClient.exe (da wo in dem Programm eine v1.8 steht)?
      • Was ist in dem Programm in dem Output zu sehen? 86f54efa-5516-4842-b543-18d4fd63aacd-image.png
      • Stürtzt das Programm MessageClient.exe ab?

      Wenn du mir diese Fragen beantworten kannst könnte ich vielleicht den Fehler eingrenzen.

      Der Aufruf sieht für mich richtig aus.

      Du kannst ja gerne nochmal zum testen mein Blockly probieren obwohl es eigentlich dasselbe macht.

      Ich hoffe das es irgendwann dann klappt.

      EDIT:

      Was mir eben noch aufgefallen ist:
      Kann es sein das beim umschalten in den Sreensaver diverse mechanismen von Windows greifen und meine Software "einfrieren"?
      Probiere da mal andere befehle zu senden. Wenn es auch nicht klappt müsste meine Vermutung stimmen.

      posted in ioBroker Allgemein
      FelixCrafter83
      FelixCrafter83
    • RE: ioBroker-Windows Steuerung

      @qlink

      Hallo, ich hatte keine Zeit gehabt mich deiner Frage zu widmen.

      Dies habe ich jetzt gemacht und möchte Dir und auch andere in diesem Topic mein erstelltes Blockly bereitstellen.

      Ich bin jetzt auf ein anderes Modul als Request gegangen, da es deprecated ist. Deshalb nutze ich jetzt Axios, wie man dies Installiert komme ich gleich zu.
      Man kann leider nicht den Blockly httpPost Block benutzen da er keine Authentifizierung hat.

      So, damit mein Blockly funktionier muss erst in den Instanz Einstellungen von Javascript Axios installiert werden.

      Screenshot 2024-11-17 145008.png

      Dort geht man rein und gibt bei Zusätzliche NPM-Module "axios" ohne die Gänsefüsschen ein und drückt Enter. Danach noch die Speichern Taste drücken.

      So jetzt kommen wir mal zum Blockly

      Screenshot 2024-11-17 145945.png

      <xml xmlns="https://developers.google.com/blockly/xml">
        <variables>
          <variable id="05cyd~/fXw)wYrY_9`j6">Antwort</variable>
          <variable id="fTNS@?jYjM#KE.CR-mfM">type</variable>
          <variable id="v{;437#UnpG@Gz,9wi{]">payload</variable>
          <variable id="E4{G8%+?zO[buECtyli8">host</variable>
          <variable id="ndKqZ+s}Q8_J2zgP{]Hi">json</variable>
          <variable id="NaEY_n)9Ak#D)p.|*DW)">username</variable>
          <variable id="jU:(at05h5/Z]).1pbAw">password</variable>
          <variable id="WkdOp=DdByyU{Hf%duu7">Objekt</variable>
          <variable id=".Hn*tX32xa9]}sedS.Rz">Ausgabe</variable>
          <variable id="v5_8zUtLYJgn{{kAs`Ag">process</variable>
          <variable id="ih-}E#L@O[@Ht:cRpmBM">status</variable>
        </variables>
        <block type="variables_set" id="b#L7b2}c`J]s2/9fL82V" x="50" y="44">
          <field name="VAR" id="05cyd~/fXw)wYrY_9`j6">Antwort</field>
          <value name="VALUE">
            <block type="procedures_callcustomreturn" id="q/J/vjxx~jn]~XlFE?ks">
              <mutation name="request3">
                <arg name="host"></arg>
                <arg name="json"></arg>
                <arg name="username"></arg>
                <arg name="password"></arg>
              </mutation>
              <value name="ARG0">
                <block type="text" id="0H)^hF7b@,4X#wXxY=2v">
                  <field name="TEXT"></field>
                </block>
              </value>
              <value name="ARG1">
                <block type="procedures_callcustomreturn" id="wFTHMBXB)6XEc[Z]Q3vw">
                  <mutation name="json_generator">
                    <arg name="type"></arg>
                    <arg name="payload"></arg>
                  </mutation>
                  <value name="ARG0">
                    <block type="text" id="JCDS^GY3cLS9x:@}f8~r">
                      <field name="TEXT"></field>
                    </block>
                  </value>
                  <value name="ARG1">
                    <block type="text" id="w+1H9l/Y(WIt.F%6+T3V">
                      <field name="TEXT"></field>
                    </block>
                  </value>
                </block>
              </value>
              <value name="ARG2">
                <block type="text" id="jKe-rWC5i*l~7kVx3s1@">
                  <field name="TEXT"></field>
                </block>
              </value>
              <value name="ARG3">
                <block type="text" id="sj_$]X40Kbu);D$(F@@o">
                  <field name="TEXT"></field>
                </block>
              </value>
            </block>
          </value>
          <next>
            <block type="comment" id="9l;)OfO@W4,TSQYckPvW">
              <field name="COMMENT">Einlesen der Antwort</field>
              <next>
                <block type="variables_set" id=":vby;%kQ,7NTo!}?FAs[">
                  <field name="VAR" id="WkdOp=DdByyU{Hf%duu7">Objekt</field>
                  <value name="VALUE">
                    <block type="convert_json2object" id="gytHq8hYpM+1_*yksZ5x">
                      <value name="VALUE">
                        <block type="variables_get" id="m4|{ug:;El}qs^ZjFP}F">
                          <field name="VAR" id="05cyd~/fXw)wYrY_9`j6">Antwort</field>
                        </block>
                      </value>
                    </block>
                  </value>
                  <next>
                    <block type="comment" id="Y)/Kk`7sPI%+n2R{H{w/">
                      <field name="COMMENT">String oder Objekt</field>
                      <next>
                        <block type="controls_if" id="W`o(JmwVsuiE%4`t%.wW">
                          <mutation elseif="1"></mutation>
                          <value name="IF0">
                            <block type="logic_compare" id="Hs+l?9m4GMSmm$iGvAN~">
                              <field name="OP">EQ</field>
                              <value name="A">
                                <block type="convert_type" id="K@GQpF,*a;@QS2saMLk]">
                                  <value name="ITEM">
                                    <block type="variables_get" id="rjfb*nVdb}$iWLBh0R;T">
                                      <field name="VAR" id="WkdOp=DdByyU{Hf%duu7">Objekt</field>
                                    </block>
                                  </value>
                                </block>
                              </value>
                              <value name="B">
                                <block type="text" id="dx6b5)nwYLI;b-dGVq,%">
                                  <field name="TEXT">object</field>
                                </block>
                              </value>
                            </block>
                          </value>
                          <statement name="DO0">
                            <block type="comment" id="~]uV1{yEIC02/jmevV`#">
                              <field name="COMMENT">process</field>
                              <next>
                                <block type="controls_if" id="d}}iy=fF[6Z:B-H;Tzut">
                                  <value name="IF0">
                                    <block type="object_has_attr" id="bZkucarJxh^(bschEw-l">
                                      <field name="ATTR">process</field>
                                      <value name="OBJECT">
                                        <shadow type="get_object" id="8+0Zs*Tt:=[6[o~IO`}d">
                                          <field name="OID">Object ID</field>
                                        </shadow>
                                        <block type="variables_get" id=",VxFyF*cv]`Z-U.f-$Jg">
                                          <field name="VAR" id="WkdOp=DdByyU{Hf%duu7">Objekt</field>
                                        </block>
                                      </value>
                                    </block>
                                  </value>
                                  <statement name="DO0">
                                    <block type="variables_set" id="#Km8-jJh(JtNrRmDgMH:">
                                      <field name="VAR" id="v5_8zUtLYJgn{{kAs`Ag">process</field>
                                      <value name="VALUE">
                                        <block type="get_attr" id="}WPeU/*fSw_H0W8(MJqB">
                                          <value name="PATH">
                                            <shadow type="text" id="CDF~sA7Fg5ZG8]:MX4bT">
                                              <field name="TEXT">attribute1</field>
                                            </shadow>
                                            <block type="text" id="CW-qi8d/5XFID#QwRxIt">
                                              <field name="TEXT">process</field>
                                            </block>
                                          </value>
                                          <value name="OBJECT">
                                            <shadow type="get_object" id="Kj5Zc~mrV{%P8^z?2Iy.">
                                              <field name="OID">Object ID</field>
                                            </shadow>
                                            <block type="variables_get" id="jr=tDUvxQ`}]v*KzFQAL">
                                              <field name="VAR" id="WkdOp=DdByyU{Hf%duu7">Objekt</field>
                                            </block>
                                          </value>
                                        </block>
                                      </value>
                                      <next>
                                        <block type="variables_set" id="1$STGQMssh`H6.REl?sO">
                                          <field name="VAR" id="ih-}E#L@O[@Ht:cRpmBM">status</field>
                                          <value name="VALUE">
                                            <block type="get_attr" id="p{lVupi649H^$8@LU#{W">
                                              <value name="PATH">
                                                <shadow type="text" id="CDF~sA7Fg5ZG8]:MX4bT">
                                                  <field name="TEXT">attribute1</field>
                                                </shadow>
                                                <block type="text" id="RNR0JDp?G/E]C.-L~(V0">
                                                  <field name="TEXT">status</field>
                                                </block>
                                              </value>
                                              <value name="OBJECT">
                                                <shadow type="get_object" id="Kj5Zc~mrV{%P8^z?2Iy.">
                                                  <field name="OID">Object ID</field>
                                                </shadow>
                                                <block type="variables_get" id="gGwA=:^w5AAi0e9j3~`O">
                                                  <field name="VAR" id="WkdOp=DdByyU{Hf%duu7">Objekt</field>
                                                </block>
                                              </value>
                                            </block>
                                          </value>
                                          <next>
                                            <block type="comment" id="OI49,a1dH;FZ@1vrW4[N">
                                              <field name="COMMENT">Hiernach weitere Blöcke</field>
                                              <next>
                                                <block type="debug" id="h_+LyeWFvMDV2`S45*$+">
                                                  <field name="Severity">info</field>
                                                  <value name="TEXT">
                                                    <shadow type="text" id="G7vL,7r)FwS?ex7Xlgp#">
                                                      <field name="TEXT">test</field>
                                                    </shadow>
                                                    <block type="variables_get" id="LhX2t,@cnR-J3upiW{!H">
                                                      <field name="VAR" id="v5_8zUtLYJgn{{kAs`Ag">process</field>
                                                    </block>
                                                  </value>
                                                  <next>
                                                    <block type="debug" id="w3qVI$Aupu#`pEiETBa_">
                                                      <field name="Severity">info</field>
                                                      <value name="TEXT">
                                                        <shadow type="text" id="G7vL,7r)FwS?ex7Xlgp#">
                                                          <field name="TEXT">test</field>
                                                        </shadow>
                                                        <block type="variables_get" id="3r8D8fTEk#/?*(nbh9Hr">
                                                          <field name="VAR" id="ih-}E#L@O[@Ht:cRpmBM">status</field>
                                                        </block>
                                                      </value>
                                                    </block>
                                                  </next>
                                                </block>
                                              </next>
                                            </block>
                                          </next>
                                        </block>
                                      </next>
                                    </block>
                                  </statement>
                                </block>
                              </next>
                            </block>
                          </statement>
                          <value name="IF1">
                            <block type="logic_compare" id="y)dK{/}-r^z^@8DPzGj|">
                              <field name="OP">EQ</field>
                              <value name="A">
                                <block type="convert_type" id="7|BGpP@|W_jkjH0%0F)*">
                                  <value name="ITEM">
                                    <block type="variables_get" id="FVnW|C]BLyZU[kHkc-Z;">
                                      <field name="VAR" id="WkdOp=DdByyU{Hf%duu7">Objekt</field>
                                    </block>
                                  </value>
                                </block>
                              </value>
                              <value name="B">
                                <block type="text" id="raclcE4Jw+*j,O@UJ_+q">
                                  <field name="TEXT">string</field>
                                </block>
                              </value>
                            </block>
                          </value>
                          <statement name="DO1">
                            <block type="comment" id="v4ln:$-;-K3Ak7?v7m}1">
                              <field name="COMMENT">message, command, hotkey oder systemfunction</field>
                              <next>
                                <block type="variables_set" id="b_gKh4|*;l^a]B=SZWI.">
                                  <field name="VAR" id=".Hn*tX32xa9]}sedS.Rz">Ausgabe</field>
                                  <value name="VALUE">
                                    <block type="variables_get" id="6eJ1r=E5aW?52I@aUKke">
                                      <field name="VAR" id="WkdOp=DdByyU{Hf%duu7">Objekt</field>
                                    </block>
                                  </value>
                                  <next>
                                    <block type="comment" id="7HS{2.OzN[4UWWf$|ngB">
                                      <field name="COMMENT">Hiernach weitere Blöcke</field>
                                      <next>
                                        <block type="debug" id="~Y,(jj21{(Vgg^d;/F`j">
                                          <field name="Severity">info</field>
                                          <value name="TEXT">
                                            <shadow type="text" id="G7vL,7r)FwS?ex7Xlgp#">
                                              <field name="TEXT">test</field>
                                            </shadow>
                                            <block type="variables_get" id="Cb_OBIY3x]/+5=3g(hRh">
                                              <field name="VAR" id=".Hn*tX32xa9]}sedS.Rz">Ausgabe</field>
                                            </block>
                                          </value>
                                        </block>
                                      </next>
                                    </block>
                                  </next>
                                </block>
                              </next>
                            </block>
                          </statement>
                        </block>
                      </next>
                    </block>
                  </next>
                </block>
              </next>
            </block>
          </next>
        </block>
        <block type="procedures_defcustomreturn" id="Z54Pq[qn:vy8Fw}n3A9]" x="663" y="63">
          <mutation statements="false">
            <arg name="type" varid="fTNS@?jYjM#KE.CR-mfM"></arg>
            <arg name="payload" varid="v{;437#UnpG@Gz,9wi{]"></arg>
          </mutation>
          <field name="NAME">json_generator</field>
          <field name="SCRIPT">anNvbiA9IEpTT04uc3RyaW5naWZ5KHsNCiAgICB0eXBlIDogdHlwZSwNCiAgICBwYXlsb2FkIDogcGF5bG9hZA0KfSkNCg0KcmV0dXJuIGpzb247</field>
          <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
        </block>
        <block type="procedures_defcustomreturn" id="$ddJErJe`G|i!1I8h-lj" x="663" y="113">
          <mutation statements="false">
            <arg name="host" varid="E4{G8%+?zO[buECtyli8"></arg>
            <arg name="json" varid="ndKqZ+s}Q8_J2zgP{]Hi"></arg>
            <arg name="username" varid="NaEY_n)9Ak#D)p.|*DW)"></arg>
            <arg name="password" varid="jU:(at05h5/Z]).1pbAw"></arg>
          </mutation>
          <field name="NAME">request3</field>
          <field name="SCRIPT">Y29uc3QgYXhpb3MgPSByZXF1aXJlKCJheGlvcyIpOw0KDQpyZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4gew0KICAgICAgICBheGlvcy5wb3N0KGBodHRwOi8vJHtob3N0fTo4MDgwL2AsIGpzb24sIHsNCiAgICAgICAgICAgIGhlYWRlcnM6IHsNCiAgICAgICAgICAgICAgICAiQXV0aG9yaXphdGlvbiI6IGBCYXNpYyAke0J1ZmZlci5mcm9tKGAke3VzZXJuYW1lfToke3Bhc3N3b3JkfWApLnRvU3RyaW5nKCJiYXNlNjQiKX1gLA0KICAgICAgICAgICAgICAgICJDb250ZW50LVR5cGUiOiAiYXBwbGljYXRpb24vanNvbiINCiAgICAgICAgICAgIH0NCiAgICAgICAgfSkNCiAgICAgICAgLnRoZW4ocmVzcG9uc2UgPT4gcmVzb2x2ZShKU09OLnN0cmluZ2lmeShyZXNwb25zZS5kYXRhKSkpDQogICAgICAgIC5jYXRjaChlcnJvciA9PiByZWplY3QoZXJyb3IpKTsNCiAgICB9KTs=</field>
          <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
        </block>
      </xml>
      

      Beispiel2

      Ich habe es so Aufgebaut das es mit jeden Funktionen mit Message Client funktioniert.

      Jetzt zu deinen Fragen:

      1. Du musst bei type: process und bei payload: chrome ohne .exe eingeben, das wird automatisch drangehangen.
        Dann kannst du die Informationen aus den Variablen process und status entnehmen.

      2. Um zum Beispiel eine .bat datei oder eine Verknüpfung vom Desktop starten zu können musst du bei type: command eintragen und bei payload: C:\Users\xxxxx\Desktop\chrome.lnk für die Verknüpfung oder "C:\Users\xxxxx\Documents\start.bat" für die .bat Datei.

      posted in ioBroker Allgemein
      FelixCrafter83
      FelixCrafter83
    • RE: ioBroker-Windows Steuerung

      @qlink

      Um auf deine erste Frage drauf einzugehen:
      Ich persönlich benutze nicht mehr so viel Blockly, außer meiner alten Skripte.
      Ich nutze schon seit längeren nur noch Node-Red.
      Da würde man dann die http request node nehmen.

      So ich habe dein Blockly etwas nachgebaut und den request Block durch meinen erstellten Block ersetzt.

      Screenshot 2024-03-05 195852.png

      Da der Message-Client immer etwas zurücksendet, wie zum Beispiel:

      Systemfunction executing

      bei einer Systemfunktion, hat der Block request eine Ausgabe, die man in einer Variable, hier Antwort, speichern kann.

      Mein Block hat auch gewisse Eingabevariablen.
      Außer json müsste eigentlich alles selbsterklärend sein.
      Bei Json muss nämlich das in dieser Form eingeben werden:

      {"type":"hotkey","payload":"F15"}
      

      Mit dem json_generator kann man direkt auf die Werte zugreifen um den Typ (Modus) und den Payload (Inhalt) zu setzten.
      Dann wird daraus dieser String erzeugt und er muss nicht eingegeben werden.

      So würde das Beispiel aussehen, wenn man die screen_on Funktion nutzt:

      a904e268-25b9-4ab0-9f3c-4ce823f6d8a1-image.png
      Ich hoffe ich konnte dir hiermit weiterhelfen.
      Um noch die anderen Funktionen des Message-Client zu sehen, kannst du dir die readme auf Github ansehen.

      Hier das neue Beispiel Blockly:

      <xml xmlns="https://developers.google.com/blockly/xml">
        <variables>
          <variable id="ty4I6t;`3g2@Qo^cIGQS">type</variable>
          <variable id="zkcwi`_:P|Y-H+w!P0U3">payload</variable>
          <variable id="KJ`(],L1vH}H^)otDRqm">host</variable>
          <variable id="TjJSy2#L3OUQDiT~:I97">json</variable>
          <variable id="uo$)0f5gD`Gm=HjjOwa`">username</variable>
          <variable id="h33;DbV.1JTf?hPM3#_4">password</variable>
          <variable id="05cyd~/fXw)wYrY_9`j6">Antwort</variable>
        </variables>
        <block type="procedures_defcustomreturn" id="Z54Pq[qn:vy8Fw}n3A9]" x="613" y="63">
          <mutation statements="false">
            <arg name="type" varid="ty4I6t;`3g2@Qo^cIGQS"></arg>
            <arg name="payload" varid="zkcwi`_:P|Y-H+w!P0U3"></arg>
          </mutation>
          <field name="NAME">json_generator</field>
          <field name="SCRIPT">anNvbiA9IEpTT04uc3RyaW5naWZ5KHsNCiAgICB0eXBlIDogdHlwZSwNCiAgICBwYXlsb2FkIDogcGF5bG9hZA0KfSkNCg0KcmV0dXJuIGpzb247</field>
          <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
        </block>
        <block type="procedures_defcustomreturn" id="H!?tgvif0E3`u4B,w{e1" x="588" y="113">
          <mutation statements="false">
            <arg name="host" varid="KJ`(],L1vH}H^)otDRqm"></arg>
            <arg name="json" varid="TjJSy2#L3OUQDiT~:I97"></arg>
            <arg name="username" varid="uo$)0f5gD`Gm=HjjOwa`"></arg>
            <arg name="password" varid="h33;DbV.1JTf?hPM3#_4"></arg>
          </mutation>
          <field name="NAME">request</field>
          <field name="SCRIPT">cmV0dXJuIGF3YWl0IG5ldyBQcm9taXNlKA0KICAgIChyZXNvbHZlLCByZWplY3QpID0+IHsNCiAgICAgICAgcmVxdWlyZSgicmVxdWVzdCIpKCJodHRwOi8vIiArIGhvc3QgKyAiOjgwODAvIiwgew0KICAgICAgICAgICAgbWV0aG9kOiAiUE9TVCIsDQogICAgICAgICAgICBib2R5OiBqc29uLA0KICAgICAgICAgICAgaGVhZGVyczogew0KICAgICAgICAgICAgICAgICJBdXRob3JpemF0aW9uIjogYEJhc2ljICR7QnVmZmVyLmZyb20oYCR7dXNlcm5hbWV9OiR7cGFzc3dvcmR9YCkudG9TdHJpbmcoImJhc2U2NCIpfWAsDQogICAgICAgICAgICAgICAgIkNvbnRlbnQtTGVuZ3RoIjoganNvbi5sZW5ndGgsDQogICAgICAgICAgICAgICAgIkNvbnRlbnQtVHlwZSI6ICJhcHBsaWNhdGlvbi9qc29uIg0KICAgICAgICAgICAgfSANCiAgICAgICAgfSkub24oImRhdGEiLCAocmVzcG9uc2UpID0+IHsNCiAgICAgICAgICAgIHJlc29sdmUocmVzcG9uc2UudG9TdHJpbmcoKSkNCiAgICAgICAgfSkub24oImVycm9yIiwgKGVycm9yKSA9PiByZWplY3QoZXJyb3IpICk7DQogICAgfQ0KKQ==</field>
          <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
        </block>
        <block type="variables_set" id="YqU71]Z+:=wA)?51:4%)" x="138" y="188">
          <field name="VAR" id="05cyd~/fXw)wYrY_9`j6">Antwort</field>
          <value name="VALUE">
            <block type="procedures_callcustomreturn" id="C.@%1r4Dd)jcPQSno:Sr">
              <mutation name="request">
                <arg name="host"></arg>
                <arg name="json"></arg>
                <arg name="username"></arg>
                <arg name="password"></arg>
              </mutation>
              <value name="ARG0">
                <block type="text" id="[Rls=Dv(tX[~?,{I@=S{">
                  <field name="TEXT"></field>
                </block>
              </value>
              <value name="ARG1">
                <block type="procedures_callcustomreturn" id="%Jw---e/=/1p{vro~gUm">
                  <mutation name="json_generator">
                    <arg name="type"></arg>
                    <arg name="payload"></arg>
                  </mutation>
                  <value name="ARG0">
                    <block type="text" id="0%`5Ivayw4`)7fHe]/=/">
                      <field name="TEXT">systemfunction</field>
                    </block>
                  </value>
                  <value name="ARG1">
                    <block type="text" id="dh{WIfs1!eh`gC[LExVD">
                      <field name="TEXT">screen_on</field>
                    </block>
                  </value>
                </block>
              </value>
              <value name="ARG2">
                <block type="text" id="uufN7iZ[`pZzC=_jH+AS">
                  <field name="TEXT"></field>
                </block>
              </value>
              <value name="ARG3">
                <block type="text" id="82y)t{xcd!]EG?A-ts8?">
                  <field name="TEXT"></field>
                </block>
              </value>
            </block>
          </value>
        </block>
      </xml>
      

      Beispiel

      posted in ioBroker Allgemein
      FelixCrafter83
      FelixCrafter83
    • RE: ioBroker-Windows Steuerung

      @felixcrafter83 hier mal ein einfaches Blockly

      <xml xmlns="https://developers.google.com/blockly/xml">
        <variables>
          <variable id="KJ`(],L1vH}H^)otDRqm">host</variable>
          <variable id="TjJSy2#L3OUQDiT~:I97">json</variable>
          <variable id="uo$)0f5gD`Gm=HjjOwa`">username</variable>
          <variable id="h33;DbV.1JTf?hPM3#_4">password</variable>
          <variable id="ty4I6t;`3g2@Qo^cIGQS">type</variable>
          <variable id="zkcwi`_:P|Y-H+w!P0U3">payload</variable>
        </variables>
        <block type="procedures_defcustomreturn" id="Z54Pq[qn:vy8Fw}n3A9]" x="388" y="163">
          <mutation statements="false">
            <arg name="type" varid="ty4I6t;`3g2@Qo^cIGQS"></arg>
            <arg name="payload" varid="zkcwi`_:P|Y-H+w!P0U3"></arg>
          </mutation>
          <field name="NAME">json_generator</field>
          <field name="SCRIPT">anNvbiA9IEpTT04uc3RyaW5naWZ5KHsNCiAgICB0eXBlIDogdHlwZSwNCiAgICBwYXlsb2FkIDogcGF5bG9hZA0KfSkNCg0KcmV0dXJuIGpzb247</field>
          <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
        </block>
        <block type="procedures_defcustomreturn" id="H!?tgvif0E3`u4B,w{e1" x="363" y="213">
          <mutation statements="false">
            <arg name="host" varid="KJ`(],L1vH}H^)otDRqm"></arg>
            <arg name="json" varid="TjJSy2#L3OUQDiT~:I97"></arg>
            <arg name="username" varid="uo$)0f5gD`Gm=HjjOwa`"></arg>
            <arg name="password" varid="h33;DbV.1JTf?hPM3#_4"></arg>
          </mutation>
          <field name="NAME">request</field>
          <field name="SCRIPT">cmV0dXJuIGF3YWl0IG5ldyBQcm9taXNlKA0KICAgIChyZXNvbHZlLCByZWplY3QpID0+IHsNCiAgICAgICAgcmVxdWlyZSgicmVxdWVzdCIpKCJodHRwOi8vIiArIGhvc3QgKyAiOjgwODAvIiwgew0KICAgICAgICAgICAgbWV0aG9kOiAiUE9TVCIsDQogICAgICAgICAgICBib2R5OiBqc29uLA0KICAgICAgICAgICAgaGVhZGVyczogew0KICAgICAgICAgICAgICAgICJBdXRob3JpemF0aW9uIjogYEJhc2ljICR7QnVmZmVyLmZyb20oYCR7dXNlcm5hbWV9OiR7cGFzc3dvcmR9YCkudG9TdHJpbmcoImJhc2U2NCIpfWAsDQogICAgICAgICAgICAgICAgIkNvbnRlbnQtTGVuZ3RoIjoganNvbi5sZW5ndGgsDQogICAgICAgICAgICAgICAgIkNvbnRlbnQtVHlwZSI6ICJhcHBsaWNhdGlvbi9qc29uIg0KICAgICAgICAgICAgfSANCiAgICAgICAgfSkub24oImRhdGEiLCAocmVzcG9uc2UpID0+IHsNCiAgICAgICAgICAgIHJlc29sdmUocmVzcG9uc2UudG9TdHJpbmcoKSkNCiAgICAgICAgfSkub24oImVycm9yIiwgKGVycm9yKSA9PiByZWplY3QoZXJyb3IpICk7DQogICAgfQ0KKQ==</field>
          <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
        </block>
        <block type="debug" id="ePOz,x@MKz1g)2wigSnN" x="288" y="288">
          <field name="Severity">log</field>
          <value name="TEXT">
            <shadow type="text" id="hS%`zO#~k-4MXX-FEeAC">
              <field name="TEXT">test</field>
            </shadow>
            <block type="procedures_callcustomreturn" id="^*Az[{MYOMj2uz*YnE6?">
              <mutation name="request">
                <arg name="host"></arg>
                <arg name="json"></arg>
                <arg name="username"></arg>
                <arg name="password"></arg>
              </mutation>
              <value name="ARG0">
                <block type="text" id="nJ6}9CO8#+E6Lv=*u!v`">
                  <field name="TEXT"></field>
                </block>
              </value>
              <value name="ARG1">
                <block type="procedures_callcustomreturn" id="3$aWe1!t,IpxVZUMK;r,">
                  <mutation name="json_generator">
                    <arg name="type"></arg>
                    <arg name="payload"></arg>
                  </mutation>
                  <value name="ARG0">
                    <block type="text" id="~Ib61]lS,~^qe~T~r=SI">
                      <field name="TEXT">message</field>
                    </block>
                  </value>
                  <value name="ARG1">
                    <block type="text" id="eS2f]eyhtAoXXuoXAu|1">
                      <field name="TEXT">Test</field>
                    </block>
                  </value>
                </block>
              </value>
              <value name="ARG2">
                <block type="text" id="_{#_8d{.GWj)J01tCv5}">
                  <field name="TEXT"></field>
                </block>
              </value>
              <value name="ARG3">
                <block type="text" id="{([:tjE/NL/gn(Qr0e]5">
                  <field name="TEXT"></field>
                </block>
              </value>
            </block>
          </value>
        </block>
      </xml>
      

      Message-Client.xml

      posted in ioBroker Allgemein
      FelixCrafter83
      FelixCrafter83
    • RE: ioBroker-Windows Steuerung

      @qlink So die Befehle sind nun impementiert.
      https://github.com/felixcrafter54/message-client/releases/tag/v1.7

      Ich versuche jetzt mal ein Blockly zu basteln

      posted in ioBroker Allgemein
      FelixCrafter83
      FelixCrafter83
    • RE: ioBroker-Windows Steuerung

      @qlink die abfrage ob z.bsp chrome läuft gibt es jetzt, zusätzlich gibt es jetzt auch die hotkeys senden option

      posted in ioBroker Allgemein
      FelixCrafter83
      FelixCrafter83
    • RE: ioBroker-Windows Steuerung

      @qlink ist theoretisch möglich, ich kann es ja Mal versuchen.

      Hat denn schon jemand mein Tool ausprobiert?

      posted in ioBroker Allgemein
      FelixCrafter83
      FelixCrafter83
    • RE: ioBroker-Windows Steuerung

      @codierknecht vielen Dank😀👍

      posted in ioBroker Allgemein
      FelixCrafter83
      FelixCrafter83
    • RE: ioBroker-Windows Steuerung

      @homoran was meinst du mit Titel?
      Ich bin sehr neu hier im Forum.

      posted in ioBroker Allgemein
      FelixCrafter83
      FelixCrafter83
    • RE: ioBroker-Windows Steuerung

      @liv-in-sky bei mir klappt es aber auf anderen Rechnern
      Ich kann aber auch nochmal die exe erstellen.

      posted in ioBroker Allgemein
      FelixCrafter83
      FelixCrafter83
    Community
    Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
    The ioBroker Community 2014-2023
    logo