Wenn dies dein erster Besuch hier ist, lies bitte zuerst die Hilfe - Häufig gestellte Fragen durch. Du musst dich vermutlich registrieren, bevor du Beiträge verfassen kannst. Klicke oben auf 'Registrieren', um den Registrierungsprozess zu starten. Du kannst auch jetzt schon Beiträge lesen. Suche dir einfach das Forum aus, das dich am meisten interessiert.
Ankündigung
Einklappen
Keine Ankündigung bisher.
AVM Plugin - Rufumleitung ein/ausschalten per TR-64 möglich?
ich habe mir das aktuelle Plugin mal angeschaut (baue dort eine verbesserte Anbindung von Smarthome Devices ein).
So wie ich das sehe bzw das Plugin verstehe, ist der entsprechende Teil des TR-064 Protokoll implementiert. siehe hier
Dies wird bei diversen Funktionen u.a. get_contact_name_by_phone_number des Plugins benutzt.
Somit muss man "nur" basierend auf den vorhandenen Funktionen eine neue Funktion zur Aktivierung der Umleitung schreiben.
Per TR-064 werden unterstützt:
GetNumberOfDeflections
GetDeflection
GetDeflections
SetDeflectionEnable
Ich denke, dass wir das gemeinsam hinbekommen können. Oder?
BTW: Mein aktueller Stand des Plugins mit dem verbesserten Interface zu Smarthome Devices findet man hier
Meine weitere Recherche ergab: An anderer Stelle im Forum die die Request schon beschrieben.
Somit bedarf es noch der Umsetzung in Python bzw Integration ins Plugin.
Wenn man das Beispiel noch etwas aufbohrt, könnte man die Visu mit anbinden und z.B. die aktiven Umleitungen anzeigen. Man könnte das in der Visu selbst machen, oder mit Anbindung an das AVM-Plugin in shNG.
Ich stelle mir das als Logik in etwa so vor:
Alle 5 Minuten die Logik triggern
1. Ist mein Mobiltelefon angemeldet? Wenn ja, bin ich zu Hause --> 3.
2. Umleitung einrichten
2.1 Ist bereits umgeleitet? Wenn ja, brauche ich das nicht nochmal zu starten --> 4.
3. Umleitung ausschalten
3.1 Ist bereits umgeleitet? Wenn ja, dann rausnehmen, --> 4.
4. Ende
Eine Darstellung in der Visu könnte man einfach über ein SHNG String Item machen das eine Vorformatierte Tabelle der Umleitungen bekommt mit Info ob die Umleitung aktuell aktiv ist oder nicht. Dynamisch wäre natürlich besser aber dann müßte man das irgendwie über ein dict lösen und die Anzeige in der SmartVISU dynamisch aufbauen.
Wäre es nicht ein Ansatz, die "Anwesenheit" des Mobiltelefons in ein (bool-)Item zu schreiben?
Dann könnte ein anderes Item per Logik oder (besser?) per onchange und in Abhängigkeit vom Status der Umleitung diese ein-/ausschalten.
Ich bin immer ein Freund von "eventgesteuertem" Verhalten und möglichst wenig regelmäßigem Polling Das wäre höchstens nötig für den Status des Mobiltelefons. Und vielleicht hängt man an dessen Status ja später noch mehr an...
PS: hast du schon eine Lösung, wie du das Mobiltelefon "detektierst"?
Ich habe mein Mobiltelefon vorgestern irgendwo im Haus liegen lassen und es hat sich mangels Akku-Ladung über Nacht abgeschaltet. Bei einer Anwesenheitserkennung nur über die aktive Anmeldung wäre ich also für shNG "außer Haus" gewesen. Blöd, wenn dann die Rufumleitung vom Festnetz auch noch aktiviert worden wäre.
Ich denke, telefonische Erreichbarkeit kann essentiell wichtig sein und braucht deshalb eine zuverlässigere Anwesenheitserkennung als so manche anwesenheuitsgesteuerte Komfortfunktion, auf die man auch mal verzichten kann. IMHO braucht man deshalb in diesem Fall noch ein zusätzliches Signal für eine Anwesenheitserkennung.
Es wird knapp OT aber ich wollte den Türriegelkontakt dazu nutzen festzulegen, ob "jemand" zu Hause ist oder nicht. Je nach persönlicher Konstellation kann das - ggf. in Verbindung mit dem Mobilfon - reichen...
Ich habe die 4 Funktionen zur Rufumleitung mal als Funktion (erstmal ohne Anbindung an Items aber mit Debug-Ausgaben) implementiert.
Aktueller Stand ist hier zu finden.
Implementiert sind:
get_number_of_deflections() --> Gibt die Anzahl der Rufumleitungen zurück;
get_deflection() --> Gibt die Details zur Rufumleitungs_ID als dict zurück; Default ist die ID 0;
get_deflections() --> Gibt die Details zu allen Rufumleitungen als dict zurück;
set_deflection_enable(a,b) --> An und Ausschalten der Rufumleitung mit a = Rufumleitungs_ID und b an=True oder aus=False
WebIF geht im Moment nicht (Liegt aber an der Implementierung des AHA-Interfaces für alle Smarthome-Devices) Hier werde ich Hilfe benötigen. (erledigt)
etc.
Beste Grüße
Michael
Edit: Deflections Funktionen vervollständigt, Daher Beschreibung angepasst
Edit2: WebIF geht wieder.
Wir verarbeiten personenbezogene Daten über die Nutzer unserer Website mithilfe von Cookies und anderen Technologien, um unsere Dienste bereitzustellen. Weitere Informationen findest Du in unserer Datenschutzerklärung.
Indem Du unten auf "ICH stimme zu" klickst, stimmst Du unserer Datenschutzerklärung und unseren persönlichen Datenverarbeitungs- und Cookie-Praktiken zu, wie darin beschrieben. Du erkennst außerdem an, dass dieses Forum möglicherweise außerhalb Deines Landes gehostet wird und bist damit einverstanden, dass Deine Daten in dem Land, in dem dieses Forum gehostet wird, gesammelt, gespeichert und verarbeitet werden.
Kommentar