Navigation

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

    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

    M
    • Profile
    • Following 0
    • Followers 0
    • Topics 4
    • Posts 10
    • Best 0
    • Groups 1

    mrbelvedere58

    @mrbelvedere58

    0
    Reputation
    6
    Profile views
    10
    Posts
    0
    Followers
    0
    Following
    Joined Last Online

    mrbelvedere58 Follow
    Starter

    Latest posts made by mrbelvedere58

    • RE: ist Objekid in mysql vorhanden

      @mrbelvedere58 [Gelöst]

      posted in Skripten / Logik
      M
      mrbelvedere58
    • RE: ist Objekid in mysql vorhanden

      @mrbelvedere58 hat sich erledigt die Nummer in der db hatten ein Leerzeichen drin
      trotzdem vielen dank

      posted in Skripten / Logik
      M
      mrbelvedere58
    • RE: ist Objekid in mysql vorhanden

      @tt-tom das soll ein Telefonbuch werden in Verbindung mi dem tr-064 Adapter und vom Handy über macrodroid was auch alles geht daher brauche ich die Nummer ich habe ja mehrere Einträge in der db.
      der timestamp ist immer 3x gleich für die einträge in der db daher kann ich nur die val mit der Telefonnummer abfragen. C

      bei result kommt nichts zurück er geht gar nicht erst dort hin habe es auch mit diesem Scrip probiert er geht nicht in die db

      on({ id: [].concat(['0_userdata.0.HandyZustand.Anrufer-Nummer']), change: 'any' }, async (obj) => {
        const telefonnummer = obj.state ? obj.state.val.trim().toLowerCase() : '';
          console.log(`${telefonnummer}`); // die nummer wird ausgegeben
      
      
          sendTo('sql.0', 'query', `SELECT val, ts, id FROM homematic.ts_string WHERE val LIKE '%${telefonnummer}%'`, (result) => {
              const uniqueTimestamps = new Set(); result.result.forEach(row => { uniqueTimestamps.add(row.ts); });
                  uniqueTimestamps.forEach(timestamp => {
                      sendTo('sql.0', 'query', `SELECT val, ts, id FROM homematic.ts_string WHERE ts = ${timestamp}`, (result) => {
                          result.result.forEach(row => {
                             const { val, id } = row;
                                  if (id == "55") {
                                  console.log(`${val}`); // hier kommt schreiben rein für Bild
                                  }
                                 if (id == "56") {
                                  console.log(`${val}`); // hier kommt schreiben rein für Name
                                  }
                                  if (id == "57") {
                                  console.log(`${val}`); // hier kommt schreiben rein für tel Nummer
                                  }
                          });
                      });
                  });
          });
      });
      

      es wird nur das obere log ausgegeben aber nichts aus der db

      posted in Skripten / Logik
      M
      mrbelvedere58
    • ist Objekid in mysql vorhanden

      Hallo zusammen,
      ich habe ein kleines Problem mit der Verbindung von Objektid und SQL.
      ich bin was dieses angeht noch Anfänger und habe das ganze so zusammen gepuzzelt.
      ich schreibe 3 werte als string in die Datenbank diese sind auch vorhanden ts_string
      id=55 ts=1732173193906 val=Name des Anrufers
      id=56 ts=1732173193906 val=Telefonnummer des Anrufers
      id=57 ts=1732173193906 val=Bild Pfad des Anrufers zb. /vis.0/main/img/anrufer/peter.png
      diese kann ich auch abrufen.

      const telefonnummer = '030655555'; // diese nummer soll von einer Objektid kommen
      
      sendTo('sql.0', 'query', `SELECT val, ts, id FROM homematic.ts_string WHERE val LIKE '%${telefonnummer}%'`, (result) => {
          const uniqueTimestamps = new Set(); result.result.forEach(row => { uniqueTimestamps.add(row.ts); });
              uniqueTimestamps.forEach(timestamp => {
                  sendTo('sql.0', 'query', `SELECT val, ts, id FROM homematic.ts_string WHERE ts = ${timestamp}`, (result) => {
                      result.result.forEach(row => {
                          const { val, id } = row;
                              if (id == "55") {
                                  console.log(`${val}`); // hier kommt schreiben rein für Bild
                              }
                              if (id == "56") {
                                  console.log(`${val}`); // hier kommt schreiben rein für Name
                              }
                              if (id == "57") {
                                  console.log(`${val}`); // hier kommt schreiben rein für tel Nummer
                              }
                      });
                  });
              });
      });
      

      soweit geht das
      jetzt habe ich ver sucht das ganze über eine Objektid zu lösen wenn objektid sich aktualisiert wird dann soll die dort eingetragene Telefonnummer in eine variable gesetzt werden. das geht
      es soll nun geprüft werden ob es diese Nummer in der Datenbank gibt wenn ja dann aktualisire Objektid mit den in der DB vorhandenen Daten.

      on({ id: [].concat(['0_userdata.0.HandyZustand.Anrufer-Nummer']), change: 'any' }, async (obj) => {
        const telefonnummer = obj.state ? obj.state.val.trim().toLowerCase() : '';
          console.log(`${telefonnummer}`); // die nummer wird ausgegeben
            const  result = await sendToAsync('sql.0', 'query', `SELECT val, ts, id FROM homematic.ts_string WHERE val LIKE '%${telefonnummer}%'`, (result) => {
            if (result.length >= 0) {
          const uniqueTimestamps = new Set(); result.result.forEach(row => { uniqueTimestamps.add(row.ts); });
              uniqueTimestamps.forEach(timestamp => {
                  sendTo('sql.0', 'query', `SELECT val, ts, id FROM homematic.ts_string WHERE ts = ${timestamp}`, (result) => {
                      result.result.forEach(row => {
                          const { val, id } = row;
                              if (id == "55") {
                                  console.log(`${val}`); // hier für Bild
                              }
                              if (id == "56") {
                                  console.log(`${val}`); // hier für Name
                              }
                              if (id == "57") {
                                  console.log(`${val}`); // hier für Telefonnummer
                              }
                      });
                  });
              });
      } else {
                console.log(`kein zugrif auf db`);
             }
      });
      });
      

      als Ausgabe bekomme ich nur kein zugrif auf db wo liegt hier das Problem ich komme nicht weiter vielleicht hat ja einer eine idee

      posted in Skripten / Logik
      M
      mrbelvedere58
    • alexa2 volume lässt sich nicht mehr einstellen

      Hallo,

      ich habe folgendes Problem nach dem update von v2.6.2 auf v2.6.4 kann ich die Lautstärke beim meinem Echo nicht mehr von iobroker aus steuern. Ich würde gern die alte v2.6.2 wieder aufspielen doch im netz finde ich immer nur v2.6.4 . hat jemand noch die v2.6.2 zu liegen?
      Oder gibt es einer andere Lösung.

      vielen dank im voraus
      Manne

      posted in ioBroker Allgemein
      M
      mrbelvedere58
    • RE: Tr-064 zeichenkette zerlegen

      Hier mal mein fertiges Script

      welches mir das Bild des gerade anrufenden Anrufers zeig, sollte kein Bild vorhanden sein wir es durch eine Dumy Bild ersetzt.

      das gleiche ist beim Anrufer-Namen, ist keiner vorhanden wird die Nummer angezeigt.

      eine pause von 1 secunde verhindert das alte Daten eingelesen werden.

      ! on({id: 'tr-064.0.callmonitor.ringing', change: "ne"}, function (obj1) {
      ! var value = obj1.state.val;
      ! var oldValue = obj1.oldState.val;
      ! timeout = setTimeout(function () {
      ! var obj = JSON.parse(getState('tr-064.0.callmonitor.inbound.json').val);
      ! setState("javascript.0.scriptEnabled.Telefon.Anrufernummer",obj.caller);
      ! var nem = obj.callerName;
      ! if (nem === ""){
      ! var nem1 = obj.caller;
      ! setState("javascript.0.scriptEnabled.Telefon.Anrufername",nem1);
      ! } else {
      ! setState("javascript.0.scriptEnabled.Telefon.Anrufername",nem);
      ! }
      ! var pic = obj.imageurlcaller;
      ! if (pic === undefined){
      ! var pic1 = "http://localhost:8082/vis.0/main/img/anrufer/call.png";
      ! setState("javascript.0.scriptEnabled.Telefon.Anruferbild",pic1);
      ! } else {
      ! setState("javascript.0.scriptEnabled.Telefon.Anruferbild",pic);
      ! }
      ! }, 1000);
      ! });
      geht bestimmt auch besser aber als Anfänger kann ich es gut benutzen

      posted in Skripten / Logik
      M
      mrbelvedere58
    • RE: Tr-064 zeichenkette zerlegen

      Jo,

      Danke das hat mich weiter gebracht werde jetzt noch einen Trigger einbauen und eine if schleife wenn kein Bild vorhanden ist

      vielen Dank

      Manne

      posted in Skripten / Logik
      M
      mrbelvedere58
    • RE: Tr-064 zeichenkette zerlegen

      vielen Dank für die Hilfe,

      ich habe es jetzt hin bekommen das er mir callee, caller oder callerName ausgibt aber in Anführungszeichen

      bei imageurlcaller trägt er nur "null" ein obwohl der Bild Pfad da ist

      ! var pic = String(getState("tr-064.0.callmonitor.inbound.imageurlcaller").val, 0, false);
      ! var pic = setState("javascript.0.Anruferbild",JSON.stringify(pic));
      ! log(" Bild : " + pic);
      und im log steht Bild : undefined obwohl er einen wert in Anrufferbild schreibt

      posted in Skripten / Logik
      M
      mrbelvedere58
    • Tr-064 zeichenkette zerlegen

      Hallo.

      Ich bin noch Anfänger und kann nichts finden was mir ein Anrufer Bild ausgibt.

      im tr-064.0.callmonitor.inbound.json wird mir eine zeichenkette angezeigt im Format {"caller":"01777987326","callee":"65908000","_type":"inbound","callerName":"","imageurlcaller":""}

      jetzt möchte ich den nur einen Eintrag ,den wert aus imageurlcaller in eine neue Variable schreiben

      mein Code sieht so aus

      ! var obj = "tr-064.0.callmonitor.inbound.json"/json/;
      ! //var obj = {"caller":"01777987326","callee":"65908000","_type":"inbound","imageurlcaller":"Http usw."};
      ! var pic = obj.imageurlcaller;
      ! setState("javascript.0.Anruferbild",JSON.stringify(pic));
      ! log("Bild:" + pic);

      Doch es geht nicht, wenn ich die 2 Zeile aktiviere trägt er mir das Ergebnis ein, aber nicht bei Zeile 1

      im log steht nur javascript.0 script.js.Name.beleuchtung: Nummer :undefined

      wo liegt der Fehler?

      vielleicht kann mir jemand weiter helfen

      vielen Dank Manne

      posted in Skripten / Logik
      M
      mrbelvedere58
    • Tr-064 callmonitor inbound json

      Hallo,

      Ich benötige mal etwas Hilfe.

      im callmonitor inbound json wird angezeigt wer gerade Anruft, in VIS wird mir auch soweit die json Tabelle angezeigt.

      wie bekomme ich es jetzt hin das mir auch das Bild (imageurlcaller) angezeigt wird. Bei mir sehe ich nur den phat stehen.

      898_tabelle.jpg

      Einen Gruß aus Berlin

      Manne

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