Details | Last modification | View Log | SVN | RSS feed
| Rev | Author | Line No. | Line |
|---|---|---|---|
| 1603 | runge | 1 | |
| 1644 | runge | 2 | Require("plugin/module.js"); |
| 3 | |||
| 4 | Dimmer_ModuleName = "Dimmer230"; |
||
| 5 | Dimmer_SpeedLevels = function() { return [ 50, 135, 200, 255 ]; }; |
||
| 6 | Dimmer_StrengthLevels = function() { return [ 0, 50, 100, 150, 200, 255 ]; }; |
||
| 7 | Dimmer_StepsLevels = function() { return [ 0, 10, 20, 30, 40, 50, 60, 70, 80, 90 ]; }; |
||
| 8 | Dimmer_Directions = function() { return [ "Increase", "Decrease" ]; }; |
||
| 9 | Dimmer_Channels = function() { return [ 0 ]; }; |
||
| 10 | Dimmer_Aliases = function() { return Module_GetAliasNames([ Dimmer_ModuleName ]); }; |
||
| 11 | Dimmer_AvailableIds = function() { return Module_GetAvailableIds([ Dimmer_ModuleName ]); }; |
||
| 12 | |||
| 13 | function Dimmer_MessageAliasLookup(module_id, command, variables) |
||
| 1603 | runge | 14 | { |
| 1644 | runge | 15 | var aliases_data = {}; |
| 16 | |||
| 17 | if (command == "Netinfo") |
||
| 18 | { |
||
| 19 | aliases_data = Module_LookupAliases({ |
||
| 20 | "module_name" : Dimmer_ModuleName, |
||
| 21 | "module_id" : module_id, |
||
| 22 | "channel" : channel |
||
| 23 | }); |
||
| 24 | } |
||
| 25 | |||
| 26 | return aliases_data; |
||
| 1603 | runge | 27 | } |
| 1644 | runge | 28 | Module_RegisterMessageAliasLookup(Dimmer_ModuleName, Dimmer_MessageAliasLookup); |
| 1603 | runge | 29 | |
| 1644 | runge | 30 | function Dimmer_CreateAlias(alias_name, module_id, channel) |
| 31 | { |
||
| 32 | var alias_data = { |
||
| 33 | "group" : false, |
||
| 34 | "name" : alias_name, |
||
| 35 | "module_name" : Dimmer_ModuleName, |
||
| 36 | "module_id" : module_id, |
||
| 37 | "channel" : channel |
||
| 38 | }; |
||
| 1603 | runge | 39 | |
| 1644 | runge | 40 | return Storage_SetParameter("alias", alias_name, JSON.stringify(alias_data)); |
| 41 | } |
||
| 42 | Console_RegisterCommand(Dimmer_CreateAlias, function(args) { return Console_StandardAutocomplete(args, Dimmer_Aliases(), Dimmer_AvailableIds(), Dimmer_Channels()); }); |
||
| 1609 | runge | 43 | |
| 1644 | runge | 44 | function Dimmer_StartFade(alias_name, speed, direction) |
| 1603 | runge | 45 | { |
| 1644 | runge | 46 | if (arguments.length < 3) |
| 1603 | runge | 47 | { |
| 1644 | runge | 48 | throw("Not enought parameters given"); |
| 49 | } |
||
| 50 | |||
| 51 | var result_text = ""; |
||
| 52 | var aliases_data = Module_ResolveAlias(alias_name, [ Dimmer_ModuleName ]); |
||
| 53 | |||
| 54 | for (var name in aliases_data) |
||
| 55 | { |
||
| 56 | var variables = { |
||
| 57 | "Channel" : aliases_data[name]["channel"], |
||
| 58 | "Speed" : speed, |
||
| 59 | "Direction" : direction }; |
||
| 60 | |||
| 61 | if (Module_SendMessage(aliases_data[name]["module_name"], aliases_data[name]["module_id"], "Start_Fade", variables)) |
||
| 1603 | runge | 62 | { |
| 1644 | runge | 63 | result_text += "StartFade sent successfully to " + name + "\n"; |
| 1603 | runge | 64 | } |
| 1644 | runge | 65 | else |
| 66 | { |
||
| 67 | result_text += "StartFade failed to send to " + name + "\n"; |
||
| 68 | } |
||
| 1603 | runge | 69 | } |
| 70 | |||
| 1644 | runge | 71 | if (result_text.length == 0) |
| 72 | { |
||
| 73 | result_text = "No aliases by the name " + alias_name + " were applicable to StartFade."; |
||
| 74 | } |
||
| 1603 | runge | 75 | |
| 1644 | runge | 76 | return result_text; |
| 1603 | runge | 77 | } |
| 1644 | runge | 78 | Console_RegisterCommand(Dimmer_StartFade, function(args) { return Console_StandardAutocomplete(args, Dimmer_Aliases(), Dimmer_SpeedLevels(), Dimmer_Directions()); }); |
| 1603 | runge | 79 | |
| 1644 | runge | 80 | function Dimmer_StopFade(alias_name) |
| 1603 | runge | 81 | { |
| 1644 | runge | 82 | if (arguments.length < 1) |
| 83 | { |
||
| 84 | throw("Not enought parameters given"); |
||
| 85 | } |
||
| 1603 | runge | 86 | |
| 1644 | runge | 87 | var result_text = ""; |
| 88 | var aliases_data = Module_ResolveAlias(alias_name, [ Dimmer_ModuleName ]); |
||
| 89 | |||
| 90 | for (var name in aliases_data) |
||
| 91 | { |
||
| 92 | var variables = { |
||
| 93 | "Channel" : aliases_data[name]["channel"] }; |
||
| 94 | |||
| 95 | if (Module_SendMessage(aliases_data[name]["module_name"], aliases_data[name]["module_id"], "Stop_Fade", variables)) |
||
| 96 | { |
||
| 97 | result_text += "StopFade sent successfully to " + name + "\n"; |
||
| 98 | } |
||
| 99 | else |
||
| 100 | { |
||
| 101 | result_text += "StopFade failed to send to " + name + "\n"; |
||
| 102 | } |
||
| 103 | } |
||
| 104 | |||
| 105 | if (result_text.length == 0) |
||
| 106 | { |
||
| 107 | result_text = "No aliases by the name " + alias_name + " were applicable to StopFade."; |
||
| 108 | } |
||
| 109 | |||
| 110 | return result_text; |
||
| 1603 | runge | 111 | } |
| 1644 | runge | 112 | Console_RegisterCommand(Dimmer_StopFade, function(args) { return Console_StandardAutocomplete(args, Dimmer_Aliases()); }); |
| 1603 | runge | 113 | |
| 1644 | runge | 114 | function Dimmer_AbsoluteFade(alias_name, speed, level) |
| 1603 | runge | 115 | { |
| 1644 | runge | 116 | if (arguments.length < 3) |
| 117 | { |
||
| 118 | throw("Not enought parameters given"); |
||
| 119 | } |
||
| 1603 | runge | 120 | |
| 1644 | runge | 121 | var result_text = ""; |
| 122 | var aliases_data = Module_ResolveAlias(alias_name, [ Dimmer_ModuleName ]); |
||
| 123 | |||
| 124 | for (var name in aliases_data) |
||
| 125 | { |
||
| 126 | var variables = { |
||
| 127 | "Channel" : aliases_data[name]["channel"], |
||
| 128 | "Speed" : speed, |
||
| 129 | "EndValue" : level }; |
||
| 130 | |||
| 131 | if (Module_SendMessage(aliases_data[name]["module_name"], aliases_data[name]["module_id"], "Abs_Fade", variables)) |
||
| 132 | { |
||
| 133 | result_text += "AbsolutFade sent successfully to " + name + "\n"; |
||
| 134 | } |
||
| 135 | else |
||
| 136 | { |
||
| 137 | result_text += "AbsolutFade failed to send to " + name + "\n"; |
||
| 138 | } |
||
| 139 | } |
||
| 140 | |||
| 141 | if (result_text.length == 0) |
||
| 142 | { |
||
| 143 | result_text = "No aliases by the name " + alias_name + " were applicable to AbsolutFade."; |
||
| 144 | } |
||
| 145 | |||
| 146 | return result_text; |
||
| 1603 | runge | 147 | } |
| 1644 | runge | 148 | Console_RegisterCommand(Dimmer_AbsoluteFade, function(args) { return Console_StandardAutocomplete(args, Dimmer_Aliases(), Dimmer_SpeedLevels(), Dimmer_StrengthLevels()); }); |
| 1603 | runge | 149 | |
| 1644 | runge | 150 | function Dimmer_RelativeFade(alias_name, speed, direction, steps) |
| 1603 | runge | 151 | { |
| 1644 | runge | 152 | if (arguments.length < 4) |
| 153 | { |
||
| 154 | throw("Not enought parameters given"); |
||
| 155 | } |
||
| 1603 | runge | 156 | |
| 1644 | runge | 157 | var result_text = ""; |
| 158 | var aliases_data = Module_ResolveAlias(alias_name, [ Dimmer_ModuleName ]); |
||
| 159 | |||
| 160 | for (var name in aliases_data) |
||
| 161 | { |
||
| 162 | var variables = { |
||
| 163 | "Channel" : aliases_data[name]["channel"], |
||
| 164 | "Speed" : speed, |
||
| 165 | "Direction" : direction, |
||
| 166 | "Steps" : steps }; |
||
| 167 | |||
| 168 | if (Module_SendMessage(aliases_data[name]["module_name"], aliases_data[name]["module_id"], "Rel_Fade", variables)) |
||
| 169 | { |
||
| 170 | result_text += "RelativeFade sent successfully to " + name + "\n"; |
||
| 171 | } |
||
| 172 | else |
||
| 173 | { |
||
| 174 | result_text += "RelativeFade failed to send to " + name + "\n"; |
||
| 175 | } |
||
| 176 | } |
||
| 177 | |||
| 178 | if (result_text.length == 0) |
||
| 179 | { |
||
| 180 | result_text = "No aliases by the name " + alias_name + " were applicable to RelativeFade."; |
||
| 181 | } |
||
| 182 | |||
| 183 | return result_text; |
||
| 1603 | runge | 184 | } |
| 1644 | runge | 185 | Console_RegisterCommand(Dimmer_RelativeFade, function(args) { return Console_StandardAutocomplete(args, Dimmer_Aliases(), Dimmer_SpeedLevels(), Dimmer_Directions(), Dimmer_StepsLevels()); }); |
| 1603 | runge | 186 | |
| 1644 | runge | 187 | function Dimmer_Demo(alias_name, speed, steps) |
| 1603 | runge | 188 | { |
| 1644 | runge | 189 | if (arguments.length < 3) |
| 190 | { |
||
| 191 | throw("Not enought parameters given"); |
||
| 192 | } |
||
| 1603 | runge | 193 | |
| 1644 | runge | 194 | var result_text = ""; |
| 195 | var aliases_data = Module_ResolveAlias(alias_name, [ Dimmer_ModuleName ]); |
||
| 196 | |||
| 197 | for (var name in aliases_data) |
||
| 198 | { |
||
| 199 | var variables = { |
||
| 200 | "Channel" : aliases_data[name]["channel"], |
||
| 201 | "Speed" : speed, |
||
| 202 | "Steps" : steps }; |
||
| 203 | |||
| 204 | if (Module_SendMessage(aliases_data[name]["module_name"], aliases_data[name]["module_id"], "Demo", variables)) |
||
| 205 | { |
||
| 206 | result_text += "Demo sent successfully to " + name + "\n"; |
||
| 207 | } |
||
| 208 | else |
||
| 209 | { |
||
| 210 | result_text += "Demo failed to send to " + name + "\n"; |
||
| 211 | } |
||
| 212 | } |
||
| 213 | |||
| 214 | if (result_text.length == 0) |
||
| 215 | { |
||
| 216 | result_text = "No aliases by the name " + alias_name + " were applicable to Demo."; |
||
| 217 | } |
||
| 218 | |||
| 219 | return result_text; |
||
| 1603 | runge | 220 | } |
| 1644 | runge | 221 | Console_RegisterCommand(Dimmer_Demo, function(args) { return Console_StandardAutocomplete(args, Dimmer_Aliases(), Dimmer_SpeedLevels(), Dimmer_StepsLevels()); }); |