Programm führt nicht aus

Einrichtung, Anschluss und Programmierung der HomeMatic CCU

Moderator: Co-Administratoren

Benutzeravatar
blackhole
Beiträge: 3730
Registriert: 21.07.2015, 14:03
System: CCU
Hat sich bedankt: 184 Mal
Danksagung erhalten: 587 Mal

Re: Programm führt nicht aus

Beitrag von blackhole » 16.10.2021, 18:25

Pseudoreal hat geschrieben:
16.10.2021, 18:06
Ich dachte, dass ToUTF genau die Probleme mit Umlauten lösen sollte.

Genau so ist es auch. Lass dich nicht von den wilden Vermutungen hier im Thread verunsichern.
Führe einfach folgendes Beispiel unter "Skript testen" aus und schaffe Fakten:

Code: Alles auswählen

! Sende Telegram-Nachricht
!-------------------------------------------------------------------------------------------------------
string message = "Das ist ein Test mit Umlauten: ÄÖÜöäü";
string chatid = "ID";
string botapi = "botapi";
!--------------------------------------------------------------------------------------------------------
string url="\"https://api.telegram.org/bot"#botapi#"/sendMessage?chat_id="#chatid#"&parse_mode=Markdown&text="#message.ToUTF8().UriEncode()#"\"";
system.Exec("curl -s --max-filesize 131072 --max-time 15 "#url#" &");

Die Funktionen ToUTF8() und UriEncode() sind bestimmt nicht 100%ig perfekt aber die gängigen Dinge beherrschen sie gut.

Pseudoreal
Beiträge: 246
Registriert: 01.05.2020, 19:48
System: CCU
Hat sich bedankt: 78 Mal
Danksagung erhalten: 10 Mal

Re: Programm führt nicht aus

Beitrag von Pseudoreal » 16.10.2021, 22:01

Danke. Das funktioniert auch. Wie gesagt... Plötzlich geht es nicht mehr.
1x HmIPW-DRAP, 3x HmIPW-DRI32, 3x HmIPW-DRBL4, 7x HmIPW-DRS8, 1x HmIPW-DRD3, 1x HmIPW-SMI55, 3x HmIPW-WTH, 1x HmIP-HAP, 3x HmIP-STH, 1x HmIP-WTH-2, 3x HmIP-PS, 1x HmIP-SMI, 7x HmIP-SWDO-I, 4x HmIP-SWSD, 3 HmIP-SRH, 2x HmIP-BSL, 3x HmIP-SMI55, 1x HmIP-ASIR, 1xHmIP-ASIR-O

Xel66
Beiträge: 14148
Registriert: 08.05.2013, 23:33
System: Alternative CCU (auf Basis OCCU)
Wohnort: Nordwürttemberg
Hat sich bedankt: 583 Mal
Danksagung erhalten: 1497 Mal

Re: Programm führt nicht aus

Beitrag von Xel66 » 16.10.2021, 22:19

Meine Vermutung: wenn eine Systemvariable zur Übergabe des Inhalts im Spiel ist, gibt's Probleme. Sitze aber gerade am Smartphone und kann nicht testen. Ich nutze ein ähnliches Konstrukt und habe damals entschieden, auf Umlaute in Meldungstexten zu verzichten.

Innerhalb der WebUI meide ich die Verwendung ebenso, auch wenn so einige Anwender behaupten, dass es damit keine Probleme gäbe. Ohne Verwendung solcher Bezeichner in Scripten mag das auch uneingeschränkt stimmen, da diese Namen nur zur Anzeige auf intern verwaltete IDs gemapt werden. In Scripten aber muss der umgekehrte Weg beschritten werden. Dabei gibt es regelmäßig Probleme. Und ähnliches vermute ich hier.

Gruß Xel66
-------------------------------------------------------------------------------------------
524 Kanäle in 146 Geräten und 267 CUxD-Kanäle in 34 CUxD-Geräten:
343 Programme, 334 Systemvariablen und 183 Direktverknüpfungen,
RaspberryMatic Version: 3.65.11.20221005 + Testsystem: CCU2 2.61.7
-------------------------------------------------------------------------------------------
Einsteigerthread, Programmlogik-Thread, WebUI-Handbuch

Benutzeravatar
blackhole
Beiträge: 3730
Registriert: 21.07.2015, 14:03
System: CCU
Hat sich bedankt: 184 Mal
Danksagung erhalten: 587 Mal

Re: Programm führt nicht aus

Beitrag von blackhole » 17.10.2021, 15:02

Xel66 hat geschrieben:
16.10.2021, 22:19
Meine Vermutung: wenn eine Systemvariable zur Übergabe des Inhalts im Spiel ist, gibt's Probleme.

Mein komplettes Benachrichtigungssystem basiert bereits seit vielen Jahren auf Texte/Meldungen/Alarme/Warnungen, die von sehr vielen meiner Programme in eine bzw. zwei Systemvariablen (Typ Zeichenkette) geschrieben werden, welche dann -auf Veränderung überprüft- von meinem (separaten, zentralen) Messenger-Programm ausgelesen und je nach Wichtigkeit der Nachricht über einen bzw. zwei Benchrichtigungskäle versandt werden.

Das funktioniert auf diese Weise bereits seit Jahren sehr zuverlässig und ist mit den bekannten HM-Script-Code-Schnippseln auch einfach nachzubauen, zusammklickbar und auch nachvollziehbar auf Funktion zu überprüfen.
Zuletzt geändert von blackhole am 17.10.2021, 15:17, insgesamt 1-mal geändert.

frd030
Beiträge: 3608
Registriert: 14.07.2019, 20:49
System: CCU
Hat sich bedankt: 843 Mal
Danksagung erhalten: 539 Mal

Re: Programm führt nicht aus

Beitrag von frd030 » 17.10.2021, 15:16

Pseudoreal hat geschrieben:
16.10.2021, 22:01
Danke. Das funktioniert auch. Wie gesagt... Plötzlich geht es nicht mehr.
Wie schon oben geschrieben: Programm in Einzelteile zerlegen und die einzeln testen, z.B. das Senden von WhatsApp - wenn das zuverlässig funktioniert, dann die nächste Funktion testen. Du wirst sonst nie auf die Ursache kommen!

Xel66
Beiträge: 14148
Registriert: 08.05.2013, 23:33
System: Alternative CCU (auf Basis OCCU)
Wohnort: Nordwürttemberg
Hat sich bedankt: 583 Mal
Danksagung erhalten: 1497 Mal

Re: Programm führt nicht aus

Beitrag von Xel66 » 17.10.2021, 15:54

blackhole hat geschrieben:
17.10.2021, 15:02
... die von sehr vielen meiner Programme in eine bzw. zwei Systemvariablen (Typ Zeichenkette) geschrieben werden...
Ähnlich hier, nur dass ich für jeden Versandweg eine separate Systemvariable habe (MailText, PushText, InfoText, TelegramText, EchoText) und die jeweiligen Programme triggern auf die Aktualisierung (SONST) der Systemvariable und kümmern sich um den Versand. Nur habe ich vor ewigen Zeiten mal Probleme bei der Verwendung von Umlauten gehabt und verzichte seitdem darauf. Vermisst habe ich die Umlaute noch nie.

Gruß Xel66
-------------------------------------------------------------------------------------------
524 Kanäle in 146 Geräten und 267 CUxD-Kanäle in 34 CUxD-Geräten:
343 Programme, 334 Systemvariablen und 183 Direktverknüpfungen,
RaspberryMatic Version: 3.65.11.20221005 + Testsystem: CCU2 2.61.7
-------------------------------------------------------------------------------------------
Einsteigerthread, Programmlogik-Thread, WebUI-Handbuch

MichaelN
Beiträge: 9649
Registriert: 27.04.2020, 10:34
System: CCU
Hat sich bedankt: 697 Mal
Danksagung erhalten: 1617 Mal

Re: Programm führt nicht aus

Beitrag von MichaelN » 17.10.2021, 16:31

Ich haue ohne Ende Sonderzeichen raus über Systemvariable und Skript. Alles problemlos.
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 +++

Xel66
Beiträge: 14148
Registriert: 08.05.2013, 23:33
System: Alternative CCU (auf Basis OCCU)
Wohnort: Nordwürttemberg
Hat sich bedankt: 583 Mal
Danksagung erhalten: 1497 Mal

Re: Programm führt nicht aus

Beitrag von Xel66 » 17.10.2021, 16:59

Kann ja jeder machen, wie er will. Meine Methode birgt von vornherein weniger Stolpersteine.

Gruß Xel66
-------------------------------------------------------------------------------------------
524 Kanäle in 146 Geräten und 267 CUxD-Kanäle in 34 CUxD-Geräten:
343 Programme, 334 Systemvariablen und 183 Direktverknüpfungen,
RaspberryMatic Version: 3.65.11.20221005 + Testsystem: CCU2 2.61.7
-------------------------------------------------------------------------------------------
Einsteigerthread, Programmlogik-Thread, WebUI-Handbuch

Benutzeravatar
blackhole
Beiträge: 3730
Registriert: 21.07.2015, 14:03
System: CCU
Hat sich bedankt: 184 Mal
Danksagung erhalten: 587 Mal

Re: Programm führt nicht aus

Beitrag von blackhole » 17.10.2021, 17:05

Es gibt sogar Leute, die auf Groß-/Kleinschreibung verzichten.


¯\_(ツ)_/¯

Xel66
Beiträge: 14148
Registriert: 08.05.2013, 23:33
System: Alternative CCU (auf Basis OCCU)
Wohnort: Nordwürttemberg
Hat sich bedankt: 583 Mal
Danksagung erhalten: 1497 Mal

Re: Programm führt nicht aus

Beitrag von Xel66 » 17.10.2021, 17:21

blackhole hat geschrieben:
17.10.2021, 17:05
... auf Groß-/Kleinschreibung verzichten.
In seinem System kann das ja jeder halten wie er will. In Foren antworte ich in der Regel auf Postings ohne Verwendung der Shift-Taste und/oder ohne Satzzeichen nicht. Ist mir zu anstrengend.
Gruß Xel66
-------------------------------------------------------------------------------------------
524 Kanäle in 146 Geräten und 267 CUxD-Kanäle in 34 CUxD-Geräten:
343 Programme, 334 Systemvariablen und 183 Direktverknüpfungen,
RaspberryMatic Version: 3.65.11.20221005 + Testsystem: CCU2 2.61.7
-------------------------------------------------------------------------------------------
Einsteigerthread, Programmlogik-Thread, WebUI-Handbuch

Antworten

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