Mios (Vera) Scenes in OpenHAB?

Tags: #<Tag:0x00007fe73315d228>

I’ve managed to get my Vera linked up in OpenHAB, and most things seem to be working. I can trigger scenes, but rather than have a “switch” for each scene, I’d like to combine them into one.

Unfortunately, each “scene” is a different item from the importer:
(items file):
String SceneBedroomDimmed "Bedroom Dimmed Scene" <sofa> (GScenes,GRoom2) {mios="unit:house,scene:17/status", autoupdate="false"}
String SceneBedroomEnergize "Bedroom Energize Scene" <sofa> (GScenes,GRoom2) {mios="unit:house,scene:16/status", autoupdate="false"}
String SceneBedroomOff "Bedroom Off Scene" <sofa> (GScenes,GRoom2) {mios="unit:house,scene:2/status", autoupdate="false"}

Any thoughts on how I can make them work like the multi-element “Switch” or “Selection” models like are here:
http://docs.openhab.org/configuration/sitemaps.html#element-type-switch ?

Thanks!

Create a Design Pattern: Proxy Item for the Switch, probably as a Number Item or a String Item, and a Rule that triggers on a command to the Proxy Item and sends the command to the appropriate Mios Item.

Thanks! I’ll look at that right away!

You write:

… I can trigger scenes …

How exactly do to create a rule that makes OH trigger a Scene run by Vera? I’ve searched for the syntax for doing this, but been unable to.

What confuses me is that Scenes from Vera show up in items as String and Contact, but not as for instance a Switch. So how do I trigger it?

Here is an example of a Scene that I’d like run from a OH rule:

String SceneBasementRoomOccupied “Basement Room Occupied Scene” (GScenes) {mios=“unit:house,scene:77/status”, autoupdate=“false”}

Contact SceneBasementRoomOccupiedActive “Active [MAP(en.map):%s]” (GScenes) {mios=“unit:house,scene:77/active”}

I’ve tried with this:

sendCommand(SceneBasementRoomOccupiedActive, OPEN)

…in a rule, but this does not seem to do anything and in get this error message in the log:

callScene: Command ‘OPEN’ not supported, or missing command: declaration, for Item ‘SceneBasementRoomOccupiedActive’

I found the solution.

The right syntax was: sendCommand(SceneBasementRoomOccupied, ON)