Subversion Repositories HomeAutomation

Rev

Rev 1647 | Only display areas with differences | Regard whitespace | Details | Blame | Last modification | View Log | SVN | RSS feed

Rev 1647 Rev 1649
1
 
1
 
2
Serial_ModuleNames    = [ "Serial" ];
2
Serial_ModuleNames    = [ "Serial" ];
3
Serial_Aliases        = function() { return Module_GetAliasNames(Serial_ModuleNames); };
3
Serial_Aliases        = function() { return Module_GetAliasNames(Serial_ModuleNames); };
4
Serial_AvailableIds   = function() { return Module_GetAvailableIds(Serial_ModuleNames); };
4
Serial_AvailableIds   = function() { return Module_GetAvailableIds(Serial_ModuleNames); };
5
 
5
 
6
function Serial_Configure(alias_name)
6
function Serial_Configure(alias_name)
7
{
7
{
8
    if (arguments.length < 1)
8
    if (arguments.length < 1)
9
    {
9
    {
10
        Log("\033[31;1mNot enough parameters given.\033[0m\n");
10
        Log("\033[31mNot enough parameters given.\033[0m\n");
11
        return false;
11
        return false;
12
    }
12
    }
13
   
13
   
14
    var aliases_data = Module_ResolveAlias(alias_name, Serial_ModuleNames);
14
    var aliases_data = Module_ResolveAlias(alias_name, Serial_ModuleNames);
15
    var found = false;
15
    var found = false;
16
   
16
   
17
    for (var name in aliases_data)
17
    for (var name in aliases_data)
18
    {
18
    {
19
        var variables = {
19
        var variables = {
20
        "BaudRate"       : 9600,
20
        "BaudRate"       : 9600,
21
        "PhysicalFormat" : "RS232",
21
        "PhysicalFormat" : "RS232",
22
        "DataBits"       : 8,
22
        "DataBits"       : 8,
23
        "StopBits"       : 1,
23
        "StopBits"       : 1,
24
        "Parity"         : "ParityNone" };
24
        "Parity"         : "ParityNone" };
25
           
25
           
26
        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))
27
        {
27
        {
28
            Log("\033[32;1mCommand sent successfully to " + name + ".\033[0m\n");
28
            Log("\033[32mCommand sent successfully to " + name + ".\033[0m\n");
29
        }
29
        }
30
        else
30
        else
31
        {
31
        {
32
            Log("\033[31;1mFailed to send command to " + name + ".\033[0m\n");
32
            Log("\033[31mFailed to send command to " + name + ".\033[0m\n");
33
        }
33
        }
34
       
34
       
35
        found = true;
35
        found = true;
36
    }
36
    }
37
   
37
   
38
    if (!found)
38
    if (!found)
39
    {
39
    {
40
        Log("\033[31;1mNo aliases by the name " + alias_name + " were applicable for this command.\033[0m\n");
40
        Log("\033[31mNo aliases by the name " + alias_name + " were applicable for this command.\033[0m\n");
41
        return false;
41
        return false;
42
    }
42
    }
43
   
43
   
44
    return true;
44
    return true;
45
}
45
}
46
Console_RegisterCommand(Serial_Configure, function(arg_index, args) { return Console_StandardAutocomplete(arg_index, args, Serial_Aliases()); });
46
Console_RegisterCommand(Serial_Configure, function(arg_index, args) { return Console_StandardAutocomplete(arg_index, args, Serial_Aliases()); });
47
 
47
 
48
function Serial_Send(alias_name)
48
function Serial_Send(alias_name)
49
{
49
{
50
    if (arguments.length < 1)
50
    if (arguments.length < 1)
51
    {
51
    {
52
        Log("\033[31;1mNot enough parameters given.\033[0m\n");
52
        Log("\033[31mNot enough parameters given.\033[0m\n");
53
        return false;
53
        return false;
54
    }
54
    }
55
   
55
   
56
    var data = "";
56
    var data = "";
57
   
57
   
58
    for (var n = 1; n < arguments.length; n++)
58
    for (var n = 1; n < arguments.length; n++)
59
    {
59
    {
60
      data += arguments[n] + " ";
60
      data += arguments[n] + " ";
61
    }
61
    }
62
   
62
   
63
    data = data.trim(" ") + "\r";
63
    data = data.trim(" ") + "\r";
64
   
64
   
65
    var aliases_data = Module_ResolveAlias(alias_name, Serial_ModuleNames);
65
    var aliases_data = Module_ResolveAlias(alias_name, Serial_ModuleNames);
66
    var found = false;
66
    var found = false;
67
   
67
   
68
    for (var name in aliases_data)
68
    for (var name in aliases_data)
69
    {
69
    {
70
        var variables = {
70
        var variables = {
71
        "Text"  : data };
71
        "Text"  : data };
72
       
72
       
73
        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))
74
        {
74
        {
75
            Log("\033[32;1mCommand sent successfully to " + name + ".\033[0m\n");
75
            Log("\033[32mCommand sent successfully to " + name + ".\033[0m\n");
76
        }
76
        }
77
        else
77
        else
78
        {
78
        {
79
            Log("\033[31;1mFailed to send command to " + name + ".\033[0m\n");
79
            Log("\033[31mFailed to send command to " + name + ".\033[0m\n");
80
        }
80
        }
81
       
81
       
82
        found = true;
82
        found = true;
83
    }
83
    }
84
   
84
   
85
    if (!found)
85
    if (!found)
86
    {
86
    {
87
        Log("\033[31;1mNo aliases by the name " + alias_name + " were applicable for this command.\033[0m\n");
87
        Log("\033[31mNo aliases by the name " + alias_name + " were applicable for this command.\033[0m\n");
88
        return false;
88
        return false;
89
    }
89
    }
90
   
90
   
91
    return true;
91
    return true;
92
}
92
}
93
Console_RegisterCommand(Serial_Send, function(arg_index, args) { return Console_StandardAutocomplete(arg_index, args, Serial_Aliases()); });
93
Console_RegisterCommand(Serial_Send, function(arg_index, args) { return Console_StandardAutocomplete(arg_index, args, Serial_Aliases()); });
94
 
94
 
95
 
95