Premise Groups ... so handy yet so undocumented!

Motorola Premise

123

Senior Member
Does anyone use Premise's "Groups" feature? Surprisingly, there's nothing in the Help docs that explains how to use it!

A light, appliance, etc can be a member of a Group ... that much is easy to understand. I created an "Interior" group and tagged all interior lights as members. I couldn't find anything that controlled groups so I wrote a function (SetGroup) that lets me turn them all on/off/bright/dim in one shot (attached in the XDO).

There's another property called "Access" that appears to influence how a member behaves in a group.

"Normal" is the default when the object is not part of a group.
"Public" is the default when the object is part of a group.
"Control" implies that this object controls the behaviour of all other group members.
"Listen" implies that this object will do whatever the "Control" member does.
"Private" - I haven't determined what this does.

I may be completely wrong about "Control" and "Listen" because I couldn't get it to work. If you set a group member to "Listen", it will inherit the "Control" member's Preset Dim Level. Nice. However, if I turn on the "Control" member, the "Listeners" do nothing. If you try to turn on a Listener, it will refuse (i.e. its PowerState flashes true momentarily then returns back to false). Clearly, there is some sort of interaction taking place but not enough to make it useful. :)

Does anyone know how Groups were intended to be used? How does the Access property work?
 

Attachments

As I'm working thru the next phase in the iPhone module, controlling the availability of the mediazone is currently on my plate. I think your setGroup function is what I'm looking for...My plan was not to replicate the availability functionality, but rather force a join to a current group, if required. For instance, I use John's Sirius module, so I am forced to use it for only one zone, unless I join the 'Control/Master/Owning' zone.

Thanks, I am now rethinking that... ;) I was thinking it may be to clunky to allow the user to select the zone they wish to join; ListGroup may be the way to do that a bit more eloquently. So now the questions...I think I can change the list to images to handle the user interaction - but I am curious as to how you envisioned it/use it for your Light group? Where did you find the Groups? I see it in the MediaZone code, but didn't see it elsewhere (although i didn't look hard!)

Any other nuggets of info on Groups?
 
I never fully grokked the finer points of Groups. I concluded they were designed for mSense's purposes and gave up on the idea of using them for lighting.
 
So I am htting the oldies but goodies...I'm still going down the path...I either want to join a group (which in a normal house is probably the main source), or MAYBE listen locally..

So what does this xdo do for me? And any ideas how to just 'join' the current source (aka the 'only' source)?

(realistically, if my wife is listening to her smooth jazz....so are the rest of us!)...I'd just like to climb aborad from the other zones....
 
I have continued to trudge thru the Groups and Access stuff - interesting, but as 123 pointed out, not much documentation...
For those of us with 'normal' sized homes, I found that generally, we listen to the same music. The major difference is whether we want the music on or off. So I used Access and Groups in this fashion

I created a simple custom panel button with a scriptmacro

Code:
if this.MediaZone.Group is nothing then
this.MediaZone.Access = 1
this.MediaZone.Group = "group"
this.WebPreferenceFolder.CustomPanel.DisplayName = "<FONT size = ""4"" weight = ""bold"" color = ""white""</FONT>" & "Off" (just added some 'fun' stuff to say whether you want to turn the zone on or off)
else
this.MediaZone.Group = ""
this.MediaZone.Availability = ""
this.WebPreferenceFolder.CustomPanel.DisplayName = "<FONT size = ""4"" weight = ""bold"" color = ""black""</FONT>" & "On"
end if

When you 'push' the button to turn the zone on, it changes the access from 'normal' to 'public', then assigns the Group to 'Group', vs letting Premise assign a group number (eg 'group3')...what was interesting is that until I figured out the access had to be set correctly, I got very unpredictable results. I also clear the availability when I turn a zone off as I had a number of cases where the source became 'stuck' to a zone.

So now, once I have fired up a source I can walk thru the rooms (real or figuratively) and turn on/off the zones as desired. I still have a couple of nits to sort thru, but really won't have much affect on the groups or access...

You folks know how I code, so all of the usual caveats apply... ;)
 
Back
Top