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. Praktische Anwendungen (Showcase)
  4. Alexa Ansagen I Telegram I EMail I Alias I VISU I HTML

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.7k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.2k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    16
    1
    3.0k

Alexa Ansagen I Telegram I EMail I Alias I VISU I HTML

Geplant Angeheftet Gesperrt Verschoben Praktische Anwendungen (Showcase)
alexaansageblocklyfensteriqontroljarvisjavascripttür-fenster-kontakt
524 Beiträge 40 Kommentatoren 122.2k Aufrufe 57 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.
  • dslraserD dslraser


    https://github.com/sbormann/ioBroker.alias-manager


    Im Beispielvideo werden die eigenen Alias ab Zeile 271 eingefügt, also ab dem ersten createAlias. In der Vorlage habe ich jeweils zwei meiner verwendeten Geräte als Beispiel eingefügt.
    Video Beispiel:
    alias_per_script_erstellen.m4v

    /**************************************************************
    Github - https://github.com/xCruziX/ioBroker-Creating-Alias/blob/master/CreateAlias.js
      			Changelog
    Version 1.1.4
    - fix error by using bCreateAliasPath and bConvertExistingPath (has no target 9/Error creating alias-path)
    **************************************************************/
    
    /**************************************
      	Flags /
      	Variablen
    ***************************************/
    
    // typeAlias = 'boolean'; // oder 'number'
    // read = "val == 'Ein' ? true : false"; // Erkennung "Aus" --> false erfolgt automatisch  
    // write = "val ? 'Ein' : 'Aus'";
    // nameAlias = 'Licht Haustür';
    // role = 'switch';
    // desc = 'per Script erstellt';
    // min = 0; // nur Zahlen
    // max = 100; // nur Zahlen
    // unit = '%'; // nur für Zahlen
    // states = {0: 'Aus', 1: 'Auto', 2: 'Ein'}; // Zahlen (Multistate) oder Logikwert (z.B. Aus/Ein)
    
    
    let bCreateAliasPath = true;  // If this flag is true, each folder is created seperately so rooms and functions can be assigned.
    
    /*
    Requirements: bCreateAliasPath == true
    If this flag is true, existing folders in the path will be converted so rooms and functions can be assigned.
    */
    let bConvertExistingPath = false;
    
    /***************************************
      	Don't change anything from here /
      	Ab hier nichts verändern
    ***************************************/
    
    let arEnum = [];
    let arId = [];
    let timeoutAssignEnum;
    var callbackAlias = undefined;
    function createAlias(idSrc, idDst,raum, gewerk,typeAlias, read, write, nameAlias, role, desc, min, max, unit, states) {
    if(!idDst.includes('alias.0.'))
        idDst = 'alias.0.' + idDst;
    if(!existsObject(idSrc))
    {
        log('Source-Id ' + idSrc +' does not exists.','warn');
        return;
    }
    
    // Create the object Path for alias id, 
    // so you can assign rooms and function to the parents
    var createAliasPath = (id) => {
         if(bCreateAliasPath){
              let lisMergedIds = [];
              let mergedId = 'alias.0';
              id = id.replace(mergedId + '.', ''); // Remove prefix alias so it will not be changed
              let split = id.split('.'); 
              for(let i=0;i<split.length-1;i++){
                  mergedId += '.' + split[i];
                  lisMergedIds.push(mergedId);
              }
              
              function path(){
                  if(lisMergedIds.length == 0) {
                      alias();
                      return;
                  }
                  let tmpId = lisMergedIds[0];
                  lisMergedIds.splice(0,1); // remove element
                  if(!existsObject(tmpId) || bConvertExistingPath){ // not exists
                      let obj;
                      if(existsObject(tmpId))
                          obj = getObject(tmpId);
                      else
                          obj = {};
    
                      let bApply = false;
                      if(obj != undefined){
                          if(obj.type == undefined || String(obj.type) != 'meta'){
                              obj.type = 'meta';
                              bApply = true;
                          }
                          if(obj.common == undefined){
                              obj.common = {};
                              obj.common.type = 'meta.folder';
                              bApply = true;
                          }
                          else if(obj.common.type == undefined || String(obj.common.type) != 'meta.folder'){
                              obj.common.type = 'meta.folder';
                              bApply = true;
                          }
                          if(obj.native == undefined){
                              obj.native = {};
                              bApply = true;
                          }
                      }
                      else{
                          path();
                          log('Object is undefined');
                          return;
                      }
                      
    
                      if(bApply){
                          setObject(tmpId, obj, (err) =>{
                          if(!err){
                              log('Created Alias-Path ' + tmpId);
                              path();
                          }
                          else
                              log('Error creating alias-path','error');
                      });
                      }
                      else
                          path();
                      
                  }
              }
              path();
         }
         else
           alias();
    }
    
    
    function alias(){
        // Create alias object
        
          if(!existsObject(idDst)){
              let obj = {};
              obj.type = 'state';
              obj.common = getObject(idSrc).common;
              obj.common.alias = {};
              obj.common.alias.id = idSrc;
              if(typeAlias !== undefined) 
                  obj.common.type = typeAlias;
              if(obj.common.read !== undefined) 
                  obj.common.alias.read = read;
              if(obj.common.write !== undefined) 
                  obj.common.alias.write = write;
              if(nameAlias !== undefined) 
                  obj.common.name = nameAlias;
              if(role !== undefined) 
                  obj.common.role = role;
              if(desc !== undefined) 
                  obj.common.desc = desc;
              if(min !== undefined) 
                  obj.common.min = min;
              if(max !== undefined) 
                  obj.common.max = max;
              if(unit !== undefined) 
                  obj.common.unit = unit;
              if(states !== undefined) 
                  obj.common.states = states;
    
              obj.native = {};
              obj.common.custom = {}; // Damit die Zuordnung zu iQontrol, Sql etc. nicht übernommen wird
              log('Created Alias-State ' + idDst);
              setObject(idDst, obj,(err) =>{ 
                  if(!err)
                      startAttach(); 
                  else
                      log('Error creating-alias','error');
              });
          }
          else
              startAttach();
    }
    
    
    // Save ID and Enum (room or function)
    var attach = (id, enu,value) => {
        if(id.length == 0){
            log('ID has lenght 0, can not attach to enum','warn');
            return;
        }
        if(value.length == 0){
            log('Value has lenght 0','warn');
            return;
        }
      
        let sEnuId = 'enum.' + enu + '.' + value;
        if(enu.length > 0 && existsObject(sEnuId)) 
        {
            let obj = getObject(sEnuId)
            let members = obj.common.members;
            if(!members.includes(id)){
                arEnum.push(sEnuId);
                arId.push(id);
            }
        }
        else
     	      log('Can not find enum ' + sEnuId,'warn');
    }
    
    function startAttach(){
      let bRoom = raum !== undefined && raum.length > 0;
      let bGewerk = gewerk !== undefined && gewerk.length > 0;
      
      if(bRoom)
          attach(idDst,'rooms',raum);
      if(bGewerk)
          attach(idDst,'functions',gewerk);
      if(bRoom || bGewerk){
              if(timeoutAssignEnum){
                  clearTimeout(timeoutAssignEnum);
                  timeoutAssignEnum = null;
              }
              timeoutAssignEnum = setTimeout(finishScript,100);
      }
    }
    
    createAliasPath(idDst);
    }
    
    function finishScript(){
      assignEnums();
    }
    
    // Add the saved IDs to the rooms/functions
    function assignEnums(){
    if(arEnum.length == 0 || arId.length == 0){
        return;
    }
    
    if(arEnum.length != arId.length){
        log('Arrays have different size','error');
        return;
    }
    let mapEnumId = new Map();
    
    for(let i=0;i < arEnum.length; i++){
       let enu = arEnum[i];
       let id = arId[i];
       if(existsObject(id)){
      	 let obj = getObject(enu)
      	 let members;
      	 if(!mapEnumId.has(enu)){
      		 members = obj.common.members;
      		 mapEnumId.set(enu,members);
      	 }
      	 else
      		 members = mapEnumId.get(enu);    
      	 if(!members.includes(id)){
      		  log("Adding " + id + " to " + enu);
      		  members.push(id);
      	 }	      
       }
       else
           log('Can not find Alias ' + id,'error');
    }
    
    function setMembers(members,enu,map){
        let obj = getObject(enu);
        obj.common.members = members;
        setObject(enu,obj);
    }
    mapEnumId.forEach(setMembers);
    }
    
    /**********************************************************
      	END /
      	ENDE
    **********************************************************/
    
    //////////////////////////////
    //  Fenster
    //////////////////////////////
    //2 x Fenstersensoren HMIP
    //einfache HMIP Fenstersensoren über rpc-Adapter in function fenster_alias
    //{0: 'geschlossen', 1: 'geöffnet'}
    createAlias('hm-rpc.0.xxx.1.STATE'/*Wohnzimmer Fenster links STATE*/, 'Fenster.Wohnzimmer_Fenster_links', undefined, 'fenster_alias', 'number', undefined, undefined, 'Wohnzimmer links', 'window.value', 'per Script erstellt', 0, 1, '',{0: 'geschlossen', 1: 'geöffnet'})
    createAlias('hm-rpc.0.xxx.1.STATE'/*Küche Fenster links STATE*/, 'Fenster.Kueche_Fenster_links', undefined, 'fenster_alias', 'number',undefined, undefined, 'Küche links', 'window.value', 'per Script erstellt', 0, 1, '',{0: 'geschlossen', 1: 'geöffnet'})
    
    //2 x Fenstersensoren HM
    //einfache HM Fenstersensoren über rpc-Adapter in function fenster_alias
    //{false: 'geschlossen', true: 'geöffnet'}
    createAlias('hm-rpc.0.xxx.1.STATE'/*Wohnzimmer Fenster links STATE*/, 'Fenster.Wohnzimmer_Fenster_links', undefined, 'fenster_alias', 'boolean', undefined, undefined, 'Wohnzimmer links', 'window.value', 'per Script erstellt', undefined, undefined, undefined, {false: 'geschlossen', true: 'geöffnet'})
    createAlias('hm-rpc.0.xxx.1.STATE'/*Küche Fenster links STATE*/, 'Fenster.Kueche_Fenster_links', undefined, 'fenster_alias', 'boolean',undefined, undefined, 'Küche links', 'window.value', 'per Script erstellt', undefined, undefined, undefined, {false: 'geschlossen', true: 'geöffnet'})
    
    
    //2 x Fensterdrehgriffe HMIP
    //HMIP Fensterdrehgriffe über rpc-Adapter in function fenster_alias
    //{0: 'geschlossen', 1: 'gekippt', 2: 'geöffnet'}
    createAlias('hm-rpc.0.xxx.1.STATE'/*Keller W-Baum Fenster STATE*/, 'Fenster.Keller_Weihnachtsbaum_Fenster', undefined, 'fenster_alias', 'number',undefined, undefined, 'Keller W Baum', 'window.value', 'per Script erstellt', 0, 2, '',{0: 'geschlossen', 1: 'gekippt', 2: 'geöffnet'})
    createAlias('hm-rpc.0.xxx.1.STATE'/*Keller Wohnzimmer Fenster mitte STATE*/, 'Fenster.Keller_Wohnzimmer_Fenster_mitte', undefined, 'fenster_alias', 'number',undefined, undefined, 'Keller Wohnzimmer mitte', 'window.value', 'per Script erstellt', 0, 2, '',{0: 'geschlossen', 1: 'gekippt', 2: 'geöffnet'})
    
    //2 x Fenster(Türen) Sensoren HMIP
    //einfache HMIP Fenstersensoren über rpc-Adapter in function tueren_alias
    //{0: 'geschlossen', 1: 'geöffnet'}
    createAlias('hm-rpc.0.xxx.1.STATE'/*Wohnzimmer Terrassentür STATE*/, 'Tueren.Terrassentuer', undefined, 'tueren_alias', 'number',undefined, undefined, 'Terrassentür', 'window.value', 'per Script erstellt', 0, 1, '',{0: 'geschlossen', 1: 'geöffnet'})
    createAlias('hm-rpc.0.xxx.1.STATE'/*Haustür STATE*/, 'Tueren.Haustuer', undefined, 'tueren_alias', 'number',undefined, undefined, 'Haustür', 'window.value', 'per Script erstellt', 0, 1, '',{0: 'geschlossen', 1: 'geöffnet'})
    
    //////////////////////////////
    //  Steckdosen
    //////////////////////////////
    //2 x Steckdosen
    //HMIP Steckdosen über rpc-Adapter in function steckdosen_alias
    //{false: 'aus', true: 'an'}
    createAlias('hm-rpc.0.xxx.3.STATE'/*Waschmaschine STATE*/, 'Steckdosen.Waschmaschine', undefined, 'steckdosen_alias', 'boolean', undefined, undefined, 'Waschmaschine', 'switch', 'per Script erstellt', undefined, undefined, undefined, {false: 'aus', true: 'an'})
    createAlias('hm-rpc.0.xxx.3.STATE'/*Geschirrspueler STATE*/, 'Steckdosen.Geschirrspueler', undefined, 'steckdosen_alias', 'boolean', undefined, undefined, 'Geschirrspüler', 'switch', 'per Script erstellt', undefined, undefined, undefined, {false: 'aus', true: 'an'})
    
    //////////////////////////////
    //  Bewegungsmelder
    //////////////////////////////
    //2 x Bewegungsmelder und 2 x Präsenzmelder und 1 x Erschütterungssensor
    //HMIP Bewegungsmelder und Präsenzmelder über rpc-Adapter in function bewegungsmelder_alias
    //{false: 'inaktiv', true: 'aktiv'}
    createAlias('hm-rpc.0.xxx.1.MOTION'/*Bewegungsmelder Weihnachtsbaumkeller MOTION*/, 'Bewegungsmelder.Bewegungsmelder_Weihnachtsbaumkeller', undefined, 'bewegungsmelder_alias', 'boolean', undefined, undefined, 'W Baum Keller', 'sensor.motion', 'per Script erstellt', undefined, undefined, undefined, {false: 'inaktiv', true: 'aktiv'})
    createAlias('hm-rpc.0.xxx.1.MOTION'/*Bewegungsmelder Heizungskeller MOTION*/, 'Bewegungsmelder.Bewegungsmelder_Heizungskeller', undefined, 'bewegungsmelder_alias', 'boolean', undefined, undefined, 'Heizungskeller', 'sensor.motion', 'per Script erstellt', undefined, undefined, undefined, {false: 'inaktiv', true: 'aktiv'})
    //ab hier 2 x Präsenzmelder
    createAlias('hm-rpc.0.xxx.1.PRESENCE_DETECTION_STATE'/*Präsenzmelder Badezimmer PRESENCE DETECTION STATE*/, 'Bewegungsmelder.Praesenzmelder_Badezimmer', undefined, 'bewegungsmelder_alias', 'boolean', undefined, undefined, 'Badezimmer', 'sensor.motion', 'per Script erstellt', undefined, undefined, undefined, {false: 'inaktiv', true: 'aktiv'})
    createAlias('hm-rpc.0.xxx.1.PRESENCE_DETECTION_STATE'/*Präsenzmelder Dusche PRESENCE DETECTION STATE*/, 'Bewegungsmelder.Praesenzmelder_Dusche', undefined, 'bewegungsmelder_alias', 'boolean', undefined, undefined, 'Dusche', 'sensor.motion', 'per Script erstellt', undefined, undefined, undefined, {false: 'inaktiv', true: 'aktiv'})
    //ab hier 1 x Erschütterungssensor
    createAlias('hm-rpc.0.xxx.1.MOTION'/*Briefkasten MOTION*/, 'Bewegungsmelder.Praesenzmelder_Briefkasten', undefined, 'bewegungsmelder_alias', 'boolean', undefined, undefined, 'Briefkasten', 'sensor.motion', 'per Script erstellt', undefined, undefined, undefined, {false: 'inaktiv', true: 'aktiv'})
    
    //////////////////////////////
    //  Licht
    //////////////////////////////
    //2 x HUE und 5 x HMIP Licht über HUE und rpc-Adapter in function licht_alias
    //{false: 'aus', true: 'an'}
    createAlias('hue.0.Badezimmerlampe_links.on'/*Badezimmerlampe links on*/, 'Licht.Badezimmer_Licht_links', undefined, 'licht_alias', 'boolean', undefined, undefined, 'Badezimmer links', 'switch.light', 'per Script erstellt', undefined, undefined, undefined, {false: 'aus', true: 'an'})
    createAlias('hue.0.Badezimmerlampe_rechts.on'/*Badezimmerlampe rechts on*/, 'Licht.Badezimmer_Licht_rechts', undefined, 'licht_alias', 'boolean', undefined, undefined, 'Badezimmer rechts', 'switch.light', 'per Script erstellt', undefined, undefined, undefined, {false: 'aus', true: 'an'})
    
    //ab hier 2 x Licht HMIP Steckdosen über rpc Adapter
    createAlias('hm-rpc.0.xxx.3.STATE'/*Kugellampe STATE*/, 'Licht.Wohnzimmer_Kugel_Licht', undefined, 'licht_alias', 'boolean', undefined, undefined, 'Kugellicht', 'switch.light', 'per Script erstellt', undefined, undefined, undefined, {false: 'aus', true: 'an'})
    createAlias('hm-rpc.0.xxx.3.STATE'/*Gäste WC Licht STATE*/, 'Licht.Gaeste_WC_Licht', undefined, 'licht_alias', 'boolean', undefined, undefined, 'Gäste WC Licht', 'switch.light', 'per Script erstellt', undefined, undefined, undefined, {false: 'aus', true: 'an'})
    
    //////////////////////////////
    //  Temperaturen
    //////////////////////////////
    //HMIP 2 x Temperaturen über rpc-Adapter in function temperaturen_alias
    createAlias('hm-rpc.0.xxx.1.ACTUAL_TEMPERATURE'/*Wandthermostat Schlafzimmer:1 ACTUAL TEMPERATURE*/, 'Temperaturen.Temperatur_Schlafzimmer', undefined, 'temperaturen_alias', 'number', 'Math.round(val * 10) / 10', undefined, 'Schlafzimmer', 'value.temperature', 'per Script erstellt', undefined, undefined, '°C', undefined)
    createAlias('hm-rpc.0.xxx.1.ACTUAL_TEMPERATURE'/*Wandthermostat Wohnzimmer:1 ACTUAL TEMPERATURE*/, 'Temperaturen.Temperatur_Wohnzimmer', undefined, 'temperaturen_alias', 'number', 'Math.round(val * 10) / 10', undefined, 'Wohnzimmer', 'value.temperature', 'per Script erstellt', undefined, undefined, '°C', undefined)
    
    //////////////////////////////
    //  Batterien_voll_leer
    //////////////////////////////
    //2 x Batterien voll-leer über boolean Wert false/true in function batterien_voll_leer_alias
    createAlias('hm-rpc.0.xxx.0.LOW_BAT'/*Wohnzimmer Fenster links:0 LOW BAT*/, 'Batterien_voll_leer.Wohnzimmer_Fenster_links', undefined, 'batterien_voll_leer_alias', 'boolean', undefined, undefined, 'Wohnzimmer Fenster links', 'indicator.lowbat', 'per Script erstellt', undefined, undefined, undefined, {false: 'voll', true: 'leer'})
    createAlias('hm-rpc.0.xxx.0.LOW_BAT'/*Küche Fenster links:0 LOW BAT*/, 'Batterien_voll_leer.Kueche_Fenster_links', undefined, 'batterien_voll_leer_alias', 'boolean', undefined, undefined, 'Küche Fenster links', 'indicator.lowbat', 'per Script erstellt', undefined, undefined, undefined, {false: 'voll', true: 'leer'})
    
    //////////////////////////////
    //  Batterien_Volt
    //////////////////////////////
    //2 x Batterien Volt Anzeige in function batterien_volt_alias
    createAlias('hm-rpc.0.xxx.0.OPERATING_VOLTAGE'/*Wohnzimmer Fenster links:0 OPERATING VOLTAGE*/, 'Batterien_Volt.Wohnzimmer_Fenster_links', undefined, 'batterien_volt_alias', 'number', undefined, undefined, 'Wohnzimmer Fenster links', 'value.voltage', 'per Script erstellt', undefined, undefined, 'Volt', undefined)
    createAlias('hm-rpc.0.xxx.0.OPERATING_VOLTAGE'/*Küche Fenster links:0 OPERATING VOLTAGE*/, 'Batterien_Volt.Kueche_Fenster_links', undefined, 'batterien_volt_alias', 'number', undefined, undefined, 'Küche Fenster links', 'value.voltage', 'per Script erstellt', undefined, undefined, 'Volt', undefined)
    
    
    



    Bitte das Blockly auf den eigenen Rechner downloaden und dort mit einem "richtigen" Editor öffnen und den gesamten Inhalt der Textdatei in die Zwischenablage kopieren und anschließend in ein neues leeres Blockly importieren. Nicht direkt im Browser öffnen und kopieren, dann kommt es oft zu Umlaute Fehlern im Blockly.

    Fenster_1_8_1.zip

    Tueren_1_8_1.zip

    Licht_1_8_1.zip

    Temperaturen_1_8_1.zip

    Bewegungsmelder_1_8_1.zip

    Luftfeuchtigkeit_1_8_1.zip

    Steckdosen_1_8_1.zip

    Batterien_Prozent_1_8_1.zip

    Batterien_voll_leer_lowbat_1_8_1.zip

    Batterien_Volt_1_8_1.zip

    RSSI_1_8_1.zip

    Mein iQontrol View für alle Geräte

    2021-04-28_iqontrol_0_selected_views.json.zip

    Screenshot_20210428-091122_Chrome.jpg

    Zusatzblockly zur Anruferansage, Beschreibung folgt. Ursprung ist von hier


    Bitte das Blockly auf den eigenen Rechner downloaden und dort mit einem "richtigen" Editor öffnen und den gesamten Inhalt der Textdatei in die Zwischenablage kopieren und anschließend in ein neues leeres Blockly importieren. Nicht direkt im Browser öffnen und kopieren, dann kommt es oft zu Umlaute Fehlern im Blockly.

    Bildschirmfoto 2021-04-28 um 19.40.31.png

    Zwei ECHOS können zur Ansage ausgewählt werden. Wer nur einen ECHO braucht, einfach entsprechend deaktivieren.

    Bildschirmfoto 2021-04-28 um 19.50.51.png

    Bildschirmfoto 2021-04-29 um 21.56.13.png

    meine iQontrol Anwendung dafür

    Bildschirmfoto 2021-04-28 um 20.05.11.png

    Alexa_Anruferansage_Telegram_EMAIL_1.0.0.zip

    L Offline
    L Offline
    lolax
    schrieb am zuletzt editiert von
    #151

    @dslraser

    Hi,

    könntest Du bitte die Anzeige auf LaMetric direct wieder integrieren?

    dslraserD 1 Antwort Letzte Antwort
    0
    • L lolax

      @dslraser

      Hi,

      könntest Du bitte die Anzeige auf LaMetric direct wieder integrieren?

      dslraserD Offline
      dslraserD Offline
      dslraser
      Forum Testing Most Active
      schrieb am zuletzt editiert von
      #152

      @lolax sagte in Alexa Ansagen I Telegram I EMail I Alias I VISU I HTML:

      @dslraser

      Hi,

      könntest Du bitte die Anzeige auf LaMetric direct wieder integrieren?

      Ähm, ich weiß nicht was Du meinst ? Ich weiß nicht mal was LaMetric ist ?

      L 1 Antwort Letzte Antwort
      0
      • dslraserD dslraser

        @lolax sagte in Alexa Ansagen I Telegram I EMail I Alias I VISU I HTML:

        @dslraser

        Hi,

        könntest Du bitte die Anzeige auf LaMetric direct wieder integrieren?

        Ähm, ich weiß nicht was Du meinst ? Ich weiß nicht mal was LaMetric ist ?

        L Offline
        L Offline
        lolax
        schrieb am zuletzt editiert von
        #153

        @dslraser
        Hatten wir damals schon besprochen.
        LaMetric ist eine Display Uhr.
        Du hattest es schon einmal eingebaut

        dslraserD L 2 Antworten Letzte Antwort
        0
        • L lolax

          @dslraser
          Hatten wir damals schon besprochen.
          LaMetric ist eine Display Uhr.
          Du hattest es schon einmal eingebaut

          dslraserD Offline
          dslraserD Offline
          dslraser
          Forum Testing Most Active
          schrieb am zuletzt editiert von
          #154

          @lolax sagte in Alexa Ansagen I Telegram I EMail I Alias I VISU I HTML:

          @dslraser
          Hatten wir damals schon besprochen.
          LaMetric ist eine Display Uhr.
          Du hattest es schon einmal eingebaut

          Achso. Wo war das denn ?

          1 Antwort Letzte Antwort
          0
          • L lolax

            @dslraser
            Hatten wir damals schon besprochen.
            LaMetric ist eine Display Uhr.
            Du hattest es schon einmal eingebaut

            L Offline
            L Offline
            lolax
            schrieb am zuletzt editiert von
            #155

            @lolax

            lametric.rtf

            dslraserD 1 Antwort Letzte Antwort
            0
            • L lolax

              @lolax

              lametric.rtf

              dslraserD Offline
              dslraserD Offline
              dslraser
              Forum Testing Most Active
              schrieb am zuletzt editiert von
              #156

              @lolax
              funktioniert Dein Blockly nicht mehr ? Da hat sich fast nichts geändert (bis auf einen Link zum Örtlichen Telefonbuch bei einer nicht im eigenen Telefonbuch gespeicherten Nummer bei Telegram/EMAIL)

              L 1 Antwort Letzte Antwort
              0
              • dslraserD dslraser

                @lolax
                funktioniert Dein Blockly nicht mehr ? Da hat sich fast nichts geändert (bis auf einen Link zum Örtlichen Telefonbuch bei einer nicht im eigenen Telefonbuch gespeicherten Nummer bei Telegram/EMAIL)

                L Offline
                L Offline
                lolax
                schrieb am zuletzt editiert von lolax
                #157

                @dslraser
                doch es funktioniert, jedoch wollte ich es auf den aktuellsten stand bringen.
                Und wie könnte man es denn ausbauen, dass man einfach zusätzliche Echos hinzufügen kann?

                dslraserD 1 Antwort Letzte Antwort
                0
                • L lolax

                  @dslraser
                  doch es funktioniert, jedoch wollte ich es auf den aktuellsten stand bringen.
                  Und wie könnte man es denn ausbauen, dass man einfach zusätzliche Echos hinzufügen kann?

                  dslraserD Offline
                  dslraserD Offline
                  dslraser
                  Forum Testing Most Active
                  schrieb am zuletzt editiert von
                  #158

                  @lolax sagte in Alexa Ansagen I Telegram I EMail I Alias I VISU I HTML:

                  @dslraser
                  doch es funktioniert, jedoch wollte ich es auf den aktuellsten stand bringen.
                  Jedoch ist in meiner Version
                  Version: 1.1 (26 January 2020)
                  das Örtliche drinnen und in der heute heruntergeladenen Version
                  Version: 1.2 (20 October 2020)
                  nicht?

                  das kannst Du einfach an den passenden Stellen einfügen (so groß ist das Blockly ja nicht)

                  Bildschirmfoto 2021-04-11 um 18.58.49.png

                  Und wie könnte man es denn ausbauen, dass man einfach zusätzliche Echos hinzufügen kann?

                  Weitere ECHOS als Variablen und Funktionen einbauen

                  Beispiel mit ECHO_drei in Dein Blockly eingefügt

                  lametric.rtf.zip

                  L 1 Antwort Letzte Antwort
                  0
                  • dslraserD dslraser

                    @lolax sagte in Alexa Ansagen I Telegram I EMail I Alias I VISU I HTML:

                    @dslraser
                    doch es funktioniert, jedoch wollte ich es auf den aktuellsten stand bringen.
                    Jedoch ist in meiner Version
                    Version: 1.1 (26 January 2020)
                    das Örtliche drinnen und in der heute heruntergeladenen Version
                    Version: 1.2 (20 October 2020)
                    nicht?

                    das kannst Du einfach an den passenden Stellen einfügen (so groß ist das Blockly ja nicht)

                    Bildschirmfoto 2021-04-11 um 18.58.49.png

                    Und wie könnte man es denn ausbauen, dass man einfach zusätzliche Echos hinzufügen kann?

                    Weitere ECHOS als Variablen und Funktionen einbauen

                    Beispiel mit ECHO_drei in Dein Blockly eingefügt

                    lametric.rtf.zip

                    L Offline
                    L Offline
                    lolax
                    schrieb am zuletzt editiert von
                    #159

                    @dslraser

                    vielen Dank, werde es testen.
                    Kannst Du mir sagen warum mir bei Object ID des Echo Gerätes bei mir nicht die komplette Objekt ID angezeigt wird?
                    Ich bekomme nur Volume to use for speak commands
                    angezeigt anstatt
                    alexa2.0.Echo-Devices.45f18XXXXXXXXXx.Commands.speak-volume

                    dslraserD 1 Antwort Letzte Antwort
                    0
                    • L lolax

                      @dslraser

                      vielen Dank, werde es testen.
                      Kannst Du mir sagen warum mir bei Object ID des Echo Gerätes bei mir nicht die komplette Objekt ID angezeigt wird?
                      Ich bekomme nur Volume to use for speak commands
                      angezeigt anstatt
                      alexa2.0.Echo-Devices.45f18XXXXXXXXXx.Commands.speak-volume

                      dslraserD Offline
                      dslraserD Offline
                      dslraser
                      Forum Testing Most Active
                      schrieb am zuletzt editiert von
                      #160

                      @lolax
                      Es sollte der Name vom DP angezeigt werden, nicht die id

                      L 1 Antwort Letzte Antwort
                      0
                      • dslraserD dslraser

                        @lolax
                        Es sollte der Name vom DP angezeigt werden, nicht die id

                        L Offline
                        L Offline
                        lolax
                        schrieb am zuletzt editiert von
                        #161

                        @dslraser
                        wenn ich Dein offizielles Blockly importiere dann steht bei Echo Device drinnen
                        alexa2.0.Echo-Devices.45f18XXXXXXXXXx.Commands.speak-volume

                        wenn ich es jetzt ändere und über den Objekt Baum mein Echo auswähle dann steht nur noch
                        Volume to use for speak commands

                        dies macht es eben unübersichtlich

                        dslraserD 1 Antwort Letzte Antwort
                        0
                        • L lolax

                          @dslraser
                          wenn ich Dein offizielles Blockly importiere dann steht bei Echo Device drinnen
                          alexa2.0.Echo-Devices.45f18XXXXXXXXXx.Commands.speak-volume

                          wenn ich es jetzt ändere und über den Objekt Baum mein Echo auswähle dann steht nur noch
                          Volume to use for speak commands

                          dies macht es eben unübersichtlich

                          dslraserD Offline
                          dslraserD Offline
                          dslraser
                          Forum Testing Most Active
                          schrieb am zuletzt editiert von dslraser
                          #162

                          @lolax sagte in Alexa Ansagen I Telegram I EMail I Alias I VISU I HTML:

                          @dslraser
                          wenn ich Dein offizielles Blockly importiere dann steht bei Echo Device drinnen
                          alexa2.0.Echo-Devices.45f18XXXXXXXXXx.Commands.speak-volume

                          wenn ich es jetzt ändere und über den Objekt Baum mein Echo auswähle dann steht nur noch
                          Volume to use for speak commands

                          ja, ist richtig so, weil Du diesen Datenpunkt nicht hast wird der so angezeigt (den habe ich aus ge x't)

                          Bei mir im Original Blockly

                          Bildschirmfoto 2021-04-11 um 19.20.45.png

                          Schau Dir die Datenpunkte an, das rechts in der Spalte unter Name, das wird im Baustein angezeigt

                          Bildschirmfoto 2021-04-11 um 19.21.29.png

                          dies macht es eben unübersichtlich

                          deswegen gebe ich den Variablen den passenden Namen. Die kannst Du ja umbenennen so wie Du es haben willst. Wenn Du eine Variable umbenennst, dann wird die überall im Blockly wo sie verwendet wird umbenannt.

                          Bildschirmfoto 2021-04-11 um 19.26.48.png

                          L 1 Antwort Letzte Antwort
                          0
                          • dslraserD dslraser

                            @lolax sagte in Alexa Ansagen I Telegram I EMail I Alias I VISU I HTML:

                            @dslraser
                            wenn ich Dein offizielles Blockly importiere dann steht bei Echo Device drinnen
                            alexa2.0.Echo-Devices.45f18XXXXXXXXXx.Commands.speak-volume

                            wenn ich es jetzt ändere und über den Objekt Baum mein Echo auswähle dann steht nur noch
                            Volume to use for speak commands

                            ja, ist richtig so, weil Du diesen Datenpunkt nicht hast wird der so angezeigt (den habe ich aus ge x't)

                            Bei mir im Original Blockly

                            Bildschirmfoto 2021-04-11 um 19.20.45.png

                            Schau Dir die Datenpunkte an, das rechts in der Spalte unter Name, das wird im Baustein angezeigt

                            Bildschirmfoto 2021-04-11 um 19.21.29.png

                            dies macht es eben unübersichtlich

                            deswegen gebe ich den Variablen den passenden Namen. Die kannst Du ja umbenennen so wie Du es haben willst. Wenn Du eine Variable umbenennst, dann wird die überall im Blockly wo sie verwendet wird umbenannt.

                            Bildschirmfoto 2021-04-11 um 19.26.48.png

                            L Offline
                            L Offline
                            lolax
                            schrieb am zuletzt editiert von
                            #163

                            @dslraser
                            ok verstanden.
                            In deiner neuen Version mit Echo3 ist keine Lautstärke dafür angelegt.
                            Wie mache ich denn sowas? Der Punkt fehlt noch und wohl auch unter Nach Lautstärke 1 und Nach Lautstärke 2

                            dslraserD 1 Antwort Letzte Antwort
                            0
                            • L lolax

                              @dslraser
                              ok verstanden.
                              In deiner neuen Version mit Echo3 ist keine Lautstärke dafür angelegt.
                              Wie mache ich denn sowas? Der Punkt fehlt noch und wohl auch unter Nach Lautstärke 1 und Nach Lautstärke 2

                              dslraserD Offline
                              dslraserD Offline
                              dslraser
                              Forum Testing Most Active
                              schrieb am zuletzt editiert von
                              #164

                              @lolax
                              einfach den steuere Baustein kopieren und auf den ECHO_drei einstellen

                              Bildschirmfoto 2021-04-11 um 19.40.37.png

                              1 Antwort Letzte Antwort
                              0
                              • L Lucky_ESA

                                Hallo dslraser,
                                habe alle deine Blocklys im Einsatz und es funktionieren auch alle. Vielen vielen Dank dafür.

                                Vielleicht kannst du bei deiner nächsten Revision eventuell noch was implementieren beziehungsweise beheben.

                                1. Bei Ansage über Alexa den Wert vom Volumen in eine Variable speichern und nach der Ansage wieder setzen.
                                2. Bei allen Blocklys bitte am Ende den <body> Tag wieder schliessen
                                3. In der Telegram Function telegram ändern in telegram.0 Habe leider telegram.0 und telegram.1, daher bekomme ich immer die Fehlermeldung "1 of 1 recipients are unknown!" . Eventuell die Instanz für den jeweiligen User auswählbar machen...
                                4. Wenn du viel Zeit hast den Satz " ; das wäre dann alles." zu den Einstellungen hinzufügen. Möchte gerne einen anderen Text haben und bei einer neuen Revision muss ich immer alles ändern.
                                5. Vielleicht möchtest du den Blockly für RSSI mit aufnehmen...
                                6. Wenn du mal so richtig viel Zeit hast, besteht dann die Möglichkeit, dass du die immer wiederholenden HTML Tags in eine Variable setzt und die dann verwendest...Dann kannst du alle Blocklys mit Sicherheit um 1000 Zeilen verkleinern:-)

                                  bild20.JPG

                                  rssi.rar

                                Gruß//Lucky

                                dslraserD Offline
                                dslraserD Offline
                                dslraser
                                Forum Testing Most Active
                                schrieb am zuletzt editiert von dslraser
                                #165

                                @lucky_esa sagte in Alexa Ansagen I Telegram I EMail I Alias I VISU I HTML:

                                Ich habe mal ein erstes Blockly "umgebaut" (Batterien_Prozent)

                                Bei allen Blocklys bitte am Ende den <body> Tag wieder schliessen

                                erledigt

                                In der Telegram Function telegram ändern in telegram.0 Habe leider telegram.0 und telegram.1, daher bekomme ich immer die Fehlermeldung "1 of 1 recipients are unknown!" . Eventuell die Instanz für den jeweiligen User auswählbar machen...

                                In den Einstellungen vom Blockly kann jetzt bei Telegram und Email die Instanznummer angegeben werden.

                                Wenn du viel Zeit hast den Satz " ; das wäre dann alles." zu den Einstellungen hinzufügen. Möchte gerne einen anderen Text haben und bei einer neuen Revision muss ich immer alles ändern.

                                erledigt

                                Wenn du mal so richtig viel Zeit hast, besteht dann die Möglichkeit, dass du die immer wiederholenden HTML Tags in eine Variable setzt und die dann verwendest...Dann kannst du alle Blocklys mit Sicherheit um 1000 Zeilen verkleinern:-)

                                habe ich auch gemacht. Das Blockly ist 1035 Bausteine kleiner geworden.

                                alt

                                Blockly_alt.png

                                neu

                                Blockly_neu.png

                                Vielleicht magst Du es Dir ja mal ansehen.


                                Batterien_Prozent_1_7_2.zip

                                dirk1962D 1 Antwort Letzte Antwort
                                1
                                • L Online
                                  L Online
                                  Lucky_ESA
                                  Developer Most Active
                                  schrieb am zuletzt editiert von
                                  #166

                                  Hallo dslraser,

                                  du bist schneller als ich bis 3 zählen kann:-) Das sieht echt super aus, dass RSSI Blocky habe ich auch so angepasst und weit über 1000 Blöcke eingespart.
                                  Der form halber bitte noch den html tag schließen.
                                  Variable html_end

                                  </div></body>
                                  

                                  ändern in

                                  </div></body></html>
                                  

                                  Es wurde alles richtig angelegt und jetzt müssen wir alle testen aber da brauch ich noch ein wenig Zeit.

                                  Offtopic
                                  Leider ist meine Software vom Raspberry abgeschmiert und jetzt kann ich alles wieder neu aufsetzen. Mit erschrecken habe ich festgestellt, dass ich kein Backup meiner Scripte habe. Somit ist die Entwicklung der letzten 2 Jahre weg...Kann gerade mein Dachfenster nicht mehr rauf und runter fahren...heul

                                  Gruß//Lucky

                                  dslraserD 1 Antwort Letzte Antwort
                                  0
                                  • L Lucky_ESA

                                    Hallo dslraser,

                                    du bist schneller als ich bis 3 zählen kann:-) Das sieht echt super aus, dass RSSI Blocky habe ich auch so angepasst und weit über 1000 Blöcke eingespart.
                                    Der form halber bitte noch den html tag schließen.
                                    Variable html_end

                                    </div></body>
                                    

                                    ändern in

                                    </div></body></html>
                                    

                                    Es wurde alles richtig angelegt und jetzt müssen wir alle testen aber da brauch ich noch ein wenig Zeit.

                                    Offtopic
                                    Leider ist meine Software vom Raspberry abgeschmiert und jetzt kann ich alles wieder neu aufsetzen. Mit erschrecken habe ich festgestellt, dass ich kein Backup meiner Scripte habe. Somit ist die Entwicklung der letzten 2 Jahre weg...Kann gerade mein Dachfenster nicht mehr rauf und runter fahren...heul

                                    Gruß//Lucky

                                    dslraserD Offline
                                    dslraserD Offline
                                    dslraser
                                    Forum Testing Most Active
                                    schrieb am zuletzt editiert von
                                    #167

                                    @lucky_esa sagte in Alexa Ansagen I Telegram I EMail I Alias I VISU I HTML:

                                    Somit ist die Entwicklung der letzten 2 Jahre weg

                                    Ärgerlich...
                                    (lernen durch Schmerzen, hat mein alter Chef immer gesagt)

                                    1 Antwort Letzte Antwort
                                    0
                                    • dslraserD dslraser

                                      @lucky_esa sagte in Alexa Ansagen I Telegram I EMail I Alias I VISU I HTML:

                                      Ich habe mal ein erstes Blockly "umgebaut" (Batterien_Prozent)

                                      Bei allen Blocklys bitte am Ende den <body> Tag wieder schliessen

                                      erledigt

                                      In der Telegram Function telegram ändern in telegram.0 Habe leider telegram.0 und telegram.1, daher bekomme ich immer die Fehlermeldung "1 of 1 recipients are unknown!" . Eventuell die Instanz für den jeweiligen User auswählbar machen...

                                      In den Einstellungen vom Blockly kann jetzt bei Telegram und Email die Instanznummer angegeben werden.

                                      Wenn du viel Zeit hast den Satz " ; das wäre dann alles." zu den Einstellungen hinzufügen. Möchte gerne einen anderen Text haben und bei einer neuen Revision muss ich immer alles ändern.

                                      erledigt

                                      Wenn du mal so richtig viel Zeit hast, besteht dann die Möglichkeit, dass du die immer wiederholenden HTML Tags in eine Variable setzt und die dann verwendest...Dann kannst du alle Blocklys mit Sicherheit um 1000 Zeilen verkleinern:-)

                                      habe ich auch gemacht. Das Blockly ist 1035 Bausteine kleiner geworden.

                                      alt

                                      Blockly_alt.png

                                      neu

                                      Blockly_neu.png

                                      Vielleicht magst Du es Dir ja mal ansehen.


                                      Batterien_Prozent_1_7_2.zip

                                      dirk1962D Offline
                                      dirk1962D Offline
                                      dirk1962
                                      schrieb am zuletzt editiert von
                                      #168

                                      @dslraser
                                      Schade, dass ist das einzige Blockly, das ich nicht nutze:grimacing: .
                                      Sobald ein anders Blockly fertig ist, werde ich es testen.

                                      NUC8i5 mit Proxmox; Raspberrymatic in VM, iobroker, Motioneye, infuxDB und Grafana in CT.

                                      dslraserD 1 Antwort Letzte Antwort
                                      0
                                      • dirk1962D dirk1962

                                        @dslraser
                                        Schade, dass ist das einzige Blockly, das ich nicht nutze:grimacing: .
                                        Sobald ein anders Blockly fertig ist, werde ich es testen.

                                        dslraserD Offline
                                        dslraserD Offline
                                        dslraser
                                        Forum Testing Most Active
                                        schrieb am zuletzt editiert von
                                        #169

                                        @dirk1962
                                        Ja, das war in meiner Liste ganz oben...Ich habe jetzt mal mit dem Fenster Blockly begonnen, das ist das Größte, dauert aber etwas...

                                        1 Antwort Letzte Antwort
                                        1
                                        • L Online
                                          L Online
                                          Lucky_ESA
                                          Developer Most Active
                                          schrieb am zuletzt editiert von
                                          #170

                                          Ist nicht schlimm da ich meine Bash Scripte mit IOBroker ersetzen wollte.

                                          Eine Sache versuche ich noch immer zu simulieren finde aber den Fehler nicht.
                                          Wenn ich die Java Instanz neu starte versuchen alle Scripte eine Mail und Telgram Nachricht mit leeren Body zu versenden. Ist nir aufgefallen da ich mal in meinem Spam Ordner geschaut haben.
                                          Subject ist gefüllt aber kein Body vorhanden. Bei Telegram sind dann Fehler im Log zu sehen.

                                          spam.JPG

                                          Gruß//Lucky

                                          dslraserD 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

                                          432

                                          Online

                                          32.4k

                                          Benutzer

                                          81.5k

                                          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