Patch nicht, da ich nicht die letzte Version von Tablet UI habe, aber ich kann Dir sagen was Du ändern bzw. hinzufügen musst:
1) In js/fhem-tablet-ui.js folgendes in der Funktion "shortPoll" ganz am Ende in der .fail-Unterfunktion hinzufügen, damit das shortpoll wiederholt wird, falls es fehlgeschlagen ist:
if (ftui.config.DEBUG) ftui.toast("Try ShortPoll again in 3s");
ftui.states.lastSetOnline = 0;
ftui.states.lastShortpoll = 0;
ftui.startShortPollInterval(3000);
2) Das jquery Plugin "jquery.wakeup" unter
https://github.com/paulokopny/jquery.wakeup-plugin herunterladen und im Unterverzeichnis "lib" ablegen. Damit wird erkannt, wenn das Tablet aus dem Hibernate zurückkommt.
3) Ein tablet ui widget namens "widget_wakeup.js" erzeugen mit folgendem Code und im Unterverzeichnis js ablegen. Damit wird bei Erkennung des wakeups der shortpoll gestartet.
function depends_wakeup (){
if (!$.fn.wakeup){
return ["lib/jquery.wakeup.js"];
}
};
var Modul_wakeup= function () {
// mandatory function, get called on start up
function init () {
var bell_id = $.wakeUp(function() {
setTimeout(function(){
ftui.setOnline();
}, 3000);
});
};
// mandatory function, get called after start up once and on every FHEM poll response
// here the widget get updated
function update (dev,par) { }
// public
// inherit all public members from base class
return $.extend(new Modul_widget(), {
//override or own public members
widgetname: 'wakeup',
init: init,
update: update,
});
};
4) Auf Deiner index.html Seite das Widget wakeup im body hinzufügen, um das wakeup zu aktivieren:
...
<body>
<div data-type="wakeup"></div>
...
Fertig!
@setstate: Kannst Du das in der nächsten Funktion einbauen?