Subversion Repositories HomeAutomation

Rev

Details | Last modification | View Log | SVN | RSS feed

Rev Author Line No. Line
1603 runge 1
 
2
var dimmer_module = GetModule("Dimmer230");
3
var ir_module = GetModule("irReceive");
4
 
5
function test_press(event, id, channel, data, protocol)
6
{
7
    if (protocol == "NEC" && data == 3877174275)
8
    {
1609 runge 9
        Dimmer230_StartFade(2, 0, 135, "Increase");
10
        Dimmer230_StartFade(1, 0, 135, "Increase");
1603 runge 11
    }
12
    else if (protocol == "NEC" && data == 3860462595)
13
    {
1609 runge 14
        Dimmer230_StartFade(2, 0, 135, "Decrease");
15
        Dimmer230_StartFade(1, 0, 135, "Decrease");
1603 runge 16
    }
17
}
18
 
19
function test_release(event, id, channel, data, protocol)
20
{
21
    if (protocol == "NEC" && (data == 3877174275 || data == 3860462595))
22
    {
1609 runge 23
        Dimmer230_StopFade(2, 0);
1603 runge 24
    }
25
}
26
 
27
function test_status(event, id, available)
28
{
1610 runge 29
    //Log("status change!");
1603 runge 30
}
31
 
32
ir_module.Bind("onStatusChange", test_status);
33
ir_module.Bind("onPressed", test_press);
34
ir_module.Bind("onReleased", test_release);
35
 
1608 runge 36
 
1614 runge 37
CreateModuleAlias("bardisk", "Dimmer230", 2, { "channel" : 0 });
38
CreateModuleAlias("bokhylla", "Dimmer230", 1, { "channel" : 0 });
39
CreateModuleAliasGroup("vardagsrum", [ "bokhylla", "bardisk" ]);
1608 runge 40
 
1614 runge 41
 
42
function fadeto(alias, level, speed)
43
{
44
    if (typeof module_aliases[alias] == 'undefined')
45
    {
46
        return "No such module name found";
47
    }
48
 
49
    if (module_aliases[alias]["is_group"])
50
    {
51
        var result = "";
52
 
53
        for (var n = 0; n < module_aliases[alias]["aliases"].length; n++)
54
        {
55
            result += fadeto(module_aliases[alias]["aliases"][n], level, speed) + "\n";
56
        }
57
 
58
        return result;
59
    }
60
 
61
    if (module_aliases[alias]["module_name"] != "Dimmer230")
62
    {
63
        return "Module type " + module_aliases[alias]["module_name"] + " is not valid for this action, valid are Dimmer230";
64
    }
65
 
66
    if (!speed)
67
    {
68
        speed = 135;
69
    }
70
 
71
    return Dimmer230_AbsoluteFade(module_aliases[alias]["module_id"], module_aliases[alias]["extra"]["channel"], speed, level);
72
}
73
 
74
RegisterConsoleCommand(fadeto, function(args) { return StandardAutocomplete(args, Dimmer230.instance_.GetAvailableNames(), [ 0, 50, 100, 150, 200, 255 ], [ 50, 135, 200, 255 ]); });