DTxAg Posted August 17, 2013 Share Posted August 17, 2013 Anyone know if it's possible to do the following with C4 InfinityEdge intercoms:(1) Disable the intercoms in some or all rooms after a certain time at night and reenable after a certain time in the morning?(2) Mute any music playing in a zone when an intercom call comes to that zone?Thanks. Link to comment Share on other sites More sharing options...
CFUG Posted August 17, 2013 Share Posted August 17, 2013 (1) You can throw all of the desired TSs into MONITOR mode at a scheduled time(2) Yes, of course. INCOMING CALL> MUTE for example. Link to comment Share on other sites More sharing options...
DTxAg Posted August 18, 2013 Author Share Posted August 18, 2013 (1) You can throw all of the desired TSs into MONITOR mode at a scheduled time(2) Yes, of course. INCOMING CALL> MUTE for example.I'm just learning how to program with HE. Can you explain how to put all of the TSs into monitor mode? Link to comment Share on other sites More sharing options...
shareez Posted August 22, 2013 Share Posted August 22, 2013 DTxAg,What you can do is create TWO new schedule that repeats daily. One to say turn touch panels OFF and one to say ON and you can set those times however you'd like.Then go into programming and select the the Touch Panels OFF schedule. When that executes, select the touch panels you'd like to switch off from the right side, scroll down and select "On" on the Do Not Disturb. Then double click the Green arrow and it should appear in the center. Do this for each of the touch panels you'd like to disable at night. Then on your next Scheduled item (Touch Panels ON), do the opposite, go to each of those touch panels and scroll down to Do Not Disturb, and Select OFF. Then double click the green button and it should appear in the center For muting,Go to the programming tab, select the touch panel in question on the left side, click on "Session Started" and on the right side, select the ROOM you'd like to mute. You will see a commands Radio button, click that and you will see a huge drop down box, one of which will say Mute ON. Double click the green button to add it to the center and voila!You want to add the Mute ON command to both Session Started & Incoming Call and add the Mute OFF command to the Session Ended Action Hope that helps! Link to comment Share on other sites More sharing options...
DTxAg Posted August 23, 2013 Author Share Posted August 23, 2013 shareez,Thanks for the info. Can you tell me where I go to turn on and off the Do Not Disturb? I'm not seeing it on the right side. Link to comment Share on other sites More sharing options...
shareez Posted August 24, 2013 Share Posted August 24, 2013 In the programming section, make sure you've selected the correct scheduler item on the left. Then on the right where you have the list of devices, find the touch screen in the particular room and select it. The options for programming will appear just below the list of devices. Scroll all the way down of that list of options and it will be one of the last items there Link to comment Share on other sites More sharing options...
DTxAg Posted August 25, 2013 Author Share Posted August 25, 2013 In the programming section, make sure you've selected the correct scheduler item on the left. Then on the right where you have the list of devices, find the touch screen in the particular room and select it. The options for programming will appear just below the list of devices. Scroll all the way down of that list of options and it will be one of the last items thereExcellent, thanks shareez. Link to comment Share on other sites More sharing options...
jd318guy Posted August 25, 2013 Share Posted August 25, 2013 I was going to post a similar question and saw this new topic. Like the original poster, I am just learning Control4 programming with ComposerHE. We recently had a door station intercom with bell button installed.I would like to have the bell behavior be the following for each room:When doorbell event save current volume save current audio source save current mute state play door bell .wav file (This is the only thing that happens now) restore mute state restore current audio source restore current volumeI know I will have to copy this code to each of my rooms with discrete audio, volume, and mute.I have looked through the entire forum programming topic area, and read the ComposerHE manual cover to cover, and while I have found hints here and there, I have not found an example that ties it all together.I am especially confused with the use of "MUTE_IS_LINKED" and "VOLUME_IS_LINKED" conditionals -- there is no good explanation of how to use these or what they do.The reason for this is that my wife does not like music playing very often, so if I am in a room, or out on the patio, listening to something, and walk away, she will often mute it so I can unmute it when I return. If the bell rings, the bell .wav file plays but then leaves the room unmuted, which drives her crazy.I can't believe that this is not factory installed default code when a door station is added to a system.Thanks in advance,-JD318Guy Link to comment Share on other sites More sharing options...
Cyknight Posted August 26, 2013 Share Posted August 26, 2013 Current volume and audio source are automatically saved as it stands using an announcement. When an announcement triggers it goes to the volume set in the announcement itself, then once done reverts to previous.Mute needs to be done manually.Create a variable -Boolean- "mute memory" for each roomWHEN doorbell is pressedIF [Room1] Is muted is true set [mute memory room1] to trueIF repeat above as needed......delay 100msPlay announcementdelay 100msIF variable [mute memory room1] = true send command mute on to [room1] set variable [mute memory room 1] to falserepeat..... Link to comment Share on other sites More sharing options...
jd318guy Posted March 16, 2014 Share Posted March 16, 2014 Hi Cyknight, and I hope this doesn't get posted multiple times -- the forum was acting wonky for me... Thanks for your suggestion. I finally got around to playing with this again. There are still problems. It appears that the "Announcement" is done in a separate thread or process (not sure exactly what goes on under the covers). To prove this to myself my "When the Doorbell is pressed" code looks like this (some rooms omitted for brevity):Variables->MuteStateBar = FalseVariables->MuteStateGarage = Falsedelay 500 millisecondsIf Room Bar Mute is True Variables->MuteStateBar = TrueIf Room Garage Mute is True Variables->MuteStateGarage = TrueExecute Announcement 'Doorbell'delay 500 millisecondsIf Variables->MuteStateBar is True Send command 'Mute on' to Barif Variables->MuteStateGarage is True Send command 'Mute on' to GarageSet Level on the Family Room->Bedroom Hall to 100Turn off the Family Room->Bedroom Hall That last was a test -- they are lights I can see from my computer. I set both the bar and the garage to play a music source.I mute one of the them.What happens when I execute the doorbell is this: After a one second delay, the lights flash on, then off.Simultaneously, both rooms go quiet.After a three second delay the doorbell announcement .wav file plays,After the .wav file finishes, both rooms stay quiet for another eight seconds or so.Both the room that was muted and the one that was playing normally come back on.Checking the "MuteState" variables that I set shows that the room that was muted has my variable set to true, the other false. If I change the delay after the announcement plays to 15 seconds, then the .wav file plays, the muted room comes back on, and then after 15 seconds the lights turn on and off and the room that was muted is re-muted. This proves my mute command is working. The problem now seems to be to find some way to set a timer keep resetting it until the announcement thread/process is finished. I have no idea how to do that, as the announcement code seems to be something built in -- unless I am not looking in the right place. Any help would be appreciated! Link to comment Share on other sites More sharing options...
Cyknight Posted March 16, 2014 Share Posted March 16, 2014 The trick should work if you can find the right amount of time to delay. The problem is the announcement agent overriding the re-introduction of the mute state, setting the room back to 'not muted' AFTER the announcement is completed. What that time is is impossible to know, as it depends on what that announcement is doing. Unfortunately there is no readable state to 'see' if the announcement is running or done.You COULD however also introduce several attempts to mute the room, to cover system delays etc: ......delay 500msIf variable is true--mutedelay 500 msif variable is true--mute Note that those two 500 ms delays add up, as it will delay 500ms, then execute, then delay another 500ms..... Link to comment Share on other sites More sharing options...
jd318guy Posted March 16, 2014 Share Posted March 16, 2014 That's what I was afraid of; it appears that this is an oversight in the system level programming - the volume is kept and restored -- why not the mute state? (That's a question to Control-4, not, you, Cyknight!). The other thing that astounds me is why no one else is complaining -- am I the only one with this issue? I know that having a muted room suddenly blare out and then re-mute after the doorbell rings is going to lead to a p-ed off wife! Her solution, and one that I think I will program, is to turn off all rooms on doorbell press, and then to play the announcement on doorbell release. I'll let you know how that goes. She rarely plays anything during the day anyway, and its just me muting something and then forgetting to turn it off at night that brought this to her attention. Hmmmm.... maybe set an event at 0300 or so that just turns all rooms off, sound wise. Thanks again! Link to comment Share on other sites More sharing options...
turls Posted March 17, 2014 Share Posted March 17, 2014 I just noticed this issue a few weeks ago. I agree, it seems to be an oversight. Should be fixed. Link to comment Share on other sites More sharing options...
chaim Posted September 22, 2014 Share Posted September 22, 2014 A different question, but also intercom related. I have a newly installed hime, and an still learning the ropes. When I set a touchscreen on do not disturb, and the doorbell rings, the touchscreen chimes but the intercom doesn't turn on. I would expect on dnd for it to also not chime.Is this just the way it is, or was my system not programmed correctly? Link to comment Share on other sites More sharing options...
jd318guy Posted November 9, 2014 Share Posted November 9, 2014 Intercom/Doorbell Mute State problem solved Problem: The announcement event stores and restores room volumes but not mute states, so for instance, if I am listening to my favorite heavy metal stuff out on the patio and mute it when my wife comes home, and forget that I muted it, then when she is peacefully at home the next day and the neighbor comes over and rings the doorbell, the announcement wav file plays, and then suddenly the patio comes to life playing something from Metallica at full volume, scaring the crap out of her. Not cool, Control4. The following code will cut that down to where rooms that are muted will at most blast out a very short bit of sound (less than a second if you get your timer duration tweaked) before they are re-mutted. I recognize that another option would be to turn off all rooms that are muted, but as you can see from my previous posting on this subject, the announcement runs in a different thread than user-created code, and so it is hard to predict in what order things will happen. So, without further ado, I present my solution, which can be used as-is, or serve as an example of interesting things you can do with timers, variables, and ComposerHE. First, define MuteState variables for each of your audio zones, and one to store whether or not the doorbell button press was the initial press for this announcement event. VariablesName Type ClassMuteStateBar variable BooleanMuteStateGarage variable BooleanMuteStateKitchen variable BooleanMuteStateMBdrm variable BooleanMuteStateMBath variable BooleanMuteStatePatio variable BooleanDoorbellInitialPress variable Boolean Create a timer agent slightly longer than the length of time from a doorbell button press to the end of the wav file playing. Mine measured 22.3 seconds by my stopwatch, so I used 23 seconds. TimersAnnouncementDurationInterval: 00:00:23 Create the code. In pseudo-code, this is what you are doing:If this is the initial button press Start anouncement timer set all MuteState variables to false foreach room If room is muted set mute state of that room to true end if next room execute announcement set initial button press to falseend if if this is not the initial button press do nothingend if I re-executed the announcement hoping the door station bell tone would sound again, but the Control4 code is evidently preventing a new announcement from starting while one is executing. Strangely, the room volumes are being kept and restored by the announcement code. I have no idea why Control4 didn't save and restore the mute states -- they obviously over-ride them to play the announcement in all rooms. Just one more example of Control4's lack of customer focus. ScriptWhen the FrontPorch->Door Station is pressed ? If Variables->DoorbellInitialPress is True-> Start Timer "AnnouncementDuration"-> Variables->MuteStateBar = False-> Variables->MuteStateGarage = False-> Variables->MuteStateKitchen = False-> Variables->MuteStateMBdrm = False-> Variables->MuteStateMBath = False-> Variables->MuteStatePatio = False? If Room Bar Mute is TRUE-> Variables->MuteStateBar = True? If Room Garage Mute is TRUE-> Variables->MuteStateGarage = True? If Room Kitchen Mute is TRUE-> Variables->MuteStateKitchen = True? If Room Master Bedroom Mute is TRUE-> Variables->MuteStateMBdrm = True? If Room Master Bath Mute is TRUE-> Variables->MuteStateMBath = True? If Room Patio Mute is TRUE-> Variables->MuteStatePatio = True-> Execute Announcement "Doorbell"-> Variables->DoorbellInitialPress = False? If Variables->DoorbellInitialPress is False-> Execute Announcement "Doorbell" Last bit of programming -- when the announcement duration timer expires, for all your rooms which were muted, re-mute them. The announcement event leaves them all unmuted. Finally, reset the DoorbellInitialPress to true, ready for the next doorbell button press and announcement event. ScriptWhen Timer "AnnouncementDuration" expires? If Variables->MuteStateBar is True-> Send command "Mute on" to Bar? If Variables->MuteStateGarage is True-> Send command "Mute on" to Garage? If Variables->MuteStateKitchen is True-> Send command "Mute on" to Kitchen? If Variables->MuteStateMBdrm is True-> Send command "Mute on" to Master Bedroom? If Variables->MuteStateMBath is True-> Send command "Mute on" to Master Bath? If Variables->MuteStatePatio is True-> Send command "Mute on" to Patio I hope this solves some pain and encourages others to post their own clever code examples. -T Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.