=================
This adapter allows connection from internet through ioBroker cloud to local installation of ioBroker.
To use cloud adapter you should first get the APP-Key on https://iobroker.net.
This is application key that the user can get on https://iobroker.net site. Please get the key there and enter it here.
All requests from cloud adapter will be routed to some WEB Instance. User must specify here the WEB instance, that will be showed to user, when he logs in https://iobroker.net site.
If you use standard iobroker.net cloud, you can deactivate it. This option is only important if own cloud used.
If you select "default" language the smart names of devices and of enumerations will not be translated. If some language specified all known names will be translated into this language. It is done to switch fast between many languages for demonstration purposes.
Change the order of function and roles in self generated names:
- if false: "Room function", e.g. "Living room dimmer"
- if true: "Function room", e.g. "Dimmer living room"
You can define the word which will be placed between function and room. E.g. "in" and from "Dimmer living room" will be "Dimmer in living room".
But is not suggested to do so, because recognition engine must analyse one more word and it can lead to misunderstandings.
Some groups consist of mixed devices: dimmers and switches. It is allowed to control them with "ON" and "OFF" commands and with percents. If command is "Set to 30%" and the *OFF level" is "30%" so the switches will be turned on. By command "Set to 25%" all switches will be turned OFF.
Additionally if the command is "OFF", so the adapter will remember the current dimmer level if the actual value is over or equal to the "30%". Later when the new "ON" command will come the adapter will switch the dimmer not to 100% but to the level in memory.
Example:
- Assume, that OFF level is 30%.
- Virtual device "Light" has two physical devices: switch and dimmer.
- Command: "set the light to 40%". The adapter will remember this value for dimmer, will set it for "dimmer" and will turn the switch ON.
- Command: "turn the light off". The adapter will set the dimmer to 0% and will turn off the switch.
- Command: "turn on the light". dimmer => 40%, switch => ON.
- Command: "set the light to 20%". dimmer => 20%, switch => OFF. The value for dimmer will not be remembered, because it is bellow OFF level.
- Command: "turn on the light". dimmer => 40%, switch => ON.
You can select the behaviour of ON command will come for the number state. The specific value can be selected or last non zero value will be used.
For every command the text response will be generated. You can define here the Object ID , where this text must be written to. E.g. sayit.0.tts.text.
Just now only english alexa supports the color control. The channel must have 4 states with following roles:
- level.color.saturation (required for detection of the channel),
- level.color.hue,
- level.dimmer,
- switch (optional)
Alexa, set the "device name" to "color"
Alexa, turn the light fuschia
Alexa, set the bedroom light to red
Alexa, change the kitchen to the color chocolate
To have the possibility to lock the locks, the state must have the role "switch.lock" and have native.LOCK_VALUE to determine the lock state.
Alexa, is "lock name" locked/unlocked
Alexa, lock the "lock name"
The adapter tries to generate virtual devices for smart home control (e.g. Amazon Alexa or Google Home).
The are two important enumerations for that: rooms and functions.
Rooms are like: living room, bath room, sleeping room. Functions are like: light, blind, heating.
Following conditions must be met to get the state in the automatically generated list:
- the state must be in some "function" enumeration.
- the state must have role ("state", "switch" or "level.*", e.g. level.dimmer) if not directly included into "functions". It can be that the channel is in the "functions", but state itself not.
- the state must be writable: common.write = true
- the state dimmer must have common.type as 'number'
- the state heating must have common.unit as '°C', '°F' or '°K' and common.type as 'number'
If the state is only in "functions" and not in any "room", the name of state will be used.
The state names will be generated from function and room. E.g. all lights in the living room will be collected in the virtual device living room light. The user cannot change this name, because it is generated automatically. But if the enumeration name changes, this name will be changed too. (e.g. function "light" changed to "lights", so the living room light will be changed to living room lights)
All the rules will be ignored if the state has common.smartName. In this case just the smart name will be used.
if common.smartName is false, the state or enumeration will not be included into the list generation.
The configuration dialog lets comfortable remove and add the single states to virtual groups or as single device.
If the group has only one state it can be renamed, as for this the state's smartName will be used. If the group has more than one state, the group must be renamed via the enumeration's names.
To create own groups the user can install "scenes" adapter or create "script" in Javascript adapter.
You can specify strings, that could be automatically replaced in the devices names. E.g if you set replaces to:
.STATE,.LEVEL
, so all ".STATE" and ".LEVEL" will be deleted from names. Be careful with spaces.
If you will set .STATE, .LEVEL
, so ".STATE" and " .LEVEL" will be replaced and not ".LEVEL".
- smart.lastObjectID: This state will be set if only one device was controlled by home skill (alexa, google home).
- smart.lastFunction: Function name (if exists) for which last command was executed.
- smart.lastRoom: Room name (if exists) for which last command was executed.
- smart.lastCommand: Last executed command. Command can be: true(ON), false(OFF), number(%), -X(decrease at x), +X(increase at X)
- smart.lastResponse: Textual response on command. It can be sent to some text2speech (sayit) engine.
There is a possibility to send messages to cloud adapter.
If you call [POST]https://iobroker.net/service/custom_<NAME>/<user-app-key>
und value as payload.
curl --data "myString" https://iobroker.net/service/custom_test/<user-app-key>
If you set in the settings the field "White list for services" the name custom_test, and call with "custom_test" as the service name, the state cloud.0.services.custom_test will be set to myString.
You may write "*" in white list and all services will be allowed.
From version 2.0.5 you can use GET request in form [GET]https://iobroker.net/service/custom_<NAME>/<user-app-key>/<data>
to place the <data> into cloud.0.services.custom_<NAME>.
Here you can find instructions how to use it with tasker.
IFTTT service is allowed only if IFTTT key is set.
Reserved names are "ifttt", "text2command", "simpleApi", "swagger". These must be used without the "custom_"
prefix.
You may write "text2command" in white list, you can send POST request to https://iobroker.net/service/text2command/<user-app-key>
to write data into text2command.X.text variable.
"X" can be defined in settings by the "Use text2command instance" option.
to do
- (Apollon77) Enhancements for Custom Skill
- (bluefox) Multilingual names were corrected
- (Apollon77/AlCalzone/Bluefox) Several fixes
- (bluefox) Support of custom alexa skill
- (bluefox) Added actions on commands from server: wait, stop, redirect; to control load of the server by start.
- (bluefox) Small changes in the configuration dialog
- (bluefox) add information about the expiring of remote access
- (bluefox) Adding of new devices is fixed
- (bluefox) Changes for Admin 3
- (bluefox) The errors by controlling of temperature are caught now
- (bluefox) Do not subscribe all objects
- (bluefox) Better update of the devices in configuration dialog
- (bluefox) Add settings for the ping timeout
- (grimneko) corrected some spelling mistakes
- (grimneko) update readme for IFTTT
- (bluefox) Allow to disable alexa service by state
- (bluefox / Philipp Beckers) Translations
- (bluefox) Changes for socket-io
- (bluefox) Fix small error in configuration
- (bluefox) Send uuid to cloud for authentication
- (bluefox) The small custom service reaction improvement
- (bluefox) Allow access to admin via iobroker.pro
- (c-klinger) Add settings for the connection timeout
- (bluefox) Allow control light colors
- (bluefox) AI deactivated
- (bluefox) change ping interval from 10 to 30 seconds
- (bluefox) fix double auth on connect
- (bluefox) Rename some german words
- (bluefox) Support of IFTTT
- (bluefox) Catch an error if the invalid smart name set
- (bluefox) controls of colors (english only)
- (bluefox) request temperature (target temperature and sensor temperature, english only)
- (bluefox) support of double names
- (bluefox) Fixed reconnection
- (bluefox) Try to fix reconnection
- (bluefox) Try to fix error with names
- (bluefox) Fixed scrollbar in configuration
- (bluefox) Add tooltips in config
- (bluefox) Add workaround for alexa reconnection
- (bluefox) Allow to use more than one smart name
- (bluefox) Fix deactivation of enums
- (bluefox) allow buttons to be controller with alexa
- (bluefox) print warnings for invalid states
- (bluefox) fix enum names
- (bluefox) add helper states and response text
- (bluefox) add option "Place function in names first"
- (bluefox) fix reconnect
- (bluefox) change smartName structure
- (bluefox) add value by ON
- (bluefox) add daily restart
- (bluefox) use devices with ":" symbols in the names
- (bluefox) add debug outputs
- (bluefox) Support of english language
- (bluefox) Use rooms of channel and not only states
- (bluefox) Fix error with smartNames
- (bluefox) Take the superset of actions for group and not the last one
- (bluefox) if group has switches and dimmers, turn devices OFF if the percent level is less than 30%
- (bluefox) Remember ON level for dimmers to switch it later ON
- (bluefox) Implement Heating profile for Alexa
- (bluefox) support of amazon alexa
- (bluefox) update socket.io
- (bluefox) update some packages
- (bluefox) support of read/write files