Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Entwicklung
    4. Devices, Alias, Assistenten + Visualisierungen + die Zukunft

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Devices, Alias, Assistenten + Visualisierungen + die Zukunft

    This topic has been deleted. Only users with topic management privileges can see it.
    • apollon77
      apollon77 @Stephan Schleich last edited by

      @Stephan-Schleich Nur states die unter den Instanzobjekten des Adaters abgelegt sind. deviecs hat da nichts. Was sagt die Browser Konsole?

      Stephan Schleich 1 Reply Last reply Reply Quote 0
      • Stephan Schleich
        Stephan Schleich @apollon77 last edited by Stephan Schleich

        @apollon77 sagte in Devices, Alias, Assistenten + Visualisierungen + die Zukunft:

        Browser Konsole

        @apollon77 Achso okay - danke, wusste nicht das diese nicht zusammen hängen.
        In der Browser Konsole hatte ich nicht nachgesehen als ich das Problem hatte, aber es lag am Browser Cache nun läufts wieder.

        Eine Frage noch sofern es hier rein gehört:
        Ich hab meine Klimaanlage via Alias angebunden nun würde ich im selben Objekt gerne noch die IP mit dazu nehmen ohne extra ein neues Objekt anzulegen, theoretisch müsste es doch mit z.b. working gehen da der typ any ist oder? es kommt aber nur true als value und nicht die IP
        cf8bebca-56b1-4559-ae53-fc721fe207f5-image.png

        apollon77 1 Reply Last reply Reply Quote 0
        • apollon77
          apollon77 @Stephan Schleich last edited by

          @Stephan-Schleich Bitte nicht anfangen irgendwelche States zweck-zu-entfremden 🙂 WORKIGN hat eine semantische Bedeutung

          Stephan Schleich 1 Reply Last reply Reply Quote 0
          • Stephan Schleich
            Stephan Schleich @apollon77 last edited by Stephan Schleich

            @apollon77 okay, könnte man ne Möglichkeit bieten selber weitere Felder mit hinzuzufügen bzw ein paar freie?

            apollon77 1 Reply Last reply Reply Quote 0
            • apollon77
              apollon77 @Stephan Schleich last edited by

              @Stephan-Schleich Feature Request bitte im Github beim Devices Adapter 🙂

              Stephan Schleich 1 Reply Last reply Reply Quote 0
              • Stephan Schleich
                Stephan Schleich @apollon77 last edited by

                @apollon77 Wollt ich gerade machen, gibt es bereits 🙂 - https://github.com/ioBroker/ioBroker.devices/issues/18

                sbormann created this issue in ioBroker/ioBroker.devices

                closed Allow adding more states to device #18

                apollon77 1 Reply Last reply Reply Quote 0
                • apollon77
                  apollon77 @Stephan Schleich last edited by

                  @Stephan-Schleich Dann hinterlass ein "Daumen hoch" im ersten post

                  M 1 Reply Last reply Reply Quote 0
                  • M
                    mlengen @apollon77 last edited by

                    @apollon77 Es ist hier so still geworden. Geht es hier noch weiter oder ist dieser Weg eine Sackgasse?

                    braindead apollon77 2 Replies Last reply Reply Quote 0
                    • braindead
                      braindead Developer @mlengen last edited by

                      @mlengen In einem der letzten Dev Meetings wurde betont, dass Alias die Zukunft ist und der momentane Stand nur ein Zwischenstand ist. Was genau erwartest Du denn, was hier passieren soll?

                      1 Reply Last reply Reply Quote 0
                      • apollon77
                        apollon77 @mlengen last edited by

                        @mlengen Tage ... 24h ... Privatleben ... andere Prios ... such Dir nen Grund aus ... ja es ist immer noch der Plan ...

                        1 Reply Last reply Reply Quote 1
                        • K
                          kubi last edited by

                          Ich habe mal eine Frage zum Adapter Devices, wie kann ich selbst Aliase zusätzlich anlegen ?

                          a73b7239-ddf6-42b0-82ec-3b41e1626e6d-image.png

                          da_Woody 1 Reply Last reply Reply Quote 0
                          • V
                            Videonisse @apollon77 last edited by Videonisse

                            Sorry for late feedback but I just found this thread. I hope it's okey that I write in english as mein deutch ist leider nicht sehr gut (ich kann aber deutch gut lesen).

                            I'm thrilled to read about the enhancements in this area! This enables ioBroker to become smart 🙂

                            However, I would not use the Alexa Skills as a great Taxonomy for how to implement the metadata in ioBroker. Alexa is great and very flexible, but it lacks a good structure. For example, it only specifies 15 different Device types (Skill Device Templates). Google Assistant is much better; they have currently 78 Devices types for smart home area. Apple HomeKit has 23 (Accessory types).

                            Have I understood the proposed structure correctly that the Device top level will be called "Alias" and an alias then has a "Function", and below this, it will have one or more "Roles/Types" and these have different "States"?

                            Could you share how those different levels map to the Taxonomy used by, for example Alexa and Google?

                            Something else I would suggest is to not focus too much on Alexa and Google but use as much as possible from the already standardized and open framework from OpenConnectivity Foundation, the OCF Specification. The latest release is from July this year. They have already a huge amount of Devices types specified, 54 types for smart home and another 127 for appliances and other IoT devices. For the next level, they call it "Resource Types", they have specified 169 types. Most of the big players are members of OCF. Have you guys already looked at this spec and if so, what is your opinion about it?

                            For my own benefit, I have put a table together with how I understand the used Taxonomy and how they map. I also counted all the standardized types they currently have officially documented. Please, let me know if I misunderstood something.

                            2020-10-19 00_10_41-Smart home APIs Google Alexa Homekit.xlsx - Taxonomy mapping.png

                            Many thanks for the impressive work with ioBroker and all of the adapters!

                            V Garfonso 2 Replies Last reply Reply Quote 1
                            • V
                              Videonisse @Videonisse last edited by Videonisse

                              EDIT: I found an online tool showing all the device and resource types as well as enumerations: https://openconnectivityfoundation.github.io/devicemodels/docs/index.html

                              Here is the list of OCF Universal Device types (Source: OCF spec Annex A)

                              Device Category  / Device Type  / Normative
                              
                              Space Conditioning	
                              	Air Conditioner	oic.d.airconditioner
                              	Water Heater	oic.d.waterheater
                              	Furnace	oic.d.furnace
                              	Pump	oic.d.pump
                              	Fan	oic.d.fan
                              	Condensing Unit	oic.d.condensingunit
                              	Condenser	oic.d.condenser
                              	Humidifier	oic.d.humidifier
                              	Dehumidifier	oic.d.dehumidifier
                              	Thermostat	oic.d.thermostat
                              	HVAC	oic.d.hvac
                              	Air Purifier	oic.d.airpurifier
                              	Air Quality Monitor	oic.d.airqualitymonitor
                              
                              Lighting
                              	Lighting Controls	oic.d.lightingcontrol
                              	Light	oic.d.light
                              
                              Appliance
                              	Airer	oic.d.airer
                              	Dryer (Laundry)	oic.d.dryer
                              	"Washer (Laundry)"	oic.d.washer
                              	Clothes Washer Dryer	oic.d.washerdryer
                              	Dishwasher	oic.d.dishwasher
                              	Freezer	oic.d.freezer
                              	Ice Machine	oic.d.icemachine
                              	Indoor Garden	oic.d.indoorgarden
                              	Mattress	oic.d.mattress
                              	Oven	oic.d.oven
                              	Range	oic.d.range
                              	Refrigerator	oic.d.refrigerator
                              	Water Heater	oic.d.waterheater
                              	Water Purifier	oic.d.waterpurifier
                              	Cooker Hood	oic.d.cookerhood
                              	Cooktop	oic.d.cooktop
                              	Steam Closet	oic.d.steamcloset
                              
                              Electronics
                              	Audio System	oic.d.audiosystem
                              	AV Player	oic.d.avplayer
                              	Camera	oic.d.camera
                              	Desktop PC	oic.d.desktoppc
                              	Notebook PC	oic.d.notebookpc
                              	Server	oic.d.server
                              	Computer	oic.d.pc
                              	Data Storage Unit	oic.d.datastorageunit
                              	Display	oic.d.display
                              	Portable Electronics	oic.d.portableelectronics
                              	Game Console	oic.d.gameconsole
                              	3D Printer	oic.d.3dprinter
                              	Printer	oic.d.printer
                              	Printer Multi- Function	oic.d.multifunctionprinter
                              	Scanner	oic.d.scanner
                              	Musical Instrument	oic.d.musicalinstrument
                              	Networking Equipment	oic.d.networking
                              	Handset	oic.d.handset
                              	Receiver	oic.d.receiver
                              	Set Top Box	oic.d.stb
                              	Telephony	oic.d.telephonydevice
                              	Television	oic.d.tv
                              	Active Speaker	oic.d.speaker
                              	Electronics	oic.d.smallelectrical
                              
                              Miscellaneous
                              	Air Compressor	oic.d.aircompressor
                              	Bathroom General	oic.d.bathroomdevice
                              	Battery Charger	oic.d.batterycharger
                              	Business Equipment	oic.d.businessequipment
                              	Robot Cleaner	oic.d.robotcleaner
                              	Portable Stove	oic.d.portablestove
                              	Exercise Machine	oic.d.exercisemachine
                              	Portable HVAC	oic.d.hvacportable
                              	Optical augmented RFID Reader	oic.d.orfid
                              	Coffee Machine	oic.d.coffeemachine
                              	Food Probe	oic.d.foodprobe
                              	Grinder	oic.d.grinder
                              	Kettle	oic.d.kettle
                              	Decorative Lighting	oic.d.lightdecorative
                              	Emergency Lighting	oic.d.lightemergency
                              	Microwave Oven	oic.d.microwave
                              	Vending Machine	oic.d.vendingmachine
                              	Water Dispenser	oic.d.waterdispenser
                              	Battery	oic.d.battery
                              
                              Infrastructure	
                              	Water Valve	oic.d.watervalve
                              	Blind	oic.d.blind
                              	Door	oic.d.door
                              	Garage Door	oic.d.garagedoor
                              	Smart Lock	oic.d.smartlock
                              	Window	oic.d.window
                              	Fireplace	oic.d.fireplace
                              	Pump	oic.d.pump
                              	Energy Generator	oic.d.energygenerator
                              	Smart Plug	oic.d.smartplug
                              	Arc Fault Circuit Interrupter	oic.d.afci
                              	Circuit Breaker	oic.d.circuitbreaker
                              	Ground Fault Circuit Interrupter	oic.d.gfci
                              	Inverter	oic.d.inverter
                              	PV Array System	oic.d.pvarraysystem
                              	Switch	oic.d.switch
                              	Security Panel	oic.d.securitypanel
                              	Generic Sensor	oic.d.sensor
                              	Electric Meter	oic.d.electricmeter
                              	Energy Monitor	oic.d.energymonitor
                              
                              Transportation	
                              	Electric Vehicle Charger	oic.d.electricvehiclecharger
                              
                              Fitness	
                              	Fitness Device	oic.d.fitnessdevice
                              	Activity Tracker	oic.d.activitytracker
                              	Blood Pressure Monitor	oic.d.bloodpressuremonitor
                              	Body Thermometer	oic.d.bodythermometer
                              	Cycling Power Meter	oic.d.cyclingpowermeter
                              	Cycling Speed Sensor	oic.d.cyclingspeedsensor
                              	Cycling Cadence Sensor	oic.d.cyclingcadencesensor
                              	Heart Rate Monitor	oic.d.heartratemonitor
                              	Muscle Oxygen Monitor	oic.d.muscleoxygenmonitor
                              
                              Medical	
                              	Blood Pressure Monitor	oic.d.bloodpressuremonitor
                              	Body Scale	oic.d.bodyscale
                              	Body Thermometer	oic.d.bodythermometer
                              	CGM	oic.d.cgm
                              	Glucose Meter	oic.d.glucosemeter
                              	Heart Rate Monitor	oic.d.heartratemonitor
                              	Medical Device	oic.d.medicaldevice
                              	Pulse Oximeter	oic.d.pulseoximeter
                              	Sleep Monitor	oic.d.sleepmonitor
                              
                              Personal Health
                              	Activity Tracker	oic.d.activitytracker
                              	Blood Pressure Monitor	oic.d.bloodpressuremonitor
                              	Body Composition Analyser	oic.d.bodycompositionanalys er
                              	Body Scale	oic.d.bodyscale
                              	Body Thermometer	oic.d.bodythermometer
                              	CGM	oic.d.cgm
                              	Glucose Meter	oic.d.glucosemeter
                              	Heart Rate Monitor	oic.d.heartratemonitor
                              	Personal Health Device	oic.d.personalhealthdevice
                              	Pulse Oximeter	oic.d.pulseoximeter
                              	Sleep Monitor	oic.d.sleepmonitor
                              
                              Other		oic.d.unknown
                              	Access Management Service	oic.d.ams
                              	Credential Management Service	oic.d.cms
                              	Device Ownership Transfer Service	oic.d.dots
                              

                              And a list with the 169 Resource Type definitions

                              Friendly Name (informative)	Resource Type (rt)
                              3D Printer	oic.r.printer.3d
                              Acceleration Sensor	oic.r.sensor.acceleration
                              Activity	oic.r.activity
                              Activity Count	oic.r.sensor.activity.count
                              Activity Tracker Atomic Measurement	oic.r.activitytracker-am
                              Air Flow	oic.r.airflow
                              Air Flow Control	oic.r.airflowcontrol
                              Air Quality	oic.r.airquality
                              Air Quality Collection	oic.r.airqualitycollection
                              Alarm	oic.r.alarm
                              Altimeter	oic.r.altimeter
                              Atmospheric Pressure	oic.r.sensor.atmosphericpressure
                              Audio Controls	oic.r.audio
                              Auto Focus	oic.r.autofocus
                              Automatic Document Feeder	oic.r.automaticdocumentfeeder
                              Auto White Balance	oic.r.colour.autowhitebalance
                              Battery	oic.r.energy.battery
                              Battery Material	oic.r.batterymaterial
                              Body Composition Analyser Atomic Measurement	oic.r.bodycompositionanalyser-am
                              Binary switch	oic.r.switch.binary
                              Blood Pressure	oic.r.blood.pressure
                              Blood Pressure Monitor Atomic Measurement	oic.r.bloodpressuremonitor-am
                              BMI	oic.r.bmi
                              Body Fat	oic.r.body.fat
                              Body Fat Free Mass	oic.r.body.ffm
                              Body Location Temperature	oic.r.body.location.temperature
                              Body Scale Atomic Measurement	oic.r.body.scale-am
                              Body Soft Lean Mass	oic.r.body.slm
                              Body Thermometer Atomic Measurement	oic.r.bodythermometer-am
                              Body Water	oic.r.body.water
                              Brewing	oic.r.brewing
                              Brightness	oic.r.light.brightness
                              Button Switch	oic.r.button
                              Cadence	oic.r.cadence
                              Calibrate for Continuous Glucose Meter (CGM)	oic.r.cgm.calibrate
                              Calorific Value	oic.r.calorificvalue
                              Carbon Dioxide Sensor	oic.r.sensor.carbondioxide
                              Carbon Monoxide Sensor	oic.r.sensor.carbonmonoxide
                              Circuit Breaker (IEC 61850)	oic.r.circuitbreaker
                              Clock	oic.r.clock
                              Colour Chroma	oic.r.colour.chroma
                              Colour Hue Saturation	oic.r.colour.hs
                              Colour RGB	oic.r.colour.rgb
                              Colour Saturation	oic.r.colour.saturation
                              Colour Space Coordinates	oic.r.colour.csc
                              Colour Temperature	oic.r.colour.colourtemperature
                              Consumable	oic.r.consumable
                              Consumable Collection	oic.r.consumablecollection
                              Contact Sensor	oic.r.sensor.contact
                              Continuous Glucose Meter (CGM) Atomic Measurement	oic.r.cgm-am
                              Conversion Factor	oic.r.conversionfactor
                              Cycling Power	oic.r.cyclingpower
                              Delay Defrost	oic.r.delaydefrost
                              Demand Response Load Control (DRLC)	oic.r.energy.drlc
                              Deodorization	oic.r.deodorization
                              Device Settings - Accessibility	oic.r.settings.accessibility
                              Device Settings - Broadcasting	oic.r.settings.broadcasting
                              Device Settings - Picture	oic.r.settings.picture
                              Device Settings - Sound	oic.r.settings.sound
                              Device Settings - Support	oic.r.settings.support
                              Device Settings - System	oic.r.settings.system
                              Dimming	oic.r.light.dimming
                              Door	oic.r.door
                              Ecomode	oic.r.ecomode
                              Electric Vehicle Connector	oic.r.vehicle.connector
                              Electrical Energy	oic.r.energy.electrical
                              Energy Consumption	oic.r.energy.consumption
                              Energy Generation	oic.r.energy.generation
                              Energy Overload/Circuit Breaker	oic.r.energy.overload
                              Energy Usage	oic.r.energy.usage
                              Gas Consumption	oic.r.gas.consumption
                              Gas Usage	oic.r.gas.usage
                              Fault Interrupter Switch	oic.r.switch.fault
                              Foaming	oic.r.foaming
                              Generic Sensor	oic.r.sensor
                              Geolocation Sensor	oic.r.sensor.geolocation
                              Glass Break Sensor	oic.r.sensor.glassbreak
                              Glucose	oic.r.glucose
                              Glucose Meter Complex Carbohydrates	oic.r.glucose.carb
                              Glucose Meter Exercise	oic.r.glucose.exercise
                              Glucose Meter HbA1c	oic.r.glucose.hba1c
                              Glucose Meter Context Health	oic.r.glucose.health
                              Glucose Meter Context Meal	oic.r.glucose.meal
                              Glucose Meter Context Medication	oic.r.glucose.medication
                              Glucose Meter Atomic Measurement	oic.r.glucosemeter-am
                              Glucose Meter Context Sample Location	oic.r.glucose.samplelocation
                              Glucose Meter Context Tester	oic.r.glucose.tester
                              Grinder	oic.r.grinder
                              HVAC Capacity	
                              Oic.r.hvac.capacity	6.157
                              Heart Rate	oic.r.heartrate
                              Heart Rate Monitor Atomic Measurement Representation	oic.r.heartratemonitor-am
                              Heart Rate Zone Sensor	oic.r.sensor.heart.zone
                              Heating Zone	oic.r.heatingzone
                              Heating Zone Collection	oic.r.heatingzonecollection
                              Height	oic.r.height
                              Humidity	oic.r.humidity
                              IAS Zone Info	oic.r.iaszoneinfo
                              IAS Zone Collection	oic.r.iaszone
                              Icemaker	oic.r.icemaker
                              Illuminance Sensor	oic.r.sensor.illuminance
                              Impact Sensor	oic.r.impactsensor
                              Inverter (IEC 61850)	oic.r.inverter
                              KeyCard Switch	oic.r.keycardswitch
                              Keypad Character	oic.r.keypadchar
                              Liquid Level	oic.r.liquid.level
                              Lock	oic.r.lock.status
                              Lock Code	oic.r.lock.code
                              Magnetic Field Direction	oic.r.sensor.magneticfielddirection
                              Media	oic.r.media
                              Media Audio	oic.r.media.audio
                              Media Core	oic.r.media.core
                              Media Image	oic.r.media.image
                              Media Source	oic.r.mediasource
                              Media Source List	oic.r.mediasourcelist
                              Media Source Input	oic.r.media.input
                              Media Source Output	oic.r.media.output
                              Media Text	oic.r.media.text
                              Media Video	oic.r.media.video
                              Mode	oic.r.mode
                              Movement	oic.r.movement.linear
                              Motion Sensor	oic.r.sensor.motion
                              Muscle Oxygen Saturation	oic.r.muscleoxygensaturation
                              Night Mode	oic.r.nightmode
                              Opaque Data	oic.r.opaquedata
                              Open Level	oic.r.openlevel
                              Operational State	oic.r.operational.state
                              Optical RFID Station	oic.r.orfid.station
                              Optical RFID Tag	oic.r.orfid.tag
                              Pan Tilt Zoom Movement	oic.r.ptz
                              Power Source	oic.r.powersource
                              Presence Sensor	oic.r.sensor.presence
                              Print Queue	oic.r.printer.queue
                              Pulsatile Characteristic for Pulse Oximeter	oic.r.pulsatilecharacteristic
                              Pulsatile Occurrence for Pulse Oximeter	oic.r.pulsatileoccurrence
                              Pulse Oximeter Atomic Measurement Representation	oic.r.pulseoximeter-am
                              Pulse Rate	oic.r.pulserate
                              PV array system connection terminal (IEC 61850)	oic.r pvconnectionterminal
                              Ramp Time	oic.r.light.ramptime
                              Refrigeration	oic.r.refrigeration
                              Restricted Switch	oic.r.switch.restricted
                              Sampling Interface for Continuous Glucose Meter (CGM)	oic.r.cgm.samplinginterval
                              Selectable Levels	oic.r.selectablelevels
                              Sensor for Continuous Glucose Meter (CGM)	oic.r.cgm.sensor
                              Sensor Properties	oic.r.sensor.props
                              Signal Strength	oic.r.signalstrength
                              Sleep	oic.r.sleep
                              Sleep Monitor Atomic Measurement Batch Representation	oic.r.sleepmonitor-am
                              Sleep Sensor	oic.r.sensor.sleep
                              Smoke Sensor	oic.r.sensor.smoke
                              Speech Synthesis	oic.r.speech.tts
                              Speed	oic.r.speed
                              SpO2 for Pulse Oximeter	oic.r.spo2
                              Status for Continuous Glucose Meter (CGM)	oic.r.cgm.status
                              Temperature	oic.r.temperature
                              Three Axis Sensor	oic.r.sensor.threeaxis
                              Threshold for Continuous Glucose Meter (CGM)	oic.r.cgm.threshold
                              Time Period	oic.r.time.period
                              Time Stamp	oic.r.time.stamp
                              Torque	oic.r.torque
                              Touch Sensor	oic.r.sensor.touch
                              UV Radiation	oic.r.sensor.radiation.uv
                              User ID	oic.r.userid
                              User Info for Application Layer	oic.r.userinfo
                              Value Conditional	oic.r.value.conditional
                              Water Info	oic.r.waterinfo
                              Water Sensor	oic.r.sensor.water
                              Weight	oic.r.weight
                              Window Covering	oic.r.windowcovering
                              
                              1 Reply Last reply Reply Quote 1
                              • da_Woody
                                da_Woody @kubi last edited by

                                @kubi said in Devices, Alias, Assistenten + Visualisierungen + die Zukunft:

                                Ich habe mal eine Frage zum Adapter Devices, wie kann ich selbst Aliase zusätzlich anlegen ?

                                Alias anlegen

                                1 Reply Last reply Reply Quote 0
                                • Garfonso
                                  Garfonso Developer @Videonisse last edited by

                                  @Videonisse said in Devices, Alias, Assistenten + Visualisierungen + die Zukunft:

                                  Have I understood the proposed structure correctly that the Device top level will be called "Alias" and an alias then has a "Function", and below this, it will have one or more "Roles/Types" and these have different "States"?

                                  That is not how I understood it. It is more flexible and linked to the ioBroker way to do things. Currently all aliases have an ID that starts with alias.0. That probalby will stay that way.
                                  The proposed device templates are a thing of an object of type "device", i.e. it describes one physical / logical device. The devices in ioBroker usually have multiple states (which can be sensor readings or ways to control the device). Currently this is all very loose and very different for different device types / manufacturers. The idea of the device templates is to have, as an attribute of the device itself, a list of possible "functions" that such a device can have and with that create a mapping from function to existing states in ioBroker. So that an adapter that creates a visualisation or device for alexa / google home or similar can determine from the device object which states to use to control the device.

                                  V 1 Reply Last reply Reply Quote 1
                                  • V
                                    Videonisse @Garfonso last edited by Videonisse

                                    Isn't "Device templates" and (partly) "Alias" just a technical way how to implement the standardized metadata for a Device into ioBroker? I'm not a developer so I don't fully understand what's the best way forward on the technical level. But what I try to understand is the needs of the standardized data; What data and How will this be structured. I'm not sure what has been decided upon already and if the team still wants some feedback. What is the status?

                                    Currently several of mine Adapters has structured the ioBroker Objects into "Devices" and "Channels". Devices and channels can also be tagged with metadata "Roles" and "Functions". Also, the objects for "States" can/shall be tagged with those. So already, a lot of the technical structure is implemented.

                                    As I understand it, currently both Roles and Functions, however, lack details of which group of states that are mandatory as well as are optional to represent, for example, a Light. If this was standardized on all three levels; Device, Channel and State, it should be much easier to programmatically interact with other adapters for automation and visualisation.

                                    An important question must be how to standardize all of those possible Device types and the required data they must include as well as suggested additional Objects/States they may have and in which formats. To use a common Taxonomy and have agreed on a Semantic model should be very important. A lot of work is already invested in the ecosystems from Amazon Alexa, Apple HomeKit and Google Assistant and of course, it's a good idea to copy as much as possible from them. But as they are not complete, I think it would be even more important to use a more open and standardized data model to achieve Semantic interoperability. So far I can see, the most advanced and promising model for the Smart Home is today what OpenConnectivity Foundation can offer as part of their OCF Specification. Of course, if the Working Group Project Connected Home over IP would publish a Semantic specification it would perhaps be even greater, or? But if and when this will happen is hard to tell.

                                    Regarding Semantic model, here is some example from the OCF spec of Device Types and Resource Types respectively:

                                    2020-10-20 12_53_12-OCF Device Type overview - Example Required Resources.png
                                    Source: https://openconnectivityfoundation.github.io/devicemodels/docs/index.html

                                    2020-10-20 13_11_27-OCF_Resource_Type_Specification_v2.2.0.pdf - Example Light Dimming.png
                                    Source: OCF Spec v.2.2.0 Resource Types

                                    Garfonso 1 Reply Last reply Reply Quote 1
                                    • Garfonso
                                      Garfonso Developer @Videonisse last edited by

                                      @Videonisse said in Devices, Alias, Assistenten + Visualisierungen + die Zukunft:

                                      As I understand it, currently both Roles and Functions, however, lack details of which group of states that are mandatory as well as are optional to represent, for example, a Light. If this was standardized on all three levels; Device, Channel and State, it should be much easier to programmatically interact with other adapters for automation and visualisation.

                                      That is exactly the current situation, we have states in some structure of devices and channels associated with roles and they have types and flags of read/write. From all this the type-detector tries to derive a device type. This is quite brittle.
                                      So I understood the proposal to add a description of the device to the device object meta data where a developer can define a device type for the device in question and which states of the device offer which functionality of the device type. So the device-object would describe which device type it is and how to control it / read data from it.

                                      Of course those device templates need to be defined, collected and described somewhere. From what I understood, when there is talk about Alexa devices or Google home, then that is not exclusive but a "base set" of devices that should be somehow supported (because integration of those services currently is an important freature for iobroker). If there are definitions of device templates that are a superset of those, then it might be worth having a look.

                                      From what I understood this still is a proposal and has not been decided upon (but I could be wrong there).

                                      V 1 Reply Last reply Reply Quote 0
                                      • V
                                        Videonisse @Garfonso last edited by

                                        (feel free to write in German, this is still the Deutsche Abteilung 🙂 )

                                        I believe that the proposed Device Templates are similar to what OCF has defined with their Device Types and the mandatory, as well as optional, Resource Types. For example, the Device Type Light that has 1 mandatory and 5 optional Resource Types. Each of them has a machine-readable template available.

                                        Would be interesting to hear if @apollon77, or the other core developers, thinks this is something interesting for ioBroker or a plan is already set?

                                        Example

                                        {
                                             "devicename": "Light",
                                             "devicetype": "oic.d.light",
                                             "vertical":   "Smart Home",
                                             "resources": [
                                               {"resourcetypetitle": "Binary Switch", "resourcetypeid": "oic.r.switch.binary"}
                                             ],
                                             "recommendedresources": [
                                               {"resourcetypetitle": "Colour Hue Saturation", "resourcetypeid": "oic.r.colour.hs"},
                                               {"resourcetypetitle": "Colour Space Co-ordinates", "resourcetypeid": "oic.r.colour.csc"},
                                               {"resourcetypetitle": "Colour Temperature", "resourcetypeid": "oic.r.colour.colourtemperature"},
                                               {"resourcetypetitle": "Dimming", "resourcetypeid": "oic.r.light.dimming"},
                                               {"resourcetypetitle": "Ramp Time", "resourcetypeid": "oic.r.light.ramptime"}
                                             ]
                                           }
                                        

                                        Source: https://github.com/openconnectivityfoundation/devicemodels/blob/master/oic.devicemap-content.json

                                        Example oic.r.light.dimming:

                                        {
                                          "swagger": "2.0",
                                          "info": {
                                            "title": "Dimming",
                                            "version": "2019-02-15",
                                            "license": {
                                              "name": "OCF Data Model License",
                                              "url": "https://github.com/openconnectivityfoundation/core/blob/e28a9e0a92e17042ba3e83661e4c0fbce8bdc4ba/LICENSE.md",
                                              "x-copyright": "copyright 2016-2017, 2019 Open Connectivity Foundation, Inc. All rights reserved."
                                            },
                                            "termsOfService": "https://openconnectivityfoundation.github.io/core/DISCLAIMER.md"
                                          },
                                          "schemes": ["http"],
                                          "consumes": ["application/json"],
                                          "produces": ["application/json"],
                                          "paths": {
                                            "/DimmingResURI" : {
                                              "get": {
                                                "description": "This Resource describes a dimming function.\nThe Property \"dimmingSetting\" is an integer showing the current dimming level.\nIf Property \"step\" is present then it represents the increment between dimmer values.\nWhen the Property \"range\" is omitted, then the range is [0,100].\nA value of 0 means total dimming; a value of 100 means no dimming.",
                                                "parameters": [
                                                  {"$ref": "#/parameters/interface"}
                                                ],
                                                "responses": {
                                                    "200": {
                                                      "description" : "",
                                                      "x-example":
                                                        {
                                                          "rt": ["oic.r.light.dimming"],
                                                          "if": ["oic.if.a", "oic.if.baseline"],
                                                          "dimmingSetting": 30,
                                                          "step": 5,
                                                          "range": [0, 100]
                                                        },
                                                      "schema": { "$ref": "#/definitions/Dimming" }
                                                    }
                                                }
                                              },
                                              "post": {
                                                "description": "Sets the desired dimming level.\n",
                                                "parameters": [
                                                  {"$ref": "#/parameters/interface"},
                                                  {
                                                    "name": "body",
                                                    "in": "body",
                                                    "required": true,
                                                    "schema": { "$ref": "#/definitions/Dimming" },
                                                    "x-example":
                                                      {
                                                        "dimmingSetting": 40
                                                      }
                                                  }
                                                ],
                                                "responses": {
                                                    "200": {
                                                      "description" : "Indicates that the dimming was changed.\nThe new dimming level is provided in the response.\n",
                                                      "x-example":
                                                        {
                                                          "dimmingSetting": 40
                                                        },
                                                      "schema": { "$ref": "#/definitions/Dimming" }
                                                    },
                                                    "403": {
                                                      "description": "This response is generated by the OCF Server when the client sends:\n  An update with an out of range property value for dimmingSetting.\nThe server responds with the current resource representation.\n",
                                                      "x-example":
                                                        {
                                                          "dimmingSetting": 40
                                                        },
                                                      "schema": { "$ref": "#/definitions/Dimming" }
                                                    }
                                                }
                                              }
                                            }
                                          },
                                          "parameters": {
                                            "interface": {
                                              "in": "query",
                                              "name": "if",
                                              "type": "string",
                                              "enum": ["oic.if.a", "oic.if.baseline"]
                                            }
                                          },
                                          "definitions": {
                                            "Dimming" : {
                                              "properties": {
                                                "rt": {
                                                  "description": "The Resource Type.",
                                                  "items": {
                                                    "enum": ["oic.r.light.dimming"],
                                                    "maxLength": 64,
                                                    "type": "string"
                                                  },
                                                  "minItems": 1,
                                                  "uniqueItems": true,
                                                  "readOnly": true,
                                                  "type": "array"
                                                },
                                                "dimmingSetting": {
                                                  "description": "The current dimming value.",
                                                  "type": "integer"
                                                },
                                                "n": {
                                                    "$ref": "https://openconnectivityfoundation.github.io/core/schemas/oic.common.properties.core-schema.json#/definitions/n"
                                                },
                                                "id": {
                                                    "$ref": "https://openconnectivityfoundation.github.io/core/schemas/oic.common.properties.core-schema.json#/definitions/id"
                                                },
                                                "range": {
                                                    "$ref": "https://openconnectivityfoundation.github.io/IoTDataModels/schemas/oic.baseresource.properties-schema.json#/definitions/range_integer"
                                                },
                                                "step": {
                                                    "$ref": "https://openconnectivityfoundation.github.io/IoTDataModels/schemas/oic.baseresource.properties-schema.json#/definitions/step_integer"
                                                },
                                                "if": {
                                                  "description": "The OCF Interface set supported by this Resource.",
                                                  "items": {
                                                    "enum": [
                                                      "oic.if.a",
                                                      "oic.if.baseline"
                                                    ],
                                                    "type": "string"
                                                  },
                                                  "minItems": 2,
                                                  "uniqueItems": true,
                                                  "readOnly": true,
                                                  "type": "array"
                                                }
                                              },
                                              "type": "object",
                                              "required": ["dimmingSetting"]
                                            }
                                          }
                                        }
                                        

                                        Source: https://openconnectivityfoundation.github.io/IoTDataModels/DimmingResURI.swagger.json

                                        1 Reply Last reply Reply Quote 0
                                        • B
                                          bungee71 @apollon77 last edited by bungee71

                                          @apollon77
                                          Hallo, ich habe Anfang Dezember 2020 mit ioBroker begonnen und seit dem einiges getestet. Den Ansatz mit den Alias finde ich sehr gut, ähnlich einer Variablentabelle, allerdings habe ich noch einige Lücken im Verständnis der Philisophie des Adapters. 😕
                                          Soweit ich es bisher Verstanden habe erstellt man unter "Geräte" ein Alias Gerät (Geräte denen ich vorher schon Raum und Funktion zugeordnet hatte erscheinen automatisch in der Liste - allerdings nicht als Alias - was hat es damit auf sich wie sieht der Use case aus ?) hierbei kann man sich einen vorgefertigen Typ aussuchen.
                                          neuesGeraet.png
                                          Wenn man das neue Alias Gerät editiert sieht man, dass es eine vorgefertigte Struktur hat - welche sicherlich von dem zuvor gewaehlten Typ kommt.
                                          GeraetBearbeiten.png
                                          Leider kann man in diesem Fenster nur die Quellen zu den einzelnen Tags/Members editieren, die Struktur selbst lässt sich hier nicht ändern genauso wie andere Parameter wie z.B. eine Konvertierung des Wertes.
                                          Anpassungen der Struktur (Member hinzufügen) konnte ich nur unter Objekte durchführen und dort auch nur mit manuellen Anpassungen z.B. um diesen Fehler beim Anlagen eines neuen Datenpunkt unter dem Gerät zu lösen
                                          FehlerNeuerAliasDatenpunkt.png
                                          erst wenn man den alias Parameter einfügt wird der Datenpunkt erkannt.
                                          Parameter.png

                                          Legt man nun auf diese Weise mehrere Datenpunkte an funktionieren Sie in Objekte unter alias.0 auch wunderbar. Wenn man aber jetzt ein Geräte das entsprechende Gerät editiert sind die neuen Member zwar in dargestellt aber alle sind "scheinbar" mit der gleichen Quelle verbunden --> Darstellungsproblem ?
                                          gleicheQuelle.png
                                          wie gesagt die Datenpunkte funktionieren.

                                          Ok jetzt zu meinem Problem bzw. Verbesserungsvorschlag.
                                          Die Vorgegebenen Typen finde ich gut jedoch sehe ich hier den generischen Ansatz als problematisch. Z.B. passt der Typ Jalousie von der Struktur her nicht zu meinen HomePilot20 RademacherGeräten. So wie ich das bis jetzt verstanden habe werden diese Typen Entwicklerseitig zur Verfügung gestellt ? Was im Grunde sehr gut ist da so eine gewisse Standardisierung rein kommt.

                                          1. Vorschlag:
                                            Der Adapterhersteller z.B. hier Homepilot20 liefert den GeräteTyp mit - er weiss am besten wie dieser auszusehen hat.

                                          2. Vorschlag:
                                            Der User sollte seine eigenen Typen erstellen können evtl. in einem Editor. In dem Editor können auch die Systemseitig gelieferten Typen dargestellt und verwaltet werden. Ich denke da an ein Typ --> Instanz Konzept. Das Gerät arbeitet nur mit der Instanz somit haben ich die Möglichkeit zentral den Typ zu editieren (single point of change)

                                          Die Verknüpfung der Quellen mit den einzelnen Member des Gerätes muss mit jedem neuen Gerät (für jeden Member) auch neu durchgeführt werden. Man kann es etwas schneller gestalten indem man das Gerät unter Objekte als JSON exportiert und nach Anpassung wieder importiert, ist aber alles nicht sehr effektiv.
                                          Beispiel: Ich habe 10 Rollos vom gleichen Hersteller somit haben alle die selbe Struktur
                                          Rollos.png
                                          und ein möglicher Typ "Rademacher_Rollo" hat die Parameter des Gerät ("Position"; "Action"; etc ) schon vorverbunden da diese ja bekannt sind, Somit muss ich nach anlegen eines neuen Gerätes nur noch den richtigen Pfad auswählen. Pfad.png

                                          1. Vorschlag: Zweistufige Projektierung
                                            Stufe Eins:
                                            Zuordnen eines GeräteTyp (oder User Defined Datatyp UDT) zu dem neu erstellten Alias Gerät.
                                            Stufe Zwei:
                                            Verschalten des Alias Gerät mit dem Pfad des realen Geräts.

                                          Vorteil ist ich muss nur noch eine Verbindung herstellen und nicht jeden einzelnen Member einzeln verbinden. Diese spart sehr viel Zeit und ist weniger Fehleranfällig.

                                          Ich hoffe ich habe es einigermaßen nachvollziehbar ausgedrückt sonst bitte einfach nachfragen. Gerne kann ich das auch in Github eintragen, möchte aber erst mal ein gemeinsames Verständnis und Wording finden.

                                          Gruß Bungee

                                          Messiahs 1 Reply Last reply Reply Quote 0
                                          • Messiahs
                                            Messiahs @bungee71 last edited by Messiahs

                                            Einfach mal über den Tellerrand geschaut:
                                            Habt Ihr mittlerweile eine Roadmap zu diesem Thema oder zumindest eine allgemeine Roadmap 2021 für uns ?

                                            Gefühlt wurde in letzter Zeit viel am "Haus" gestrichen und auch das Dach mit einer Solaranlage ausgestattet ("Alexa Custom Skill") und sogar eine neue Dachterrasse geplant ("Text Kommandos für Alexa" ,... ) .
                                            Aber gefühlt ist erstmal die Sanierung des Kellers notwendig, sonst bricht in den nächsten Jahren das Haus zusammen.

                                            Neue Anforderungen/UserStorys bzgl. Alexa-Unterstützung machen zurzeit keinen Sinn (wg. ausstehendem Update auf V3-AlexaApi).
                                            Selbst für simple Grundfunktionen fehlt anscheinend das Grundgerüst (Temperatur_Steuerung/_Sensor über Alexa-App, Rolladensteuerung, usw. ).

                                            Das Basement bzgl. V3-AlexaApi sollte man schnellstens mit hoher Priorität angehen.

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            797
                                            Online

                                            31.7k
                                            Users

                                            79.8k
                                            Topics

                                            1.3m
                                            Posts

                                            alexa alias devices iot
                                            20
                                            75
                                            14371
                                            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