Novi klici konzolnih ukazov, berry koda za propelerje

sbc
Jurij Podgoršek 2023-03-21 03:32:00 +01:00
parent 84bd2791b2
commit 75b6775322
4 changed files with 76 additions and 69 deletions

38
autoexec.be 100644
View File

@ -0,0 +1,38 @@
def ugasni_levo()
tasmota.set_power(0, false)
end
def ugasni_desno()
tasmota.set_power(1, false)
end
# payload = kako dolgo naj bo vklopljen, v milisekundah
def pojdi_levo(cmd, idx, payload, payload_json)
print("payload!")
print(payload)
tasmota.set_power(0, true)
tasmota.set_timer(int(payload), ugasni_levo)
end
# payload = kako dolgo naj bo vklopljen, v milisekundah
def pojdi_desno(cmd, idx, payload, payload_json)
tasmota.set_power(1, true)
tasmota.set_timer(int(payload), ugasni_desno)
end
def ugasni_vse()
ugasni_levo()
ugasni_desno()
end
# payload = kako dolgo naj bo vklopljen, v milisekundah
def pojdi_ravno(cmd, idx, payload, payload_json)
tasmota.set_power(0, true)
tasmota.set_power(1, true)
tasmota.set_timer(int(payload), ugasni_vse)
end
tasmota.add_cmd('PojdiLevo', pojdi_levo)
tasmota.add_cmd('PojdiDesno', pojdi_desno)
tasmota.add_cmd('PojdiRavno', pojdi_ravno)
tasmota.add_cmd('UgasniVse', ugasni_vse)

View File

@ -1,54 +1,21 @@
var BOT="http://192.168.1.101/";
// Koliko milisekund se naj vrtijo propelerji?
var DOLZINA=10000;
function xhttp() {
return new XMLHttpRequest();
}
function cors(xh) {
xh.setRequestHeader('Content-Type', 'application/x-www-form-urlencode');
xh.withCredentials = true;
return xh;
}
function preklopiA() {
var xh = xhttp();
xh.open('GET', BOT + "?m=1&o=1");
return xh;
}
function preklopiB() {
var xh = xhttp();
xh.open('GET', BOT + "?m=1&o=2");
return xh;
}
window.peljiLevo = function () {
var rb = preklopiB();
console.log('lev?', rb);
rb.send();
console.log(streaming);
setTimeout(function () {
var rb = preklopiB();
rb.send();
}, DOLZINA);
var xh = xhttp();
xh.open('GET', BOT + "cm?cmnd=PojdiLevo%20" + DOLZINA);
xh.send();
}
window.peljiDesno = function () {
var ra = preklopiA();
ra.send();
setTimeout(function () {
var ra = preklopiA();
ra.send();
}, DOLZINA);
var xh = xhttp();
xh.open('GET', BOT + "cm?cmnd=PojdiDesno%20" + DOLZINA);
xh.send();
}
window.peljiRavno = function () {
window.peljiLevo();
window.peljiDesno();
var xh = xhttp();
xh.open('GET', BOT + "cm?cmnd=PojdiRavno%20" + DOLZINA);
xh.send();
}

View File

@ -13,3 +13,8 @@ var iceServers = [{
username: turnUser,
credential: turnPass
}]
var BOT="http://192.168.1.101/";
// Koliko milisekund se naj vrtijo propelerji?
var DOLZINA=3000;

View File

@ -29,6 +29,21 @@ window.addEventListener('DOMContentLoaded', function () {
var gRavno = document.querySelector('#ravno');
var vsiGumbi = [gLevo, gDesno, gRavno];
// Funkcije za veckratno rabo
function omogociGumbe(kdaj) {
setTimeout(function () {
vsiGumbi.forEach(function (gEl) {
gEl.toggleAttribute('disabled', false);
});
}, kdaj);
}
function onemogociGumbe() {
vsiGumbi.forEach(function (gEl) {
gEl.toggleAttribute('disabled', true);
});
}
// Initialize the library (all console debuggers enabled)
Janus.init({debug: "all", callback: function() {
// Make sure the browser supports WebRTC
@ -80,41 +95,23 @@ window.addEventListener('DOMContentLoaded', function () {
gLevo.addEventListener('click', function () {
console.log('GREMO LEVO!');
window.peljiLevo();
vsiGumbi.forEach(function (gEl) {
gEl.toggleAttribute('disabled', true);
});
// @TODO spremeni interval
setTimeout(function () {
vsiGumbi.forEach(function (gEl) {
gEl.toggleAttribute('disabled', false);
});
}, 2000);
onemogociGumbe();
omogociGumbe(DOLZINA + PAVZA);
});
gDesno.addEventListener('click', function () {
console.log('GREMO DESNO!');
window.peljiDesno();
vsiGumbi.forEach(function (gEl) {
gEl.toggleAttribute('disabled', true);
});
// @TODO spremeni interval
setTimeout(function () {
vsiGumbi.forEach(function (gEl) {
gEl.toggleAttribute('disabled', false);
});
}, 2000);
onemogociGumbe();
omogociGumbe(DOLZINA + PAVZA);
});
gRavno.addEventListener('click', function () {
console.log('GREMO RAVNO!');
window.peljiRavno();
vsiGumbi.forEach(function (gEl) {
gEl.toggleAttribute('disabled', true);
});
// @TODO spremeni interval
setTimeout(function () {
vsiGumbi.forEach(function (gEl) {
gEl.toggleAttribute('disabled', false);
});
}, 2000);
onemogociGumbe();
omogociGumbe(DOLZINA + PAVZA);
});
} else {
gLevo.removeEventListener('click');