{"id":6476,"date":"2011-12-25T19:41:54","date_gmt":"2011-12-26T00:41:54","guid":{"rendered":"http:\/\/www.schollnick.net\/wordpress\/?page_id=6476"},"modified":"2013-09-06T08:50:23","modified_gmt":"2013-09-06T12:50:23","slug":"switchboard","status":"publish","type":"page","link":"http:\/\/www.schollnick.net\/wordpress\/home-automation\/indigo-v5-plugins\/switchboard\/","title":{"rendered":"Switchboard"},"content":{"rendered":"<table>\n<tbody>\n<tr>\n<td>[toc=&#8221;2,3,4&#8243; title=&#8221;Table of contents&#8221;]<\/td>\n<td align=\"right\">Donate to help continue<br \/>\nthe development<br \/>\nof Switchboard<br \/>\n[paypal-donation purpose=&#8221;Software Donation&#8221; reference=&#8221;Switchboard&#8221;]<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>The name change is due to the show the difference in the product. \u00c2\u00a0Switchboard monitors the other devices, and , and dispatches new commands as needed.Switchboard is an evolutionary replacement of the Indigo Security Script.<\/p>\n<p>The previous &#8220;generation&#8221; of security script had a much more limited ability to monitor devices, it could only watch Security sensors (e.g. DS10A, Big Red Button, Triggerlincs, etc).<\/p>\n<p>Switchboard changes this. \u00c2\u00a0It treats all devices the same, so you can check non-security devices, as well security devices&#8230; \u00c2\u00a0This allows you to simply to check your door sensors, as with the v4 Security Script, but now you can also watch your bedroom lights, or anything else in Indigo&#8217;s database.<\/p>\n<p>Yes, some of this can already be done in Indigo by making a trigger action&#8230; \u00c2\u00a0But Switchboard goes beyond this functionality.<\/p>\n<h2>What does Switchboard add to Indigo?<\/h2>\n<ul>\n<li>Selectively monitor X10 and\/or Insteon Traffic (for plugin purposes.)<\/li>\n<li>Monitored Device Groups<\/li>\n<li>Timed Device Profiles<\/li>\n<li>Monitored X10 Security Devices<\/li>\n<li>X10 Security Center (Work in Progress)<\/li>\n<\/ul>\n<hr \/>\n<div><img loading=\"lazy\" class=\"alignright\" title=\"Monitored_Device_Group_Example\" alt=\"\" src=\"http:\/\/www.schollnick.net\/wordpress\/wp-content\/uploads\/2011\/12\/Monitored_Device_Group_Example-382x600.png\" width=\"382\" height=\"600\" \/><\/div>\n<div>\n<h2>Monitored Device Groups<\/h2>\n<p>Switchboard will handle most of the dispatching of tasks, based on the Monitored Device Groups&#8230; You assigned your Devices\u00c2\u00a0to a group, generally based on a common task.<\/p>\n<p>For example, Exterior Doors&#8230;<\/p>\n<p>A Monitored Devices group is a label or concept that can be applied to devices to allow them to be grouped together. \u00c2\u00a0It is an easy way to organize the task, and not have to re-enter the same data multiple times&#8230;<\/p>\n<p>The proper use of Switchboard&#8217;s Timed Device Support, and Action Group Support, greatly helps reduce the need for Indigo triggers&#8230; \u00c2\u00a0Since many of these rules will be self-processed by Switchboard.<\/p>\n<div>The Monitored Device Group is the conceptual backbone of the plugin.<\/div>\n<\/div>\n<div><\/div>\n<div><strong>To make a Monitored Device Group, make a new device:<\/strong>Type &#8211; Plugin<br \/>\nPlugin &#8211; Switchboard<br \/>\nModel &#8211; Monitored Device Group<\/div>\n<div>\u00c2\u00a0Each Monitored Device Group represents\u00c2\u00a0area, region, or just simply a bunch of devices to be monitored. \u00c2\u00a0Some Examples are Exterior doors, Garage Door Entrance, or Basement Water Monitors.<\/div>\n<div>\n<ul>\n<li><strong>Registered Devices for this Group<\/strong>\u00c2\u00a0contains the devices that are associated with this Monitored Group. \u00c2\u00a0When a registered device is detected, any Timed Devices or associated Action Groups will be triggered.<\/li>\n<li><strong>Turn on Timed Device Support<\/strong>, will automatically trigger an associated Timed Device<\/li>\n<li><strong>Turn on Action Group Support<\/strong>, takes the type of action (e.g. Open, Closed, TurnOn, TurnOff, etc) and will run an action group that you designated in the text field and append the action to the Action Group name. \u00c2\u00a0For example, if the Action Group name is &#8220;Kitchen&#8221;, when a door sensor is opened, it would attempt to run the &#8220;Kitchen_Open&#8221; Action Group.<\/li>\n<\/ul>\n<div>The important difference between indigo&#8217;s triggers, and this, is that the plugin will automatically launch the multiple action groups. \u00c2\u00a0There is no need to create multiple triggers for the Monitored Devices.<\/div>\n<div><\/div>\n<div>The current list of actions that are recognized, and the Action Group names, are:<\/div>\n<div>\n<ul>\n<li>On \u00c2\u00a0 \u00c2\u00a0 \u00c2\u00a0 \u00c2\u00a0 \u00c2\u00a0 (XYZ_On)<\/li>\n<li>Off\u00c2\u00a0 \u00c2\u00a0 \u00c2\u00a0 \u00c2\u00a0 \u00c2\u00a0 \u00c2\u00a0(XYZ_Off)<\/li>\n<li>Open\u00c2\u00a0 \u00c2\u00a0 \u00c2\u00a0 \u00c2\u00a0(XYZ_Open)<\/li>\n<li>Closed\u00c2\u00a0 \u00c2\u00a0 \u00c2\u00a0(XYZ_Closed)<\/li>\n<li>Armed\u00c2\u00a0 \u00c2\u00a0 \u00c2\u00a0(XYZ_Armed)<\/li>\n<li>Disarm\u00c2\u00a0 \u00c2\u00a0 (XYZ_Disarm)<\/li>\n<li>Panic\u00c2\u00a0 \u00c2\u00a0 \u00c2\u00a0 \u00c2\u00a0(XYZ_Panic)<\/li>\n<li>LightsOn \u00c2\u00a0 \u00c2\u00a0(XYZ_LightsOn)<\/li>\n<li>LightsOff\u00c2\u00a0\u00c2\u00a0 \u00c2\u00a0 \u00c2\u00a0(XYZ_LightsOff)<\/li>\n<\/ul>\n<\/div>\n<div>\n<div>\n<div>\n<div>\n<div>\n<div><\/div>\n<div>Please keep in mind, that the Action Group suffix is Case Sensitive (XYZ_LightsOff is not the same as XYZ_LiGhTsOff).<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<ul>\n<li><strong>Turn On Email Support<\/strong>, will email the comma separated list of email addresses, when a device in the Monitored Group is triggered. \u00c2\u00a0You can set it to only email when &#8220;Opened&#8221; or &#8220;Closed&#8221;.<\/li>\n<li><strong>Turn on Speech Support<\/strong>, will speak the text when a device in the Monitored Group is triggered. \u00c2\u00a0You can restrict this to happening only on a Open or Closed triggering event.<\/li>\n<\/ul>\n<\/div>\n<div>Once these Settings are created for the Monitored Group, the plugin will start monitoring the Insteon and\/or X10 traffic for these devices.<\/div>\n<div><\/div>\n<div><\/div>\n<hr \/>\n<div>\n<h2><img loading=\"lazy\" class=\"alignright\" title=\"Timed Profile example\" alt=\"\" src=\"http:\/\/www.schollnick.net\/wordpress\/wp-content\/uploads\/2011\/12\/Timed-Profile-example-411x600.png\" width=\"411\" height=\"600\" \/>Timed Profiles&#8230;.<\/h2>\n<p><strong>To make a Timed Profile, make a new device:<\/strong><\/p>\n<p>Type &#8211; Plugin<br \/>\nPlugin &#8211; Switchboard<br \/>\nModel &#8211; Timed Profile<\/p>\n<p>And then enable it in the Monitored Device Group, that you wish to have trigger the Timed Profile.<\/p>\n<p>Another important feature are Timed Profiles. \u00c2\u00a0A timed profile contains the custom settings for a device already defined in Indigo. \u00c2\u00a0The concept behind the Timed Profiles is that you may want to setup a device to automatically turn on &amp; off when triggered. \u00c2\u00a0The Timed Profiles allow selective control on the device, so that it is only triggered when Activated, or De-Activated.Once again, this allows more complex arrangements then the standard trigger actions will allow, but without some of the complicity.<strong>Activate this Device When this Profile is used<\/strong>, indicates which device you will be controlling with this Profile.<strong>After the device is activated, do not activate again for<\/strong>, allow you to prevent the device from being triggered, to rapidly. \u00c2\u00a0For example, a Door Sensor set to trigger a door chime, would probably not want to be set for Always Activate. \u00c2\u00a0Why? \u00c2\u00a0Simply due to how often the door is triggered. \u00c2\u00a0If the chime is being set off every other minute, that will quickly get on someone&#8217;s nerves. \u00c2\u00a0So you can simply set the profile to only allow it to be activated again after XX minutes.Your options are:<\/p>\n<ul>\n<li>Always Activate<\/li>\n<li>Activate again after 1 minute<\/li>\n<li>Activate again after 2 minutes<\/li>\n<li>Activate again after 5 minutes<\/li>\n<li>Activate again\u00c2\u00a0after 7 minutes<\/li>\n<li>Activate again\u00c2\u00a0after 10 minutes<\/li>\n<li>Activate again\u00c2\u00a0after 15 minutes<\/li>\n<li>Activate again\u00c2\u00a0after 30 minutes<\/li>\n<li>Activate again\u00c2\u00a0after 1 hour<\/li>\n<li>Activate again\u00c2\u00a0After 5 Hours<\/li>\n<li>Activate again\u00c2\u00a0after 1 Day<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<div><strong>Turn the Device on for<\/strong>, allows you to automatically configure this profile to shut the device off after a certain time. \u00c2\u00a0Your options are:<\/div>\n<div>\n<ul>\n<li>10 Seconds<\/li>\n<li>15 Seconds<\/li>\n<li>30 Seconds<\/li>\n<li>1 Minute<\/li>\n<li>2 Minutes<\/li>\n<li>5 Minutes<\/li>\n<li>7 Minutes<\/li>\n<li>10 Minutes<\/li>\n<li>15 Minutes<\/li>\n<li>30 Minutes<\/li>\n<li>1 Hour<\/li>\n<li>5 Hours<\/li>\n<li>1 Day<\/li>\n<\/ul>\n<\/div>\n<p><strong>Controlling Variables<\/strong>, is another feature that evolved from one built into the security script. \u00c2\u00a0The security script allow the Door Chime feature to be overridden by a variable (&#8220;SoundChime&#8221;). \u00c2\u00a0\u00c2\u00a0If set to False, it would prevent the door chime from being used, even if the script was set to use it. \u00c2\u00a0(I used the feature to have a &#8220;Quiet&#8221; way to leave the house, since the variable would be reset a minute later.)<\/p>\n<p>Controlling Variables gives you a similar feature, but without hard coding the variables. \u00c2\u00a0If the variable you choose is changed to False, then the Timed Action will not occur. \u00c2\u00a0If the variable is true, then the Timed Action will occur.<\/p>\n<p>For example, the chime for the exterior doors in my house, is set to turn on the X10 Chime. \u00c2\u00a0Do not activate again for 3 minutes is set, and the Controlling Variable is &#8220;SoundChime&#8221;. \u00c2\u00a0Along with that, it is set to Selectively be controlled on Activation Only.<\/p>\n<p><strong>The Selective Controls<\/strong>, will restrict the Timed Device to only activate when an Activation (e.g. Open, Sensor Opened, etc) or De-Activation (e.g. Closed, Sensor Closed, etc) \u00c2\u00a0is detected.<\/p>\n<p>A good example, is for a door or window sensor, you may only want an Alert (e.g. Door Chime) to activate when the door is opened.<\/p>\n<\/div>\n<div>\n<hr \/>\n<p><img loading=\"lazy\" class=\"alignright\" style=\"border-style: initial; border-color: initial; float: right; border-width: 0px;\" title=\"X10 Monitored Device Example\" alt=\"\" src=\"http:\/\/www.schollnick.net\/wordpress\/wp-content\/uploads\/2011\/12\/X10-Monitored-Device-Example.png\" width=\"475\" height=\"437\" \/><\/p>\n<h2>Monitored X10 Devices<\/h2>\n<p><strong><\/strong><strong>To make a Monitored X10 Device, make a new device:<\/strong><\/p>\n<p>Type &#8211; Plugin<br \/>\nPlugin &#8211; Switchboard<br \/>\nModel &#8211; X10 Monitored Device<\/p>\n<p>Then Add the X10 Device into whatever Monitored Device Group you wish it to be associated with.<\/p>\n<p>The next major improvement with Switchboard, is the Addition of Monitored X10 Devices. \u00c2\u00a0The main intent is to allow X10 Security devices to be first class citizens in Indigo&#8217;s database, since Indigo does not directly support X10 Security devices.<\/p>\n<p>Before this plugin, X10 Security devices needed to use an Applescript attachment script (for Indigo v4 or less). \u00c2\u00a0In Indigo v5, X10 data is available to Python plugins written specifically for that purpose.<\/p>\n<\/div>\n<p>To monitor a specific X10 Security Sensor,\u00c2\u00a0Open a new device dialog window, and choose the Switchboard Plugin for the Type, and X10 Monitored Device for Model. \u00c2\u00a0Click on Edit Device Settings, and Enter in the X10 Security Code (Security ID). \u00c2\u00a0Then Add the X10 Device into whatever Monitored Device Group you wish it to be associated with.<\/p>\n<p><strong>The X10 Devices can be monitored without a Monitored Device Group, but you then need to make custom triggers for those sensors, instead of using the built-in tools in the Monitored Device Groups.<\/strong><\/p>\n<p>&nbsp;<\/p>\n<h2>Monitored Insteon Devices<\/h2>\n<p>To monitor a Insteon Device, you will create a Monitored Device Group, and add that particular Insteon Device to the Monitored Device Group.<\/p>\n<p>&nbsp;<\/p>\n<div>\n<h2>Questions &amp; Answers<\/h2>\n<\/div>\n<p><strong>Isn&#8217;t this just something that Indigo triggers and Action Groups can do?<\/strong><\/p>\n<blockquote>\n<p style=\"padding-left: 30px;\"><strong><\/strong>This one I&#8217;m not following very well. Seems to me like again what you want is to provide a custom action that starts some action, part of it&#8217;s config would be to specify a duration. That way, the action can be used in any trigger\/schedule. Maybe it&#8217;s multiple actions depending on what needs to happen during the activated period. It&#8217;s possible I&#8217;m just not getting what you&#8217;re trying to accomplish here though. You&#8217;ll definitely want to provide separate actions to cancel a currently in progress action.<\/p>\n<\/blockquote>\n<p style=\"padding-left: 30px;\">Once again, remember, that this is a generalization and expansion of the Security script.<\/p>\n<p style=\"padding-left: 30px;\">Let&#8217;s say a door opens, and you want to be alerted. The security script could activate a &#8220;Chime&#8221; and turn it on for a set amount of time. \u00c2\u00a0Switchboard allows any Insteon \/ X10 device that is in Indigo&#8217;s database to be used, as the trigger.<\/p>\n<p style=\"padding-left: 30px;\">The most obvious choice is that if DOOR X is opened, activate the Hallway light for 7 minutes, and then automatically turn it off. Yes, you could customize a trigger to do this, but the entire idea of the Switchboard \/ Security script is that you don&#8217;t need to make triggers, the plugin or script handles it for you. You just need to tell the script \/ plugin what it should do.<\/p>\n<p style=\"padding-left: 30px;\">Yes a trigger can automatically turn off the device, but then you need to know what trigger to update if you change it. With Switchboard, you are making a &#8220;Timed Profile&#8221;, that contains the information on what Device you wish to control, and for how long to keep the device on for, and how often the device should be triggered.<\/p>\n<p style=\"padding-left: 30px;\">How Often the device should be triggered, you are asking? Yes, remember, this has evolved from the Security script. A Door alarm chime, if it went off every single time might become annoying. It can be set to Every Time, or to ignore requests for the next X Seconds\/Minutes&#8230;. <strong>This can&#8217;t be done with plain triggers<\/strong>&#8230;.<\/p>\n<p style=\"padding-left: 30px;\"><em>Yes, there is some duplication of features (e.g. Triggers) between Switchboard and the built-in Trigger functionality in Indigo. And yes, <span style=\"text-decoration: underline;\">if the user wanted to set down and write a ton of triggers the functionality could be duplicated without the plugin.<\/span><\/em><\/p>\n<p style=\"padding-left: 30px;\">But consider a real world comparison that will highlight the difference between the Indigo (Native way) and using Switchboard.<\/p>\n<p style=\"padding-left: 30px;\">If you were to try to duplicate Switchboard&#8217;s ability, you would need to create at least 2 (or more) triggers for each device you wanted to monitor. Of course, that number will vary, depending on what statuses the device can generate. This means at least 2 (On &amp; Off), but other statuses are possible (e.g. Panic, Alarm Armed, Alarm Disarmed, All Lights Off, All Lights On, etc). For each status that you want to monitor, that another 2 triggers.<\/p>\n<p style=\"padding-left: 30px;\">Let&#8217;s say that we are going to monitor 6 devices, and let&#8217;s simplify the scenario, and say they are ApplianceLincs&#8230; That&#8217;s 12 triggers to that you would need to create, and maintain. If it&#8217;s a LampLinc, that&#8217;s at least 24 triggers (On \/ Off \/ All Lights On \/ All Lights Off)&#8230;And don&#8217;t forget creating at least two action groups (On \/ Off), that you will associate with those triggers.<\/p>\n<p style=\"padding-left: 30px;\">This plugin would need a single MonitoredDeviceGroup, the 6 devices would be added to the device group&#8230;. Assuming they are Insteon devices, you wouldn&#8217;t even need to create a &#8220;special&#8221; device, you would just enroll the 6 devices from the Indigo Device List. Click On the Use Action Group Check box, and type in the root name of the Action Group. You would just need to type the Action Group root name in once&#8230;<\/p>\n<h2>Downloads<\/h2>\n<p><a href=\"http:\/\/www.perceptiveautomation.com\/userforum\/viewtopic.php?f=33&amp;t=8804\" target=\"_blank\">Click here to see plugin download links.<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>[toc=&#8221;2,3,4&#8243; title=&#8221;Table of contents&#8221;] Donate to help continue the development of Switchboard [paypal-donation purpose=&#8221;Software Donation&#8221; reference=&#8221;Switchboard&#8221;] The name change is due to the show the difference in the product. \u00c2\u00a0Switchboard monitors the other devices, and , and dispatches new commands as needed.Switchboard is an evolutionary replacement of the Indigo Security Script. The previous &#8220;generation&#8221; of <a class=\"read-more\" href=\"http:\/\/www.schollnick.net\/wordpress\/home-automation\/indigo-v5-plugins\/switchboard\/\">[&hellip;]<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"parent":6849,"menu_order":22,"comment_status":"open","ping_status":"closed","template":"","meta":{"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0},"_links":{"self":[{"href":"http:\/\/www.schollnick.net\/wordpress\/wp-json\/wp\/v2\/pages\/6476"}],"collection":[{"href":"http:\/\/www.schollnick.net\/wordpress\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"http:\/\/www.schollnick.net\/wordpress\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"http:\/\/www.schollnick.net\/wordpress\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/www.schollnick.net\/wordpress\/wp-json\/wp\/v2\/comments?post=6476"}],"version-history":[{"count":0,"href":"http:\/\/www.schollnick.net\/wordpress\/wp-json\/wp\/v2\/pages\/6476\/revisions"}],"up":[{"embeddable":true,"href":"http:\/\/www.schollnick.net\/wordpress\/wp-json\/wp\/v2\/pages\/6849"}],"wp:attachment":[{"href":"http:\/\/www.schollnick.net\/wordpress\/wp-json\/wp\/v2\/media?parent=6476"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}<!-- WP Super Cache is installed but broken. The constant WPCACHEHOME must be set in the file wp-config.php and point at the WP Super Cache plugin directory. -->