SymBox und Sprachausgabe

Hallo,

ich benutze IP-Symcon 3.4 auf einem Windows 8.1 Tablet mit Homematic und Z-Wave Geräten.
Ich habe mir nun eine SymBox und ein Z-Wave LAN-Gateway zugelegt und bin am umstellen.
Das Tablet soll zur Visualisierung weiter laufen.

Problem:
Ich habe auf 3 Etagen 12 vernetzte Homematic Rauchmelder die alle herrlich Pipsen wenn einer auslöst (nur welcher war es).
Deshalb habe ich ein Script erstellt, welches den auslösenden Rauchmelder ermittelt und über die Windows Sprachausgabe den Namen des Rauchmelders über den Tablet-Lautsprecher ausgibt.(läuft super)

Hat jemand eine Idee, wie kann ich dies mit der SymBox wieder umsetzen kann.

Gruß Bond013

Abend!

Also die Windows TTS Instanz fällt weg, weil die funktioniert nicht mit Windows8/8.1/10 :wink:

Alternativ gibt es hier im Forum noch Skripte für die Google TTS API, Amazon Ivona, …

Und du kannst (aber erst ab IPS 4.0 - also mit der SymBox) eines der hier verfügbaren TTS Module verwenden:
Übersicht der PHP-Module

Edit: Ich seh grad, dir fehlt ja dann noch ein Lautsprecher :smiley: Aber wenn ein Tablet erhalten bleibt, findet sich da sicher eine Lösung. Für Android kenne ich welche, unter Windows müsste man mal googlen, wie man ein Windows Tablet als „Lautsprecher“ verwenden kann.

Grüße,
Chris

Ich hab bei mir Windows 10 am laufen und da ist eine super deutsche stimme dabei.

Moin!

Du meinst wohl diesen Workaround?! :slight_smile:
Bug-Tracker

-Chris-

Datei per TTS (z.B. Google) erstellen, als Mediendatei abspeichern, IPS_SendMedaEvent aufrufen, un dann:

Schau mal hier: WFC_AudioNotification — IP-Symcon :: Automatisierungssoftware

paresy

Hi das mit den Rauchmeldern hört sich cool an, würdest du dein skript veröffentlichen?
das ganze will ich dann über sonos ausgeben wollen.

Hallo,

Das Script läuft bei mir unter Symcon 3.4 auf einem Trekstor Windows 10 Tablet mit noTrigger Modul.
Ich hatte es auch schon auf einer SymBox mit 4.0 am laufen mit TTS VoiceRSS, doch vom Internet abhängig zu sein hat mir nicht gefallen.
Die Rauchmelder sind von Homematic und Popp (Zwave).

Für die Sprachausgabe verwende ich den Namen des Qbjektes.



<?

$ID_MEDIA_PLAYER = 15387 	/*[Sprachausgabe Tablet\Media Player]*/;
$ID_TTS = 57971 				/*[Sprachausgabe Tablet\Text To Speech]*/;
$alarm = false 				/*Alarm zurücksetzen*/;


// Vorsichtshalber die MediaPlayer-Ausgabe erst mal zurücksetzen
WAC_Stop($ID_MEDIA_PLAYER);             	//Playlist stopen
WAC_SetRepeat($ID_MEDIA_PLAYER, false); 	//Playlist wiederholung deaktivieren
WAC_ClearPlaylist($ID_MEDIA_PLAYER);		//Playlist löschen
WAC_SetVolume($ID_MEDIA_PLAYER ,5);			//Lautstärke setzen
// IPS_Sleep(500);                      		//500ms warten


// 9 * HomeMatic Rauchmelder und 2 * Z-Wave Rauchmelder:

$array = Array(15505 /*[Rauchmelder\HomeMatic\Alarm Büro Anka]*/,
					10657,
 					24555 /*[Rauchmelder\HomeMatic\Alarm Flur Erdgeschoß]*/,
 					26172,
  					55161 /*[Rauchmelder\HomeMatic\Alarm Praxis Anka]*/,
  					23601,
   				16680 /*[Rauchmelder\HomeMatic\Alarm Wohnzimmer]*/,
   				36023,
	 				24363 /*[Rauchmelder\HomeMatic\Alarm Zimmer Theresa]*/,
	  				21607,
	   			51473 /*[Rauchmelder\Z-Wave\Alarm Gartenhaus unten]*/);

foreach($array as $item){
   if (@IPS_GetObjectIDByIdent("STATE", $item) == true){                                   // bist du HomeMatic
	   $status = GetValueBoolean(IPS_GetObjectIDByIdent("STATE", $item));						 // Status des jeweiligen HomeMatic Rauchmelders holen
	}
   if (@IPS_GetObjectIDByIdent("StatusVariable", $item) == true){                   		 // bist du Z-Wave Popp_004308
		$status = GetValueBoolean(IPS_GetObjectIDByIdent("StatusVariable", $item)); 			 // Status des jeweiligen Z-Wave Rauchmelders holen
	}
	if ($status == True){
      $file = IPS_GetKernelDir().'sounds\\' .$item. '_alarm.wav'; 								 // file Name erzeugen
		TTS_GenerateFile($ID_TTS, '<silence msec="2000"/>' .IPS_GetName($item), $file, 39);	 // Name des Rauchmelders in wav file ausgeben
      WAC_AddFile($ID_MEDIA_PLAYER, $file);  															 // file in Playliste eintragen
      $alarm = true;
   }
}
if ($alarm == true) {
	WAC_SetRepeat($ID_MEDIA_PLAYER, true); 		//Playlist wiederholung aktivieren
	WAC_Play($ID_MEDIA_PLAYER);            		//Playlist abspielen
}
?>

Gruß
Bond013

Ich weiss ja nicht warum… aber dafür ist das NoTrigger-Modul nicht gedacht. Das funktioniert auch mit Ereignissen auf Variablenveränderung.
Oder aktualisieren sich bei dir alle Rauchmelder in weniger als 10 Sekunden ? Weil das Modul soll überwachen das sich etwas nicht mehr ändert / aktualisiert weil es ‚tot‘ ist. :smiley:
Michael

Ich weiss ja nicht warum… aber an deiner Stelle würde ich es positiv sehen, dass man dein Tool auch für die „noch Lebenden“ verwenden kann. :smiley:

Gruß
Michael

Dafür gibt es das normale auslösende Ereignis.
Zumal das Modul zu IPS 4.0 nicht kommt.
Frühestens erst zur 4.1.
Michael

Welches Modul meinst du ein Rauchmelder Modul?

Er meint das „NoTrigger“ Modul von sich :slight_smile:

Grüße,
Chris