Programm per Script bedienbar/nicht bedienbar schalten

Einrichtung, Anschluss und Programmierung der HomeMatic CCU

Moderator: Co-Administratoren

sunshine78
Beiträge: 14
Registriert: 02.06.2016, 08:45
Hat sich bedankt: 1 Mal

Re: Programm per Script bedienbar/nicht bedienbar schalten

Beitrag von sunshine78 » 17.01.2024, 08:51

Tyfys hat geschrieben:
16.01.2024, 19:52
Baxxy hat geschrieben:
16.01.2024, 19:17
"Intern" versteckt es halt zusätzlich auch in > Status und Bedienung > Programme
Jau

und das könnte man sogar per Skript machen :

Code: Alles auswählen

dom.GetObject(ID_PROGRAMS).Get("Programm_Name").Internal(true)  !  true =systemintern / false=normal
WriteLine(dom.GetObject(ID_PROGRAMS).Get("Programm_Name").Internal());
Ob bedienbar auch geht ?
Ich danke erst einmal für die so vielen Lösungsvorschläge. Ich bin ja meistens stiller Leser und finde die Lösungen meistens schon im Forum ohne selbst zu fragen und "andere Leute sinnlos zu beschäftigen".
Zu der Quick & Dirty Lösung von dir Tyfys wollte ich schon die Arme hochreißen. Denn tatsächlich war das Programm aus der Liste der Programme verschwunden. Nun aber wieder was typisch seltsames: wenn das Programm zuvor unter der Favoritenliste abgelegt war, dann verschwindet es dort nicht und kann auch weiterhin bedient werden. Das geht jedoch nicht wenn man händisch den "bedienbar" Button rausnimmt!

Danke für deine Lösung. Hat leider nicht ganz hingehauen.

sunshine78
Beiträge: 14
Registriert: 02.06.2016, 08:45
Hat sich bedankt: 1 Mal

Re: Programm per Script bedienbar/nicht bedienbar schalten

Beitrag von sunshine78 » 17.01.2024, 08:57

Baxxy hat geschrieben:
16.01.2024, 19:58
Zu bedienbar habe ich nichts gefunden... sehr merkwürdig.

Was auch geht...

Code: Alles auswählen

.Enabled(false)
Hier passiert genau das Gleiche. Das Programm scheint genauso "versteckt" zu werden. Es verwindet aus der Programmliste, aus den bedienbaren Programmen, ist aber noch immer als zuvor gespeicherter Favorit nutzbar! Wirklich Strange!

Mist - jetzt ist es in der Programmliste verschwunden und kommt nicht mehr zurück... bedienbar ist es nach wie vor... SHIT ...
Zuletzt geändert von sunshine78 am 17.01.2024, 09:06, insgesamt 1-mal geändert.

MichaelN
Beiträge: 9807
Registriert: 27.04.2020, 10:34
System: CCU
Hat sich bedankt: 711 Mal
Danksagung erhalten: 1656 Mal

Re: Programm per Script bedienbar/nicht bedienbar schalten

Beitrag von MichaelN » 17.01.2024, 09:01

Man könnte ein Skript schreiben um den Eintrag aus den Favoriten zu entfernen und wieder einzufügen.
LG, Michael.

Wenn du eine App zur Bedienung brauchst, dann hast du kein Smarthome.

Wettervorhersage über AccuWeather oder OpenWeatherMap+++ Rollladensteuerung 2.0 +++ JSON-API-Ausgaben auswerten +++ undokumentierte Skript-Befehle und Debugging-Tipps +++

Benutzeravatar
Baxxy
Beiträge: 11027
Registriert: 18.12.2018, 15:45
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 631 Mal
Danksagung erhalten: 2284 Mal

Re: Programm per Script bedienbar/nicht bedienbar schalten

Beitrag von Baxxy » 17.01.2024, 09:12

Das hier Favoriten genutzt werden blieb ja bisher unerwähnt, oder ich hab's überlesen. :shock:
sunshine78 hat geschrieben:
17.01.2024, 08:57
Mist - jetzt ist es in der Programmliste verschwunden und kommt nicht mehr zurück...

Code: Alles auswählen

.Enabled(true)

sunshine78
Beiträge: 14
Registriert: 02.06.2016, 08:45
Hat sich bedankt: 1 Mal

Re: Programm per Script bedienbar/nicht bedienbar schalten

Beitrag von sunshine78 » 17.01.2024, 09:36

Baxxy hat geschrieben:
16.01.2024, 20:47
Baxxy hat geschrieben:
16.01.2024, 19:58
Zu bedienbar habe ich nichts was gefunden...
Wie's geht zeigt 'function ::SetOperate()' in der /www/rega/esp/programs.fn.

Das hat was mit .UserAccessRights() zu tun.

Ich blicke das mit den Rechten aktuell selbst nicht, funktionieren tut's aber. :wink:
Testen und anwenden auf eigene Gefahr :!:

Code: Alles auswählen

object oPrg = dom.GetObject (ID_PROGRAMS).Get ("Baxxys_kaputtmach_Test_Programm");

!- "Bedienbar" deaktivieren
!oPrg.UserAccessRights(iulOtherThanAdmin,iarRead);

!- "Bedienbar" aktivieren
!oPrg.UserAccessRights(iulOtherThanAdmin,iarFullAccess);
So erstmal das Backup zurückgespielt. Alles wieder wie vorher... Wie immer: Kein Backup kein Mitleid!!!

Viele Dank Baxxy!! Wie du schon sagst: kein Mensch weiß warum das funktioniert - aber es funktioniert!! Genau so habe ich mir das gewünscht!

Programm bedienbar ist deaktiviert. Damit verschwunden aus der Liste der bedienbaren Programme UND bei den Favoriten ohne die Buttons! So moag ich das!

Vielen lieben Dank für diese Lösung in unter 24h!

sunshine78
Beiträge: 14
Registriert: 02.06.2016, 08:45
Hat sich bedankt: 1 Mal

Re: Programm per Script bedienbar/nicht bedienbar schalten

Beitrag von sunshine78 » 17.01.2024, 09:39

Baxxy hat geschrieben:
17.01.2024, 09:12
Das hier Favoriten genutzt werden blieb ja bisher unerwähnt, oder ich hab's überlesen. :shock:
sunshine78 hat geschrieben:
17.01.2024, 08:57
Mist - jetzt ist es in der Programmliste verschwunden und kommt nicht mehr zurück...

Code: Alles auswählen

.Enabled(true)
Tut mir leid - das sah ich nicht als relevant an, denn beim manuellen "bedienbar" Button waren diese Side-effects ja nicht bemerkbar. Das kam ja erst durch das "um die Ecke denken". Das die GUI hier mit zweierlei Maß misst war mir nicht klar. Dir???

Benutzeravatar
Baxxy
Beiträge: 11027
Registriert: 18.12.2018, 15:45
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 631 Mal
Danksagung erhalten: 2284 Mal

Re: Programm per Script bedienbar/nicht bedienbar schalten

Beitrag von Baxxy » 17.01.2024, 10:32

Bei der WebUI wundert mich nichts. :wink:

Es ist eine Administrationsoberfläche, das ganze User-Rechte-Zeugs ist da quasi nur durch "verstecken" implementiert.

Der zweite Ansatz mit dem .UserAccessRights() müsste dann aber funktionieren.

Antworten

Zurück zu „HomeMatic Zentrale (CCU / CCU2 / CCU3 / Charly)“