Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. JavaScript
  5. [gelöst] auf globale Objekt kann nicht zugegriffen werden

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    2.2k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    944

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.2k

[gelöst] auf globale Objekt kann nicht zugegriffen werden

Geplant Angeheftet Gesperrt Verschoben JavaScript
52 Beiträge 5 Kommentatoren 1.4k Aufrufe 3 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • Ben1983B Ben1983

    @haus-automatisierung Ah ok.

    Schade,dass es nicht geht. Dann bekomme ich halt lauter Fehlermeldungen und weiß nicht, ob es wirklich Fehler sind.

    Ich habe es so "umständlich" definiert,
    da ich einzelne "Bereiche" habe und und dort immer wieder dann etwas hinzufüge.
    Also nicht alles in einem Block definiere.

    Am besten feature request als issue?

    haus-automatisierungH Offline
    haus-automatisierungH Offline
    haus-automatisierung
    Developer Most Active
    schrieb am zuletzt editiert von
    #4

    @ben1983 sagte in auf globale Objekt kann nicht zugegriffen werden:

    Am besten feature request als issue?

    Zu dem Thema gibt es schon ein paar ähnliche Issues, such mal durch.

    🧑‍🎓 Autor des beliebten ioBroker-Master-Kurses
    🎥 Tutorials rund um das Thema DIY-Smart-Home: https://haus-automatisierung.com/
    📚 Meine inoffizielle ioBroker Dokumentation

    Ben1983B 1 Antwort Letzte Antwort
    0
    • haus-automatisierungH haus-automatisierung

      @ben1983 sagte in auf globale Objekt kann nicht zugegriffen werden:

      Am besten feature request als issue?

      Zu dem Thema gibt es schon ein paar ähnliche Issues, such mal durch.

      Ben1983B Offline
      Ben1983B Offline
      Ben1983
      schrieb am zuletzt editiert von
      #5

      @haus-automatisierung OK.
      Meinst DU es ist "Besser" das Objekt nur dazu definieren, wo es gebraucht wird?
      Also dann im worst case 2-3 mal in unterschiedlichen Skripten und den Global Ordner so gar nicht nutzen?

      Lerne ja gerne dazu :-)

      haus-automatisierungH paul53P 2 Antworten Letzte Antwort
      0
      • Ben1983B Ben1983

        @haus-automatisierung OK.
        Meinst DU es ist "Besser" das Objekt nur dazu definieren, wo es gebraucht wird?
        Also dann im worst case 2-3 mal in unterschiedlichen Skripten und den Global Ordner so gar nicht nutzen?

        Lerne ja gerne dazu :-)

        haus-automatisierungH Offline
        haus-automatisierungH Offline
        haus-automatisierung
        Developer Most Active
        schrieb am zuletzt editiert von
        #6

        @ben1983 Weiß nicht, ob es da den besten Weg gibt. Jeder hat andere Vorzüge. Ich sehe z.B. gern auf einen Blick, was im Script passiert. Und wenn da dann Dinge aus Global kommen, sehe ich das ja nicht mehr. Daher verwende ich den Ordner z.B. gar nicht.

        Aber: Geschmackssache.

        🧑‍🎓 Autor des beliebten ioBroker-Master-Kurses
        🎥 Tutorials rund um das Thema DIY-Smart-Home: https://haus-automatisierung.com/
        📚 Meine inoffizielle ioBroker Dokumentation

        Ben1983B 1 Antwort Letzte Antwort
        0
        • haus-automatisierungH haus-automatisierung

          @ben1983 Weiß nicht, ob es da den besten Weg gibt. Jeder hat andere Vorzüge. Ich sehe z.B. gern auf einen Blick, was im Script passiert. Und wenn da dann Dinge aus Global kommen, sehe ich das ja nicht mehr. Daher verwende ich den Ordner z.B. gar nicht.

          Aber: Geschmackssache.

          Ben1983B Offline
          Ben1983B Offline
          Ben1983
          schrieb am zuletzt editiert von Ben1983
          #7

          @haus-automatisierung OK.
          ist ein gutes Argument.

          Ich nutze allerdings auch ein Skript für globale Funktionen, die ich oft verwende.
          Hab z.B. eine Funktion, die einfach ein senden an die Alexainstanzen wrapt

          function sendAlexaMessage(message, deviceId)
          {
              setState(deviceId + ".Commands.speak", message);
          }
          

          Die wird halt sehr oft in unterschiedlichen Skipten verwendet

          haus-automatisierungH 1 Antwort Letzte Antwort
          0
          • Ben1983B Ben1983

            @haus-automatisierung OK.
            ist ein gutes Argument.

            Ich nutze allerdings auch ein Skript für globale Funktionen, die ich oft verwende.
            Hab z.B. eine Funktion, die einfach ein senden an die Alexainstanzen wrapt

            function sendAlexaMessage(message, deviceId)
            {
                setState(deviceId + ".Commands.speak", message);
            }
            

            Die wird halt sehr oft in unterschiedlichen Skipten verwendet

            haus-automatisierungH Offline
            haus-automatisierungH Offline
            haus-automatisierung
            Developer Most Active
            schrieb am zuletzt editiert von
            #8

            @ben1983 Das mache ich mit sendTo / onMessage

            🧑‍🎓 Autor des beliebten ioBroker-Master-Kurses
            🎥 Tutorials rund um das Thema DIY-Smart-Home: https://haus-automatisierung.com/
            📚 Meine inoffizielle ioBroker Dokumentation

            Ben1983B 2 Antworten Letzte Antwort
            0
            • haus-automatisierungH haus-automatisierung

              @ben1983 Das mache ich mit sendTo / onMessage

              Ben1983B Offline
              Ben1983B Offline
              Ben1983
              schrieb am zuletzt editiert von
              #9

              @haus-automatisierung OK

              1 Antwort Letzte Antwort
              0
              • haus-automatisierungH haus-automatisierung

                @ben1983 Das mache ich mit sendTo / onMessage

                Ben1983B Offline
                Ben1983B Offline
                Ben1983
                schrieb am zuletzt editiert von
                #10

                @haus-automatisierung nutzt Du immer sendTo?
                Oder auch messageTo (innerhalb von Skripten)?

                haus-automatisierungH 1 Antwort Letzte Antwort
                0
                • Ben1983B Ben1983

                  @haus-automatisierung nutzt Du immer sendTo?
                  Oder auch messageTo (innerhalb von Skripten)?

                  haus-automatisierungH Offline
                  haus-automatisierungH Offline
                  haus-automatisierung
                  Developer Most Active
                  schrieb am zuletzt editiert von haus-automatisierung
                  #11

                  @ben1983 sagte in auf globale Objekt kann nicht zugegriffen werden:

                  Oder auch messageTo (innerhalb von Skripten)?

                  Ist technisch genau das gleiche. messageTo nutzt auch sendTo.

                  https://github.com/ioBroker/ioBroker.javascript/blob/ae0a27b3edca7e346ddfbff81df40ff77fbfbcd8/lib/sandbox.js#L3526-L3573

                  https://github.com/ioBroker/ioBroker.javascript/blob/ae0a27b3edca7e346ddfbff81df40ff77fbfbcd8/main.js#L724-L725

                  🧑‍🎓 Autor des beliebten ioBroker-Master-Kurses
                  🎥 Tutorials rund um das Thema DIY-Smart-Home: https://haus-automatisierung.com/
                  📚 Meine inoffizielle ioBroker Dokumentation

                  Ben1983B 1 Antwort Letzte Antwort
                  0
                  • haus-automatisierungH haus-automatisierung

                    @ben1983 sagte in auf globale Objekt kann nicht zugegriffen werden:

                    Oder auch messageTo (innerhalb von Skripten)?

                    Ist technisch genau das gleiche. messageTo nutzt auch sendTo.

                    https://github.com/ioBroker/ioBroker.javascript/blob/ae0a27b3edca7e346ddfbff81df40ff77fbfbcd8/lib/sandbox.js#L3526-L3573

                    https://github.com/ioBroker/ioBroker.javascript/blob/ae0a27b3edca7e346ddfbff81df40ff77fbfbcd8/main.js#L724-L725

                    Ben1983B Offline
                    Ben1983B Offline
                    Ben1983
                    schrieb am zuletzt editiert von
                    #12

                    @haus-automatisierung OK, danke

                    Ich bekomme nur bei der messageTo den log geschrieben, was ist denn beim SendTo falsch?

                    
                    messageTo("Testmessage",{name:"Testname"},(callbackdata)=>{
                        log(JSON.stringify(callbackdata));   
                    });
                    
                    sendTo("javascript.0",'toScript', {
                            script: 'script.js.x_testskripte._a_Mesagetest', 
                            message: 'Testmessage', 
                            data: {
                                flag: true
                            },function(res){
                                log(JSON.stringify(res));
                            } 
                    });
                    
                    onMessage("Testmessage",(messagedata,callback) =>{
                        const myData = {input: messagedata,
                                        output:{name:"Test"}};
                        callback(myData)
                    });
                    

                    Ps. die funktionieren NUR mit callback,oder?
                    Also mit return kann man nichts zurückgeben, dass man das Ergebnis einer Funktion in einer Zeile direkt zuweisen kann.
                    Oder?

                    haus-automatisierungH 1 Antwort Letzte Antwort
                    0
                    • Ben1983B Ben1983

                      @haus-automatisierung OK, danke

                      Ich bekomme nur bei der messageTo den log geschrieben, was ist denn beim SendTo falsch?

                      
                      messageTo("Testmessage",{name:"Testname"},(callbackdata)=>{
                          log(JSON.stringify(callbackdata));   
                      });
                      
                      sendTo("javascript.0",'toScript', {
                              script: 'script.js.x_testskripte._a_Mesagetest', 
                              message: 'Testmessage', 
                              data: {
                                  flag: true
                              },function(res){
                                  log(JSON.stringify(res));
                              } 
                      });
                      
                      onMessage("Testmessage",(messagedata,callback) =>{
                          const myData = {input: messagedata,
                                          output:{name:"Test"}};
                          callback(myData)
                      });
                      

                      Ps. die funktionieren NUR mit callback,oder?
                      Also mit return kann man nichts zurückgeben, dass man das Ergebnis einer Funktion in einer Zeile direkt zuweisen kann.
                      Oder?

                      haus-automatisierungH Offline
                      haus-automatisierungH Offline
                      haus-automatisierung
                      Developer Most Active
                      schrieb am zuletzt editiert von haus-automatisierung
                      #13

                      @ben1983 sagte in auf globale Objekt kann nicht zugegriffen werden:

                      Also mit return kann man nichts zurückgeben, dass man das Ergebnis einer Funktion in einer Zeile direkt zuweisen kann.

                      Na Du kannst doch mit sendToAsync und await arbeiten. Ganz normal mit Promises halt.

                      https://github.com/ioBroker/ioBroker.javascript/blob/master/docs/en/javascript.md#sendtoasync

                      Oder halt messageToAsync:

                      https://github.com/ioBroker/ioBroker.javascript/blob/master/docs/en/javascript.md#messagetoasync

                      🧑‍🎓 Autor des beliebten ioBroker-Master-Kurses
                      🎥 Tutorials rund um das Thema DIY-Smart-Home: https://haus-automatisierung.com/
                      📚 Meine inoffizielle ioBroker Dokumentation

                      Ben1983B 1 Antwort Letzte Antwort
                      0
                      • haus-automatisierungH haus-automatisierung

                        @ben1983 sagte in auf globale Objekt kann nicht zugegriffen werden:

                        Also mit return kann man nichts zurückgeben, dass man das Ergebnis einer Funktion in einer Zeile direkt zuweisen kann.

                        Na Du kannst doch mit sendToAsync und await arbeiten. Ganz normal mit Promises halt.

                        https://github.com/ioBroker/ioBroker.javascript/blob/master/docs/en/javascript.md#sendtoasync

                        Oder halt messageToAsync:

                        https://github.com/ioBroker/ioBroker.javascript/blob/master/docs/en/javascript.md#messagetoasync

                        Ben1983B Offline
                        Ben1983B Offline
                        Ben1983
                        schrieb am zuletzt editiert von Ben1983
                        #14

                        @haus-automatisierung AH ok... hatte mir mal etwas drum rum gebaut, weil damals ein fehler im sendToAsynch war... weiß leider nicht mehr was :-(

                        async function mySendToAsync(_adapter, cmd, msg) {
                            return new Promise((resolve, reject) => {
                                sendTo(_adapter, cmd, msg, res => {
                                    if (!res || res.error) {
                                        reject(res ? res.error : new Error('Unknown error'));
                                    } else {
                                        resolve(res);
                                    }
                                });
                            });
                        }
                        

                        also kann man auch normal jetzt das messageToAsynch benutzen, oder wie?

                        Trotzdem macht er irgendwie meinen Callback nicht, ob wohl ich den aufrufe. (im sendTo)

                        haus-automatisierungH 1 Antwort Letzte Antwort
                        0
                        • Ben1983B Ben1983

                          @haus-automatisierung AH ok... hatte mir mal etwas drum rum gebaut, weil damals ein fehler im sendToAsynch war... weiß leider nicht mehr was :-(

                          async function mySendToAsync(_adapter, cmd, msg) {
                              return new Promise((resolve, reject) => {
                                  sendTo(_adapter, cmd, msg, res => {
                                      if (!res || res.error) {
                                          reject(res ? res.error : new Error('Unknown error'));
                                      } else {
                                          resolve(res);
                                      }
                                  });
                              });
                          }
                          

                          also kann man auch normal jetzt das messageToAsynch benutzen, oder wie?

                          Trotzdem macht er irgendwie meinen Callback nicht, ob wohl ich den aufrufe. (im sendTo)

                          haus-automatisierungH Offline
                          haus-automatisierungH Offline
                          haus-automatisierung
                          Developer Most Active
                          schrieb am zuletzt editiert von
                          #15

                          @ben1983 sagte in auf globale Objekt kann nicht zugegriffen werden:

                          also kann man auch normal jetzt das messageToAsynch benutzen, oder wie?

                          Hatte ich doch schon geschrieben, dass die beiden Funktionen praktisch identisch sind. Siehe Code. messageTo hat halt eine etwas andere Signatur und braucht weniger Infos. Siehe Doku.

                          Ich hatte das hier gefixt: https://github.com/ioBroker/ioBroker.javascript/pull/1343

                          Einfach die aktuellste Stable version nehmen dann passts.

                          🧑‍🎓 Autor des beliebten ioBroker-Master-Kurses
                          🎥 Tutorials rund um das Thema DIY-Smart-Home: https://haus-automatisierung.com/
                          📚 Meine inoffizielle ioBroker Dokumentation

                          Ben1983B 1 Antwort Letzte Antwort
                          0
                          • Ben1983B Ben1983

                            @haus-automatisierung Ah ok.

                            Schade,dass es nicht geht. Dann bekomme ich halt lauter Fehlermeldungen und weiß nicht, ob es wirklich Fehler sind.

                            Ich habe es so "umständlich" definiert,
                            da ich einzelne "Bereiche" habe und und dort immer wieder dann etwas hinzufüge.
                            Also nicht alles in einem Block definiere.

                            Am besten feature request als issue?

                            OliverIOO Offline
                            OliverIOO Offline
                            OliverIO
                            schrieb am zuletzt editiert von
                            #16

                            @ben1983 sagte in auf globale Objekt kann nicht zugegriffen werden:

                            Schade,dass es nicht geht. Dann bekomme ich halt lauter Fehlermeldungen und weiß nicht, ob es wirklich Fehler sind.

                            du könntest, zumindest temporär, die zeilen in dem das objekt aufgebaut wird in dein skript kopieren. dann funktioniert auch die vervollständigung.
                            wenn dann alles getestet ist und es funktioniert, dann entfernst du die zeilen wieder und die zeilen aus global wirken.

                            das einmalige definieren in global ist vor allem dann gut, wenn du regelmäßig das objekt in seiner definition erweiterst und du dir arbeit sparen willst. dadurch werden fehler reduziert.

                            Meine Adapter und Widgets
                            TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                            Links im Profil

                            1 Antwort Letzte Antwort
                            0
                            • haus-automatisierungH haus-automatisierung

                              @ben1983 sagte in auf globale Objekt kann nicht zugegriffen werden:

                              also kann man auch normal jetzt das messageToAsynch benutzen, oder wie?

                              Hatte ich doch schon geschrieben, dass die beiden Funktionen praktisch identisch sind. Siehe Code. messageTo hat halt eine etwas andere Signatur und braucht weniger Infos. Siehe Doku.

                              Ich hatte das hier gefixt: https://github.com/ioBroker/ioBroker.javascript/pull/1343

                              Einfach die aktuellste Stable version nehmen dann passts.

                              Ben1983B Offline
                              Ben1983B Offline
                              Ben1983
                              schrieb am zuletzt editiert von Ben1983
                              #17

                              @haus-automatisierung OK. Cool.

                              Könntest DU mir freundlicherweise noch sagen, warum ich hier keinen Log der Daten im Callback bekomme?
                              Ich finde es nicht. Aufruf wird geloggt

                              sendTo("javascript.0",'toScript', {
                                      script: 'script.js.x_testskripte._a_Mesagetest', 
                                      message: 'Testmessage', 
                                      data: {
                                          flag: true
                                      },function(res){
                                          log(JSON.stringify(res));
                                      } 
                              });
                              
                              onMessage("Testmessage",(messagedata,callback) =>{
                                  const myData = {input: messagedata,
                                                  output:{name:"Test"}};
                                  callback(myData)
                                  log("Aufruf ");
                              });
                              
                              haus-automatisierungH 1 Antwort Letzte Antwort
                              0
                              • Ben1983B Ben1983

                                @haus-automatisierung OK. Cool.

                                Könntest DU mir freundlicherweise noch sagen, warum ich hier keinen Log der Daten im Callback bekomme?
                                Ich finde es nicht. Aufruf wird geloggt

                                sendTo("javascript.0",'toScript', {
                                        script: 'script.js.x_testskripte._a_Mesagetest', 
                                        message: 'Testmessage', 
                                        data: {
                                            flag: true
                                        },function(res){
                                            log(JSON.stringify(res));
                                        } 
                                });
                                
                                onMessage("Testmessage",(messagedata,callback) =>{
                                    const myData = {input: messagedata,
                                                    output:{name:"Test"}};
                                    callback(myData)
                                    log("Aufruf ");
                                });
                                
                                haus-automatisierungH Offline
                                haus-automatisierungH Offline
                                haus-automatisierung
                                Developer Most Active
                                schrieb am zuletzt editiert von haus-automatisierung
                                #18

                                @ben1983 sagte in auf globale Objekt kann nicht zugegriffen werden:

                                Könntest DU mir freundlicherweise noch sagen, warum ich hier keinen Log der Daten im Callback bekomme?

                                Deine Klammern sind falsch. Die Function ist teil des Msg-Objektes und nicht als separater Parameter definiert. Wenn Du den Code schöner formatieren würdest, siehst Du das auch auf einen Blick :)

                                So gehts:

                                sendTo(
                                    'javascript.0',
                                    'toScript',
                                    {
                                        script: 'script.js.test.playground', 
                                        message: 'Testmessage', 
                                        data: {
                                            flag: true
                                        }
                                    },
                                    (res) => {
                                        console.log(JSON.stringify(res));
                                    }
                                );
                                
                                onMessage('Testmessage', (messagedata, callback) => {
                                    console.log('Aufruf');
                                    const myData = {
                                        input: messagedata,
                                        output: {
                                            name: 'Test'
                                        }
                                    };
                                
                                    callback(myData);
                                });
                                

                                🧑‍🎓 Autor des beliebten ioBroker-Master-Kurses
                                🎥 Tutorials rund um das Thema DIY-Smart-Home: https://haus-automatisierung.com/
                                📚 Meine inoffizielle ioBroker Dokumentation

                                Ben1983B 1 Antwort Letzte Antwort
                                0
                                • haus-automatisierungH haus-automatisierung

                                  @ben1983 sagte in auf globale Objekt kann nicht zugegriffen werden:

                                  Könntest DU mir freundlicherweise noch sagen, warum ich hier keinen Log der Daten im Callback bekomme?

                                  Deine Klammern sind falsch. Die Function ist teil des Msg-Objektes und nicht als separater Parameter definiert. Wenn Du den Code schöner formatieren würdest, siehst Du das auch auf einen Blick :)

                                  So gehts:

                                  sendTo(
                                      'javascript.0',
                                      'toScript',
                                      {
                                          script: 'script.js.test.playground', 
                                          message: 'Testmessage', 
                                          data: {
                                              flag: true
                                          }
                                      },
                                      (res) => {
                                          console.log(JSON.stringify(res));
                                      }
                                  );
                                  
                                  onMessage('Testmessage', (messagedata, callback) => {
                                      console.log('Aufruf');
                                      const myData = {
                                          input: messagedata,
                                          output: {
                                              name: 'Test'
                                          }
                                      };
                                  
                                      callback(myData);
                                  });
                                  
                                  Ben1983B Offline
                                  Ben1983B Offline
                                  Ben1983
                                  schrieb am zuletzt editiert von Ben1983
                                  #19

                                  @haus-automatisierung OK. Danke

                                  Beim Verwendet von messageToAsynch tritt dieser Fehler auf:

                                  messageToAsync("Testmessage",{name:"Testname"});
                                  
                                  	javascript.0 (20591) script.js.x_testskripte._a_Mesagetest: TypeError: Cannot read properties of undefined (reading 'timeout')
                                  
                                  haus-automatisierungH T 2 Antworten Letzte Antwort
                                  0
                                  • Ben1983B Ben1983

                                    @haus-automatisierung OK.
                                    Meinst DU es ist "Besser" das Objekt nur dazu definieren, wo es gebraucht wird?
                                    Also dann im worst case 2-3 mal in unterschiedlichen Skripten und den Global Ordner so gar nicht nutzen?

                                    Lerne ja gerne dazu :-)

                                    paul53P Offline
                                    paul53P Offline
                                    paul53
                                    schrieb am zuletzt editiert von
                                    #20

                                    @ben1983 sagte: "Besser" das Objekt nur dazu definieren, wo es gebraucht wird?

                                    Ja. Die Gruppe "global" verwendet man für häufig verwendete eigene Funktionen.
                                    Mit globalen Objektdefinitionen müllt man sich den RAM der Javascript-Instanz zu, da sie in jedem nicht globalen Skript kompiliert werden.

                                    Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                                    Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                                    Ben1983B 1 Antwort Letzte Antwort
                                    0
                                    • Ben1983B Ben1983

                                      @haus-automatisierung OK. Danke

                                      Beim Verwendet von messageToAsynch tritt dieser Fehler auf:

                                      messageToAsync("Testmessage",{name:"Testname"});
                                      
                                      	javascript.0 (20591) script.js.x_testskripte._a_Mesagetest: TypeError: Cannot read properties of undefined (reading 'timeout')
                                      
                                      haus-automatisierungH Offline
                                      haus-automatisierungH Offline
                                      haus-automatisierung
                                      Developer Most Active
                                      schrieb am zuletzt editiert von haus-automatisierung
                                      #21

                                      @ben1983 sagte in auf globale Objekt kann nicht zugegriffen werden:

                                      Beim Verwendet von messageToAsynch tritt dieser Fehler auf:

                                      Ist wohl nen Bug wenn die Options fehlen. So gehts:

                                      const res = await messageToAsync('Testmessage', { flag: true }, { timeout: 5000 });
                                      console.log(JSON.stringify(res));
                                      

                                      Machst einen GitHub Issue?

                                      🧑‍🎓 Autor des beliebten ioBroker-Master-Kurses
                                      🎥 Tutorials rund um das Thema DIY-Smart-Home: https://haus-automatisierung.com/
                                      📚 Meine inoffizielle ioBroker Dokumentation

                                      Ben1983B 1 Antwort Letzte Antwort
                                      0
                                      • Ben1983B Ben1983

                                        @haus-automatisierung OK. Danke

                                        Beim Verwendet von messageToAsynch tritt dieser Fehler auf:

                                        messageToAsync("Testmessage",{name:"Testname"});
                                        
                                        	javascript.0 (20591) script.js.x_testskripte._a_Mesagetest: TypeError: Cannot read properties of undefined (reading 'timeout')
                                        
                                        T Offline
                                        T Offline
                                        ticaki
                                        schrieb am zuletzt editiert von ticaki
                                        #22

                                        @ben1983 sagte in auf globale Objekt kann nicht zugegriffen werden:

                                        messageToAsync

                                        ups falsch gelesen

                                        EDIT aber trotzdem relevant und die Beschreibung/Definition sollte geändert werden.

                                        function messageToAsync(target: iobJS.MessageTarget | string, data: any, options?: any): Promise<iobJS.MessageCallback | iobJS.MessageCallbackInfo>;
                                        

                                        Der {timeout:30000} (zeit is nur ein Beispiel) sollte im Javascript-Adapter zumindest ein default sein oder die Angabe verpflichtend wie jetzt. Ohne timeout kann das an der Stelle hängen bleiben, wie ich schmerzlich feststellen mußt mit einem gleichzeitigen Defekt des Übertemperaturwächters am Boiler.

                                        Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

                                        Spenden

                                        haus-automatisierungH 1 Antwort Letzte Antwort
                                        0
                                        • T ticaki

                                          @ben1983 sagte in auf globale Objekt kann nicht zugegriffen werden:

                                          messageToAsync

                                          ups falsch gelesen

                                          EDIT aber trotzdem relevant und die Beschreibung/Definition sollte geändert werden.

                                          function messageToAsync(target: iobJS.MessageTarget | string, data: any, options?: any): Promise<iobJS.MessageCallback | iobJS.MessageCallbackInfo>;
                                          

                                          Der {timeout:30000} (zeit is nur ein Beispiel) sollte im Javascript-Adapter zumindest ein default sein oder die Angabe verpflichtend wie jetzt. Ohne timeout kann das an der Stelle hängen bleiben, wie ich schmerzlich feststellen mußt mit einem gleichzeitigen Defekt des Übertemperaturwächters am Boiler.

                                          haus-automatisierungH Offline
                                          haus-automatisierungH Offline
                                          haus-automatisierung
                                          Developer Most Active
                                          schrieb am zuletzt editiert von
                                          #23

                                          @ticaki sagte in auf globale Objekt kann nicht zugegriffen werden:

                                          Ohne timeout kann das an der Stelle hängen bleiben, wie ich schmerzlich feststellen mußt

                                          Habe ich gerade das erste mal von gehört. Gibts dazu schon einen GitHub Issue? Sollte zumindest in der nächsten Version gefixt sein:

                                          https://github.com/ioBroker/ioBroker.javascript/commit/41e59dfd72f99027a9a303beee8d4d5597826445

                                          🧑‍🎓 Autor des beliebten ioBroker-Master-Kurses
                                          🎥 Tutorials rund um das Thema DIY-Smart-Home: https://haus-automatisierung.com/
                                          📚 Meine inoffizielle ioBroker Dokumentation

                                          T 1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          467

                                          Online

                                          32.6k

                                          Benutzer

                                          82.2k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe