Skip to content

Commit

Permalink
Add FAQ, discuss getter topic (#87)
Browse files Browse the repository at this point in the history
* Add FAQ, discuss getter topic

* Update README.md
  • Loading branch information
Thomas Dietrich authored Apr 27, 2018
1 parent 7d9f236 commit fb8d153
Showing 1 changed file with 22 additions and 0 deletions.
22 changes: 22 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,8 @@ Implementations of the Homie convention can be found on [this page](implementati
* [Property attributes](#property-attributes)
* [Arrays](#arrays)
* [Broadcast channel](#broadcast-channel)
* [FAQ and Rationale](#faq)


## Motivation

Expand Down Expand Up @@ -584,3 +586,23 @@ homie/$broadcast/alert ← "Intruder detected"
```

Any other topic is not part of the Homie convention.

----
----

## FAQ

In this section frequently asked questions will be answered.
This includes design decisions and drawn compromises in the specifics of the Homie convention.

### How do I query/request a property?

You don't.
The MQTT protocol does not implement the request-reply but rather the publish-subscribe messaging pattern.
The Homie convention follows the publish-subscribe principle by publishing data as retained messages on a regular basis.
You might want to rethink the design of your application - in most scenarios a regularly updated information is sufficient.

*Workaround:* You are free to implement your own ideas on top of the basic structure of the Homie convention.
You could either implement a `get` getter topic and its logic to trigger a value update, or you may exploit the concept of Homie properties and define a settable property to trigger a value update.

A discussion on the matter can be found in issue [#79](https://github.com/homieiot/convention/issues/79).

0 comments on commit fb8d153

Please sign in to comment.