Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Praktische Anwendungen (Showcase)
    4. Alexa Ansagen I Telegram I EMail I Alias I VISU I HTML

    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

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

    This topic has been deleted. Only users with topic management privileges can see it.
    • dslraser
      dslraser Forum Testing Most Active @dslraser last edited by 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

      dslraser L H 3 Replies Last reply Reply Quote 4
      • dslraser
        dslraser Forum Testing Most Active @dslraser last edited by dslraser

        Bilder und Videos
        von:

        • jarvis
        • iQontrol
        • Telegram
        • EMAIL


        jarvis custom html bei mir am Handy

        Screenshot_20210105-154554_Chrome.jpg

        Screenshot_20210105-155227_Chrome.jpg

        Screenshot_20210105-154633_Chrome.jpg

        Screenshot_20210105-154651_Chrome.jpg

        Screenshot_20210105-154734_Chrome.jpg

        Screenshot_20210105-154756_Chrome.jpg

        Screenshot_20210105-155349_Chrome.jpg


        iQontrol Hauptmenü Ansicht bei mir am Handy

        Screenshot_20210105-155629_Chrome.jpg

        Klick auf das rechte Symbol öffnet/schließt die Kachel

        Screenshot_20210105-155903_Chrome.jpg

        Klick auf das linke Symbol ändert die Ansicht der Farben. Dunkel=Festeinstellung.

        Screenshot_20210105-155903_Chrome.jpg

        Hell = weiß / schwarz Festeinstelunng.

        Screenshot_20210105-155935_Chrome.jpg

        weiß / blau Beispiel = eigene HTML
        Diese Ansicht kann komplett an die eigenen Wünsche über die Datenpunkte angepasst werden, ohne im Blockly was verändern zu müssen.

        Screenshot_20210105-155958_Chrome.jpg

        Ansicht aus iQontrol. Damit (mit einem Klick) lasse ich mir die Listen z.B. über Telegram senden, geht aber auch per Sprache: Alexa, schick mir den Fensterstatus. (oder welchen auch immer. Auch alle nacheinander in einer Rutsche senden geht mit einem kleinen Zusatzblockly)

        Screenshot_20210105-162151_Chrome.jpg


        Screenshot_20210105-160550_Telegram.jpg

        Screenshot_20210105-160708_Telegram.jpg

        Screenshot_20210105-160800_Telegram.jpg

        Screenshot_20210105-195105_Telegram.jpg

        Screenshot_20210105-161012_Telegram.jpg

        Screenshot_20210105-161057_Telegram.jpg

        Screenshot_20210105-161140_Telegram.jpg

        sigi234 1 Reply Last reply Reply Quote 0
        • sigi234
          sigi234 Forum Testing Most Active @dslraser last edited by

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

          wenn gewünscht (optional) jarvis

          Ja bitte! 👍

          I 1 Reply Last reply Reply Quote 0
          • I
            Idefix01 @sigi234 last edited by

            @dslraser

            Nachdem ich eine alte Version von diesem Script (alles in einem) noch hatte, habe ich nun die neuen Scripte eingerichtet. Ich besitze mehrere Echo Geräte und habe nun folgende Probleme:

            1. Ein Echo Geräte läuft über ein völlig anderen Amazon Account aber trotzdem erfolgt die Ansage auch auf diesem Echo wenn ich es über die App starte.
            2. Ein Abruf funktioniert momentan nur per Alexa App über Geräte aber nicht über den iobroker/Objekte und dann Punkt 4 Alexa Button.

            Mail sowie Telegram funktioniert über den iobroker Button einwandfrei.

            Kann es sein das ich erst Routinen einrichten muss für die jeweiligen Ansagen? Wie kann ich einen speziellen Echo für die Ansage zuweisen?

            dslraser 1 Reply Last reply Reply Quote 0
            • dslraser
              dslraser Forum Testing Most Active @Idefix01 last edited by

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

              Kann es sein das ich erst Routinen einrichten muss für die jeweiligen Ansagen? Wie kann ich einen speziellen Echo für die Ansage zuweisen?

              Das sollte alle Deine "Probleme lösen", da die Datenpunkte jetzt woanders sind und auch die SmartNamen anders heißen. Solltest Du die alten Datenpunkte noch haben, dann lösche die erstmal. Dann schaue im iot nach, ob alle SmartGeräte der neuen Struktur da sind. Dann noch neue Geräte in der Amazon App suchen und Deinen Routinen wieder zuordnen.
              Auch zwei Alexa Instanzen sind noch im Blockly, kann ich nur nicht probieren, weil ich nur eine Instanz habe.

              I 1 Reply Last reply Reply Quote 0
              • I
                Idefix01 @dslraser last edited by

                @dslraser
                Kann ich eine Alexa Instanz davon deaktivieren oder wird diese benötigt?

                dslraser 1 Reply Last reply Reply Quote 0
                • dslraser
                  dslraser Forum Testing Most Active @Idefix01 last edited by

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

                  @dslraser
                  Kann ich eine Alexa Instanz davon deaktivieren oder wird diese benötigt?

                  verstehe ich jetzt nicht, ich denke Du hast zwei ?
                  Wenn Du alles richtig eingerichtet hast, dann wird die Anfrage immer am angesprochenen ECHO beantwortet.
                  (Nicht über die App anfragen, bzw. übers Handy anfragen, die haben keinen speak Datenpunkt und können somit nicht antworten). Den Button von Hand auslösen bringt auch nix, bzw. falsche Ergebnise.
                  Routine einrichten, den Button da zuordnen und dann einen richtigen ECHO fragen.

                  I 1 Reply Last reply Reply Quote 0
                  • I
                    Idefix01 @dslraser last edited by Idefix01

                    @dslraser

                    Die Routinen habe ich alle soweit eingerichtet. Wenn ich ein Echo anspreche funktioniert die Ansage auch soweit.

                    Aber in der alten Version war die Möglichkeit noch über Button das ganze aufzurufen.
                    Hintergrund ist folgender: Ich habe in der Vis mir eine Button Seite eingerichtet wo ich die jeweiligen Stände abfragen konnte, einmal als Ansage und einmal als Telegram.
                    Telegram funktioniert der Button soweit, aber für die Alexa Ansage der Button funktioniert nicht mehr.

                    Bei Batterie Prozent sagt er 1 Batterie fast leer, Flur Sensor %

                    batprozent.png

                    dslraser 1 Reply Last reply Reply Quote 0
                    • dslraser
                      dslraser Forum Testing Most Active @Idefix01 last edited by

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

                      Aber in der alten Version war die Möglichkeit noch über Button das ganze aufzurufen.
                      Hintergrund ist folgender: Ich habe in der Vis mir eine Button Seite eingerichtet wo ich die jeweiligen Stände abfragen konnte, einmal als Ansage und einmal als Telegram.
                      Telegram funktioniert der Button soweit, aber für die Alexa Ansage der Button funktioniert nicht mehr.

                      In welcher Version soll das gewesen sein ?
                      Hast Du das vielleicht in einem anderem Blockly selbst gemacht ?
                      Der Button in meinen Blockly diente, soweit ich mich erinnern kann, immer nur zum auslösen über die Routine.

                      I 1 Reply Last reply Reply Quote 0
                      • I
                        Idefix01 @dslraser last edited by

                        @dslraser

                        Danke Dir. Das war Version 1.0, aber ich habe soeben entdeckt das es da noch eine Erweiterung als Script gab damit man über den Button auch eine Ansage erhält.
                        Vielen Dank für die schnelle Hilfe

                        dslraser 1 Reply Last reply Reply Quote 0
                        • dslraser
                          dslraser Forum Testing Most Active @Idefix01 last edited by

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

                          @dslraser

                          Danke Dir. Das war Version 1.0, aber ich habe soeben entdeckt das es da noch eine Erweiterung als Script gab damit man über den Button auch eine Ansage erhält.
                          Vielen Dank für die schnelle Hilfe

                          ja, ich habe auch nochmal nachgesehen und hatte noch im Hinterkopf das mal jemand danach gefragt hatte. Ich wußte nur nicht mehr wer und wann das war, aber das warst Du. Du hattest Dir was zusätzlich eingerichtet.😉

                          Das war hier
                          https://forum.iobroker.net/post/460554

                          I 1 Reply Last reply Reply Quote 0
                          • I
                            Idefix01 @dslraser last edited by Idefix01

                            @dslraser

                            Genau deswegen hatte ich es auch so schnell wieder gefunden 😊

                            Nur Prozent funktioniert irgendwie nicht so. Er sagt bei meinem Hue Sensor nur an: "Flur Sensor %" und ein Handy meldet er gar nicht.

                            Bat-Prozent.png
                            Bat-Prozent1.png

                            dslraser 1 Reply Last reply Reply Quote 0
                            • dslraser
                              dslraser Forum Testing Most Active @Idefix01 last edited by dslraser

                              @Idefix01
                              Zeige mir mal einen RAW (vom alias) von einem wo es nicht funktioniert.

                              Edit: warum sind die so ?

                              Screenshot_20210105-212621_Chrome.jpg

                              I 1 Reply Last reply Reply Quote 0
                              • I
                                Idefix01 @dslraser last edited by

                                @dslraser

                                meinst du das?

                                createAlias('javascript.0.akkustand.handy-sandra'/*handy-sandra*/, 'Batterien_Prozent.handy-sandra', undefined, 'batterien_prozent_alias', 'number', undefined, undefined, 'Handy Sandra', 'state', 'per Script erstellt', undefined, undefined, 'Prozent', undefined)
                                createAlias('javascript.0.akkustand.handy-soeren'/*handy-soeren*/, 'Batterien_Prozent.handy-soeren', undefined, 'batterien_prozent_alias', 'number', undefined, undefined, 'Handy Sören', 'state', 'per Script erstellt', undefined, undefined, 'Prozent', undefined)
                                createAlias('fullybrowser.0.192_168_178_37.Info.batteryLevel'/*Haussteuerung Tablet*/, 'Batterien_Prozent.Haussteuerung_Tablet', undefined, 'batterien_prozent_alias', 'number', undefined, undefined, 'Haussteuerung Tablet', 'value', 'per Script erstellt', undefined, undefined, 'Prozent', undefined)
                                createAlias('hue.0.Sensor_Flurlicht.battery'/*Flur Sensor*/, 'Batterien_Prozent.Flur_Sensor', undefined, 'batterien_prozent_alias', 'number', undefined, undefined, 'Flur Sensor', 'config', 'per Script erstellt', undefined, undefined, 'Prozent', undefined)
                                
                                Bei Flur Sensor kommt nur Ansage: "Flur Sensor %" und Handy Sören kommt gar nicht
                                
                                dslraser 1 Reply Last reply Reply Quote 0
                                • dslraser
                                  dslraser Forum Testing Most Active @Idefix01 last edited by

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

                                  meinst du das?

                                  nee, sowas

                                  Screenshot_20210105-222236_Chrome.jpg

                                  1 Reply Last reply Reply Quote 0
                                  • sigi234
                                    sigi234 Forum Testing Most Active @dslraser last edited by

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

                                    jarvis

                                    Wie in Jarvis einbinden?

                                    dslraser 2 Replies Last reply Reply Quote 0
                                    • dslraser
                                      dslraser Forum Testing Most Active @sigi234 last edited by dslraser

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

                                      Wie in Jarvis einbinden?

                                      einfach einen der beiden html Datenpunkte in jarvis als custom html auswählen, je nachdem welche Tabelle Du anzeigen möchtest.

                                      Edit:(ich muß noch die Zeit und die Lust für den Rest der "Anleitung" finden, die ist noch nicht fertig)

                                      1 Reply Last reply Reply Quote 1
                                      • dslraser
                                        dslraser Forum Testing Most Active @sigi234 last edited by dslraser

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

                                        Wie in Jarvis einbinden?

                                        Gerät hinzufügen

                                        Bildschirmfoto 2021-01-06 um 09.12.09.png

                                        Bildschirmfoto 2021-01-06 um 09.14.11.png

                                        Bildschirmfoto 2021-01-06 um 09.03.14.png

                                        bei mir unter Sonstige

                                        Bildschirmfoto 2021-01-06 um 09.03.31.png

                                        Bildschirmfoto 2021-01-06 um 09.03.57.png

                                        Bildschirmfoto 2021-01-06 um 09.04.31.png

                                        8 oder 9 auswählen

                                        Bildschirmfoto 2021-01-06 um 09.06.12.png

                                        bei mir 8

                                        Bildschirmfoto 2021-01-06 um 09.10.10.png

                                        sigi234 1 Reply Last reply Reply Quote 1
                                        • sigi234
                                          sigi234 Forum Testing Most Active @dslraser last edited by

                                          @dslraser

                                          Danke, bin schon dabei. Muss noch testen wie ich alle gleich Groß bekomme.

                                          Screenshot (3041).png

                                          dslraser 2 Replies Last reply Reply Quote 0
                                          • dslraser
                                            dslraser Forum Testing Most Active @sigi234 last edited by

                                            @sigi234
                                            hast Du den "roten Knopf" aktiviert ? (ich habe keine Scrollbalken, es sei denn Du willst die haben)

                                            Bildschirmfoto 2021-01-06 um 09.16.54.png

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            454
                                            Online

                                            31.9k
                                            Users

                                            80.1k
                                            Topics

                                            1.3m
                                            Posts

                                            alexa ansage blockly fenster iqontrol jarvis javascript tür-fenster-kontakt
                                            40
                                            524
                                            96065
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo