Add remote
parent
259fefe8cc
commit
e7b9a2944e
@ -0,0 +1,25 @@
|
||||
<html>
|
||||
<head>
|
||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.0.0-beta1/jquery.min.js"></script>
|
||||
<script src="./matrix-0.4.1.min.js"></script>
|
||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/spectrum/1.8.0/spectrum.js"></script>
|
||||
<link rel="stylesheet" type="text/css" href="https://cdnjs.cloudflare.com/ajax/libs/spectrum/1.8.0/spectrum.min.css">
|
||||
<link rel="stylesheet" type="text/css" href="./style.css">
|
||||
</head>
|
||||
<body>
|
||||
<div class="buttons">
|
||||
<button onclick="setRoom(0)">pss9 Living Room</button>
|
||||
<button onclick="setRoom(1)">pss9 Bedroom</button>
|
||||
</div>
|
||||
<div id="picker">
|
||||
</div>
|
||||
<div class="buttons">
|
||||
<button onclick="setPattern('rainbow')">Rainbow</button>
|
||||
<button onclick="setPattern('off')">off</button>
|
||||
<input type="text" id="brightness" />
|
||||
<button onclick="setBrightness()">Set Brightness</button>
|
||||
</div>
|
||||
<script src="./secrets.js"></script>
|
||||
<script src="./index.js"></script>
|
||||
</body>
|
||||
</html>
|
@ -0,0 +1,80 @@
|
||||
"use strict";
|
||||
console.log("Loading Matrix sdk");
|
||||
|
||||
var client = matrixcs.createClient({
|
||||
baseUrl: hs,
|
||||
accessToken: accessToken,
|
||||
userId: uid
|
||||
});
|
||||
|
||||
|
||||
var room = rooms[0];
|
||||
var txn = 0;
|
||||
|
||||
function setRoom(inRoom) {
|
||||
room = rooms[inRoom];
|
||||
init(client);
|
||||
}
|
||||
|
||||
function setBrightness() {
|
||||
var brightness = $("#brightness").val();
|
||||
client.sendEvent(room, "m.room.message", {
|
||||
body: "!brightness " + brightness,
|
||||
msgtype: "m.text"
|
||||
}, txn);
|
||||
txn = txn + 1;
|
||||
|
||||
}
|
||||
|
||||
function setPattern(name) {
|
||||
client.sendEvent(room, "m.room.message", {
|
||||
body: name,
|
||||
msgtype: "m.text"
|
||||
}, txn);
|
||||
txn = txn + 1;
|
||||
}
|
||||
|
||||
var sendColor = function(color) {
|
||||
txn = txn + 1;
|
||||
if (txn % 3 == 0) {
|
||||
client.sendEvent(room, "org.lightrix.color", {
|
||||
color: color.toRgb()
|
||||
}, txn);
|
||||
}
|
||||
}
|
||||
|
||||
var init = function(client) {
|
||||
client.getStateEvent(room, "org.lightrix.pattern", "", function(err, resp) {
|
||||
var colorState;
|
||||
if(err) {
|
||||
var colorState = 255;
|
||||
} else {
|
||||
console.log(resp)
|
||||
var colorState = resp.state[0];
|
||||
}
|
||||
|
||||
$("#picker").spectrum({
|
||||
flat: true,
|
||||
color: pad(colorState.toString(16), 6),
|
||||
showInput: true,
|
||||
move: sendColor
|
||||
});
|
||||
});
|
||||
|
||||
client.getStateEvent(room, "org.lightrix.brightness", "", function(err, resp) {
|
||||
var brightness = 255;
|
||||
if(!err) {
|
||||
var brightness = resp;
|
||||
}
|
||||
|
||||
$("#brightness").val(brightness);
|
||||
});
|
||||
};
|
||||
|
||||
init(client);
|
||||
|
||||
function pad(number, length) {
|
||||
var str = '' + number;
|
||||
while (str.length < length) str = '0' + str;
|
||||
return str;
|
||||
}
|
File diff suppressed because one or more lines are too long
@ -0,0 +1,14 @@
|
||||
.sp-container {
|
||||
height: 90%;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.sp-picker-container {
|
||||
width: 600px;
|
||||
}
|
||||
|
||||
.sp-button-container {
|
||||
display: none;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue