Einbindung des Asterisk in die selbstgestrickte Hausautomation

Situation:

Man schaut über den Beamer gerade eine Bluray und es klingelt das Telefon. In der Hektik sucht man dann die Fernbedienung, um den Film zu pausieren und danach das Schnurlostelefon, dass vor sich herklingelt…. und dann am besten noch bevor der Anrufer wieder aufgelegt hat.

Aufgabe:

Wenn es klingelt soll der Film pausiert werden und es soll das Licht zum Suchen des Schnurlostelefons eingeschaltet werden (zB um nicht im Dunkeln gegen Hocker oder Tische zu laufen … oder auf Katzen).

Software:

1. extensions.conf für den Asterisk anpassen

  • gleich bevor es klingelt sollen Aktionen ausgeführt werden (am Anfang des Callflows)
  • wenn abgehoben wird, soll wieder etwas ausgeführt werden (Option M im Dial-Befehl)

[call-in]

exten => _123456789,1,AGI(harmony_anruf.agi) # das AGI-Skript wird aufgerufen sobald es klingelt

exten => _123456789,n,Dial(SIP/12,30,M(abgehoben)) # die Option ,M ruft das angegebene Makro auf, sobald man abhebt

[macro-abgehoben]
exten => s,1,AGI(harmony_call.agi) # das AGI-Skript wird aufgerufen sobald man den Anruf entgegennimmt

2. die AGI-Skripte anlegen (nur die relevanten Stelle habe ich aufgelistet. Die Skripte sind noch etwas umfangreicher, zwecks Überprüfung ob der BD-Player überhaupt läuft usw)

  1. erst den BD-Player pausieren
  2. Harmony-„Aktion“ aktivieren die die Hues steuert (man könnte das Einschalten auch über HuePl realisieren, aber so hat man auf der Harmony-Fernbedieung gleich die „Aktion“ aktiv, die man nach dem Telefonat wieder deaktivieren kann, um das Licht wieder aus zu schalten)
  3. Hue-Lampe auf max Helligkeit
  4. Hue-Lampe auf Farbe weiß stellen

/usr/share/asterisk/agi-bin/harmony_anruf.agi

#!/usr/bin/perl
qx“/opt/harmonyhubcontrol-code/HarmonyHubControl [username] [password] 192.168.178.38 issue_device_command 27736482 Pause“; # Pause beim BD-Player
qx“/opt/harmonyhubcontrol-code/HarmonyHubControl [username] [password] 192.168.178.38 start_activity 14481848″; # Hue-Aktion auf dem Harmony Hub
qx“/usr/src/skripte/hue.pl -keyf=/usr/src/skripte/.hueplkey bri 1 255″; # Hue auf volle Helligkeit
qx“/usr/src/skripte/hue.pl -keyf=/usr/src/skripte/.hueplkey white 1″; # Hue auf Farbe weiß stellen

  1. Hue-Lampe auf 50% Helligkeit
  2. Hue-Lampe auf Farbe gelb stellen

/usr/share/asterisk/agi-bin/harmony_call.agi

#!/usr/bin/perl
qx“/usr/src/skripte/hue.pl -keyf=/usr/src/skripte/.hueplkey bri 1 128″; # Hue auf halbe Helligkeit
qx“/usr/src/skripte/hue.pl -keyf=/usr/src/skripte/.hueplkey yellow 1″; # Hue auf gelb stellen

Das war es dann auch schon :)

Basti

Kommentar schreiben

1 Kommentare.

Kommentar schreiben


Hinweis - Du kannst dies benutzenHTML tags and attributes:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

Trackbacks und Pingbacks: