Rev 1646 | Rev 1649 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | SVN | RSS feed
| Rev 1646 | Rev 1647 | ||
|---|---|---|---|
| Line 1... | Line 1... | ||
| 1 | 1 | ||
| 2 |
|
2 | Serial_ModuleNames = [ "Serial" ]; |
| 3 | Serial_Aliases = function() { return Module_GetAliasNames( |
3 | Serial_Aliases = function() { return Module_GetAliasNames(Serial_ModuleNames); }; |
| 4 | Serial_AvailableIds = function() { return Module_GetAvailableIds( |
4 | Serial_AvailableIds = function() { return Module_GetAvailableIds(Serial_ModuleNames); }; |
| 5 | 5 | ||
| 6 | function |
6 | function Serial_Configure(alias_name) |
| - | 7 | { |
|
| - | 8 | if (arguments.length < 1) |
|
| 7 | { |
9 | { |
| 8 | var aliases_data = {}; |
- | |
| 9 | - | ||
| 10 | aliases_data = Module_LookupAliases({ |
- | |
| 11 | " |
10 | Log("\033[31;1mNot enough parameters given.\033[0m\n"); |
| 12 | "module_id" : module_id |
- | |
| 13 | }); |
- | |
| 14 | - | ||
| 15 | return |
11 | return false; |
| 16 | } |
- | |
| 17 | Module_RegisterMessageAliasLookup(Serial_ModuleName, Serial_MessageAliasLookup); |
- | |
| 18 | - | ||
| 19 | function Serial_CreateAlias(alias_name, module_id, channel) |
- | |
| 20 | { |
- | |
| 21 | var alias_data = { |
- | |
| 22 | "group" : false, |
- | |
| 23 | "name" : alias_name, |
- | |
| 24 | "module_name" : Serial_ModuleName, |
- | |
| 25 | "module_id" : module_id |
- | |
| 26 | }; |
- | |
| 27 | - | ||
| 28 | return Storage_SetParameter("alias", alias_name, JSON.stringify(alias_data)); |
- | |
| 29 | } |
12 | } |
| 30 | Console_RegisterCommand(Serial_CreateAlias, function(args) { return Console_StandardAutocomplete(args, Serial_Aliases(), Serial_AvailableIds()); }); |
- | |
| 31 | - | ||
| 32 | - | ||
| 33 | function Serial_Configure(alias_name) |
- | |
| 34 | { |
- | |
| 35 | if (arguments.length < 1) |
- | |
| 36 | { |
- | |
| 37 | throw("Not enought parameters given"); |
- | |
| 38 | } |
- | |
| 39 | 13 | ||
| 40 | var result_text = ""; |
- | |
| 41 | var aliases_data = Module_ResolveAlias(alias_name, |
14 | var aliases_data = Module_ResolveAlias(alias_name, Serial_ModuleNames); |
| - | 15 | var found = false; |
|
| 42 | 16 | ||
| 43 | for (var name in aliases_data) |
17 | for (var name in aliases_data) |
| 44 | { |
18 | { |
| 45 | var variables = { |
19 | var variables = { |
| 46 |
|
20 | "BaudRate" : 9600, |
| 47 | "PhysicalFormat" : "RS232", |
21 | "PhysicalFormat" : "RS232", |
| 48 |
|
22 | "DataBits" : 8, |
| 49 |
|
23 | "StopBits" : 1, |
| 50 | " |
24 | "Parity" : "ParityNone" }; |
| 51 | }; |
- | |
| 52 | 25 | ||
| 53 | if (Module_SendMessage(aliases_data[name]["module_name"], aliases_data[name]["module_id"], "SerialConfig", variables)) |
26 | if (Module_SendMessage(aliases_data[name]["module_name"], aliases_data[name]["module_id"], "SerialConfig", variables)) |
| 54 | { |
27 | { |
| 55 |
|
28 | Log("\033[32;1mCommand sent successfully to " + name + ".\033[0m\n"); |
| 56 | } |
29 | } |
| 57 | else |
30 | else |
| 58 | { |
31 | { |
| 59 |
|
32 | Log("\033[31;1mFailed to send command to " + name + ".\033[0m\n"); |
| 60 | } |
33 | } |
| - | 34 | ||
| - | 35 | found = true; |
|
| 61 | } |
36 | } |
| 62 | 37 | ||
| 63 | if ( |
38 | if (!found) |
| 64 | { |
39 | { |
| 65 |
|
40 | Log("\033[31;1mNo aliases by the name " + alias_name + " were applicable for this command.\033[0m\n"); |
| - | 41 | return false; |
|
| 66 | } |
42 | } |
| 67 | 43 | ||
| 68 | return |
44 | return true; |
| 69 | } |
45 | } |
| 70 | Console_RegisterCommand(Serial_Configure, function(args) |
46 | Console_RegisterCommand(Serial_Configure, function(arg_index, args) { return Console_StandardAutocomplete(arg_index, args, Serial_Aliases()); }); |
| 71 | 47 | ||
| 72 | function Serial_Send(alias_name) |
48 | function Serial_Send(alias_name) |
| 73 | { |
49 | { |
| 74 | if (arguments.length < 1) |
50 | if (arguments.length < 1) |
| 75 | { |
51 | { |
| 76 |
|
52 | Log("\033[31;1mNot enough parameters given.\033[0m\n"); |
| - | 53 | return false; |
|
| 77 | } |
54 | } |
| 78 | 55 | ||
| 79 | var data = ""; |
56 | var data = ""; |
| 80 | 57 | ||
| 81 | for (var n = 1; n < arguments.length; n++) |
58 | for (var n = 1; n < arguments.length; n++) |
| 82 | { |
59 | { |
| 83 | data += arguments[n] + " "; |
60 | data += arguments[n] + " "; |
| 84 | } |
61 | } |
| 85 | 62 | ||
| 86 | data = data.trim(" ") + "\r"; |
63 | data = data.trim(" ") + "\r"; |
| 87 | 64 | ||
| 88 | var result_text = ""; |
- | |
| 89 | var aliases_data = Module_ResolveAlias(alias_name, |
65 | var aliases_data = Module_ResolveAlias(alias_name, Serial_ModuleNames); |
| - | 66 | var found = false; |
|
| 90 | 67 | ||
| 91 | for (var name in aliases_data) |
68 | for (var name in aliases_data) |
| 92 | { |
69 | { |
| 93 | var variables = { |
70 | var variables = { |
| 94 |
|
71 | "Text" : data }; |
| 95 | }; |
- | |
| 96 | 72 | ||
| 97 | if (Module_SendMessage(aliases_data[name]["module_name"], aliases_data[name]["module_id"], "SerialData", variables)) |
73 | if (Module_SendMessage(aliases_data[name]["module_name"], aliases_data[name]["module_id"], "SerialData", variables)) |
| 98 | { |
74 | { |
| 99 |
|
75 | Log("\033[32;1mCommand sent successfully to " + name + ".\033[0m\n"); |
| 100 | } |
76 | } |
| 101 | else |
77 | else |
| 102 | { |
78 | { |
| 103 |
|
79 | Log("\033[31;1mFailed to send command to " + name + ".\033[0m\n"); |
| 104 | } |
80 | } |
| - | 81 | ||
| - | 82 | found = true; |
|
| 105 | } |
83 | } |
| 106 | 84 | ||
| 107 | if ( |
85 | if (!found) |
| 108 | { |
86 | { |
| 109 |
|
87 | Log("\033[31;1mNo aliases by the name " + alias_name + " were applicable for this command.\033[0m\n"); |
| - | 88 | return false; |
|
| 110 | } |
89 | } |
| 111 | 90 | ||
| 112 | return |
91 | return true; |
| 113 | } |
92 | } |
| 114 | Console_RegisterCommand(Serial_Send, function(args) |
93 | Console_RegisterCommand(Serial_Send, function(arg_index, args) { return Console_StandardAutocomplete(arg_index, args, Serial_Aliases()); }); |
| 115 | 94 | ||