What is an Integration, Device, Entity, Component, Platform?

snippet from States list:

entity=remote.hub_3911_master_bedroom

snippet of my configuration.yaml:

# Harmony Hub Control  
remote:
- platform: harmony
  name: HUB@3911 Master Bedroom
  host: 192.168.0.182

In the above example the domain name for my entity is “remote”.

What is “remote” in my configuration file? Is it a domain name or a platform list or a component name or something else?

Thanks…

p.s. please dont beat me up, i already know i’m ignorant :slight_smile:

Only because you appear to have no desire to read the documentation. A year ago, I was also ignorant about Home Assistant and then I read the docs. I highly recommend it as the cure for ignorance.

For example, your question is answered in the second paragraph of the chapter about Configuration: YAML

Well I have read that and have poured hours into reading the docs. The real problem is that the documentation sucks and some is out of date, disorganized, inconsistent and obsolete.

For example go here:
Integrations - Home Assistant

Wouldnt you expect to get a list of components? Well you don’t it takes you to an Integrations page. So is it unreasonable to ask a question like “is a component the same as an integration”? I could give you lots more examples.

The thing I wanted to know is if the word “remote” in the config file is related to the domain name “remote” or is it just a coincidence?

Not that long ago, there was a push to RENAME components to INTEGRATIONS. Not everything has been updated…

1 Like

… and yet it answers your question. Did you read the link I provided?

YES I read it and NO it doesn’t answer the question.

Apparently a Component is not a Component but its an Integration, if I read the @flamingm0e post correctly. And you didn’t clarify how that name relates to the domain name of the same name.

Then you should abandon all hope because it actually does answer your question.

There was imprecision in the use of the terms component and integration (i.e. the two were used interchangeably to the detriment of clarity). To correct the mess, large swaths of the documentation was updated. However, it’s not like the term component was deprecated, just de-muddled.

Re-read my (much) earlier post explaining all the terms.

1 Like

Sigh… Well i do have a non-upgrade-able intel i286 cpu for a brain, and probably corrupted short term memory loss, which probably explains why i cant recall reading anything about the relationship between a component, integration, and domain name. Maybe someone could humor an idiot and explain it again to me.

Have you read the code? From a quick 5 minute browse of “Core.py” it seems it’s all async event listeners that fire callbacks. There is mention of an event loop though so there might be a polling aspect somewhere.

Some event based systems are just loops that look for events in a queue, things that want to fire events drop stuff into the queue. I believe Windows 98 worked that way. The other way is to attach listeners to things. The “Observer/Observable” pattern if you want. An MQTT receiver attaches to the subscription and receives a call back “on_message” routes it to a sensor or thingie which sets it’s state and then calls any listeners for that state (looping through each one) which calls others and so on. (not from the code just surmising)

I’m not saying there aren’t loops buried in the bowels, there might be in the Python Async stuff. Dunno.

Yes you can do events in a polling system and yes you can do polling with an event system. As I said academically you can hand wave it away as semantics.

As I was starting with heating, I could poll slowly. If the temp in a room needs heating it doesn’t matter if the heating comes on right now or in 30 seconds time. Actually polling slowly takes care of a lot of jitter and osculation issues. That and demands being active for at least 5 minutes, adds hysteresis for free. :slight_smile:

Not the only way to do it. Poor cats get skinned in many marvellous ways. The downside of some systems is that they always skin the cat the same way regardless of what type of cat it is. Better systems skin cats in whatever way works for that cat. :slight_smile:

Nah, it’s a component :slight_smile:

The real docs call it a component :smiley:

1 Like

LOL… good one and truthful :slight_smile:

Polling is needed for some hardware. Home assistant core is event based, but to say it doesn’t poll is flat out wrong, it 100% depends on where home assistant is getting the information (I.E. what component).

Well that MUST mean that an Integration is really a Component. hehehe

Its what the code says, anything else is just marketing :smiley:

Yes I have. But you’re just looking at the core. Have you looked at any of the code polling sensors? Pretty much most sensors require polling.

Fair enough, relax. Although I bet they raise events while polling :wink:

Yes they do as I said in a previous comment, but to flat out falsely claim:

to push your own software is annoying as hell.

2 Likes

Your right. One automation to rule them all, One automation to find them, One automation to bring them all and in the darkness bind them.

1 Like

Tough crowd here… The defenders of truth, justice, and the hassio way of life. :slight_smile:

I’ve been cruising the forms watching this guy push his crap for 10 days arguing with a ton of people over the correct way to do things. People come in, explain how it works, he argues. To say I’m annoyed by it is an understatement.

2 Likes