Zeitdurchsage mit MP3 Funkgong

Problemlösungen und Hinweise von allgemeinem Interesse zur Haussteuerung mit HomeMatic

Moderator: Co-Administratoren

robsdobs
Beiträge: 510
Registriert: 08.08.2015, 22:52
Danksagung erhalten: 1 Mal

Re: Zeitdurchsage mit MP3 Funkgong

Beitrag von robsdobs » 05.08.2017, 22:07

Nur zur Info:
Die 200 Variablen Begrenzung ist mit der aktuellen Firmware und der Standard oder Community Logikschicht nicht mehr vorhanden.

Gesendet vom[MOBILE PHONE] mit Tapatalk
sehr selten im Forum

Bodensee28
Beiträge: 6
Registriert: 20.10.2017, 23:16

Re: Zeitdurchsage mit MP3 Funkgong

Beitrag von Bodensee28 » 18.12.2017, 20:03

Ich versuche hier auch mein Glück, leider erfolglos.

Mein Script:
string gongcmd = "1,1,108000,090";

integer stunde=system.Date("%H").ToInteger();
integer minute=system.Date("%M").ToInteger();

! Es ist ...
gongcmd = gongcmd # ",093";

! ... Stunden
gongcmd = gongcmd # "," # (stunde+100).ToString();

! Uhr
gongcmd = gongcmd # ",094";

! Minuten
gongcmd = gongcmd # "," # (minute+100).ToString();

! Die Aussentemperatur beträgt ...
gongcmd = gongcmd # ",095";

var atemp = dom.GetObject("BidCos-RF.NEQ0772743:1.TEMPERATURE");
real thetemp = atemp.State();

if ( thetemp < 0 )
{
! minus
gongcmd = gongcmd # ",099";
thetemp = -1.0 * thetemp;
}

integer thetemp2 = 100+(thetemp+0.5).ToInteger();
gongcmd = gongcmd # "," # thetemp2.ToString() # ",092";

dom.GetObject("BidCos-RF.OEQ0087642:2.SUBMIT").State( gongcmd );
Dateianhänge
Unbenannt.JPG

Cosi
Beiträge: 39
Registriert: 04.11.2019, 16:38
Hat sich bedankt: 1 Mal
Danksagung erhalten: 3 Mal

Re: Zeitdurchsage mit MP3 Funkgong

Beitrag von Cosi » 18.05.2020, 21:38

Hallo,
das mit den langen Pausen zwischen den einzelnen gesprochenen Textteilen läßt sich sehr einfach lösen.
Das Programm "Audacity" erlaubt das Beschneiden der Sprachfiles. Es lassen sich damit die langen Pausen herausschneiden und dann laufen die Texte flüssig durch.
unter http://audacityteam.org/?lang=de
Gruß
Cosi

omicronCZ
Beiträge: 217
Registriert: 31.07.2011, 17:37
System: CCU
Wohnort: Czech Rep.
Hat sich bedankt: 83 Mal
Danksagung erhalten: 14 Mal

Re: Zeitdurchsage mit MP3 Funkgong

Beitrag von omicronCZ » 20.12.2022, 17:35

Kann jemand helfen, dieses Skript für HmIP-Thermostate zu modifizieren?

Code: Alles auswählen

var atemp = dom.GetObject("BidCos-RF.NEQxxxxxxx:1.TEMPERATURE");
Ich habe meine alten HM-Thermostate durch neue HmIP (WTH-2) ersetzt, und die Datenpunkte hier sind offensichtlich anders, hat jemand versucht, dies zu ändern?

Danke
Zuletzt geändert von omicronCZ am 20.12.2022, 21:09, insgesamt 1-mal geändert.


omicronCZ
Beiträge: 217
Registriert: 31.07.2011, 17:37
System: CCU
Wohnort: Czech Rep.
Hat sich bedankt: 83 Mal
Danksagung erhalten: 14 Mal

Re: Zeitdurchsage mit MP3 Funkgong

Beitrag von omicronCZ » 20.12.2022, 21:20

Ja, nach diesen Angaben für die Datenpunkte in HmIP habe ich diese Ersetzung vorgenommen, und leider funktioniert das Skript trotzdem nicht... :?

ursprüngliches Skriptformat für HM-Thermostat

Code: Alles auswählen

var atemp = dom.GetObject("MEQxxxxxxx:1").DPByHssDP("TEMPERATURE");
real thetemp = atemp.State();
geändertes Skriptformat mit HmIP-Thermostat

Code: Alles auswählen

var atemp = (dom.GetObject(ID_DATAPOINTS)).Get("HmIP-RF.xxxxxxxxxxxxxx:1.ACTUAL_TEMPERATURE").Value();
real thetemp = atemp.State();
Aber wenn ich den Skripttester den Temperaturwert ausdrucken lasse, sagt er: Hier ist es gut

Code: Alles auswählen

var atemp = (dom.GetObject(ID_DATAPOINTS)).Get("HmIP-RF.xxxxxxxxxxxxx:1.ACTUAL_TEMPERATURE").Value();
WriteLine(atemp);
Das gesamte Skript sieht wie folgt aus

Code: Alles auswählen

!..Skript MP3 Voice - the temperature in the Office...
string gongcmd = "1,1,108000";

! ...Temperature...
gongcmd = gongcmd # ",80";

! ...Office...
gongcmd = gongcmd # ",20";

var atemp = (dom.GetObject(ID_DATAPOINTS)).Get("HmIP-RF.000A9BE9A3E4BD:1.ACTUAL_TEMPERATURE").Value();
real thetemp = atemp.State();

if ( thetemp < 0 ) 
{
     ! ...minus...
     gongcmd = gongcmd # ",86";
     thetemp = -1.0 * thetemp;
}

integer thetemp2 = 100+(thetemp+0.5).ToInteger();

gongcmd = gongcmd # "," # thetemp2.ToString();

var gong = dom.GetObject("MP3 GONG:2");
var gongton = gong.DPByHssDP("SUBMIT");
gongton.State( gongcmd );
Tut mir leid, ich kenne keine Skripte :cry:

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

Re: Zeitdurchsage mit MP3 Funkgong

Beitrag von Baxxy » 20.12.2022, 23:12

omicronCZ hat geschrieben:
20.12.2022, 21:20
Das gesamte Skript sieht wie folgt aus
Ist ein Fehler drin.
Ersetze...

Code: Alles auswählen

var atemp = (dom.GetObject(ID_DATAPOINTS)).Get("HmIP-RF.000A9BE9A3E4BD:1.ACTUAL_TEMPERATURE").Value();
real thetemp = atemp.State();
...durch:

Code: Alles auswählen

var thetemp = (dom.GetObject(ID_DATAPOINTS)).Get("HmIP-RF.000A9BE9A3E4BD:1.ACTUAL_TEMPERATURE").Value();

omicronCZ
Beiträge: 217
Registriert: 31.07.2011, 17:37
System: CCU
Wohnort: Czech Rep.
Hat sich bedankt: 83 Mal
Danksagung erhalten: 14 Mal

Re: Zeitdurchsage mit MP3 Funkgong

Beitrag von omicronCZ » 21.12.2022, 00:21

Baxxy hat geschrieben:
20.12.2022, 23:12
Das gesamte Skript sieht wie folgt aus
...
Ist ein Fehler drin.
Ersetze...
...durch:
Perfekt, funktioniert, vielen Dank👍

Antworten

Zurück zu „HomeMatic Tipps & Tricks - keine Fragen!“