Shelly mit einer Asterisk ansteuern

Es wird eine funktionierende Installation von Asterisk vorausgesetzt.

Als eine Anwendung aus der Praxis kann man mit einem Shelly z.B. einen Türöffner in einem Büro ansteuern. Über die Kurzwahl am Telefon kann dann durch einen Tastendruck der Türöffner betätigt werden. Viele andere Anwendungen sind damit möglich und es lassen sich viele Dinge somit über das Telefon steuern.

#!/usr/bin/php -q
<?php
error_reporting (E_ALL);
require('phpagi.php');
$url="http://192.168.0.30/relay/0?turn=on&timer=5";
$curl = curl_init($url);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
$result = curl_exec($curl);
curl_close($curl);
?>

Man kann z.B. obiges PHP Script verwenden. Es wird vorausgesetzt das PHPAGI installiert ist und das Verzeichnis /val/lib/asterisk/agi-bin/ auf der Asterisktelefonanlage vorhanden ist und man zugang über die Console hat.

Ein Shelly1 erhält dann über das obige Script den Befehl für 5 Sekunden eingeschaltet zu sein. Es sei vorausgesetzt das der Shelly im gleichen Netzwerk wie die Asteriskanlage ist. Damit man den Shelly über das Telefon ansteuern kann, muß noch die Datei extensions_custom.conf im Verzeichnis /etc/asterisk/ um folgendes ergänzt werden.

[from-internal]
exten => *255,1,Answer()
exten => *255,n,AGI(schalter.php)
exten => *255,n,Hangup()

Somit wird nach Anwahl von *255 in diesem Fall das obige Script angesteuert und der Shelly ausgelöst.
Verwendet wird Asterisk Version 16.19.0 und Free PBX 15.0.23

Arbeiten an Elektroanlagen sollten nur von Fachkräften durchgeführt werden!

Asterisk und Call Pickup mit Yealink T46S

Um einen Anruf von einer anderen Nebenstelle die gerade angerufen wird anzunehmen muß die Besetztlampen Funktion (BLF) eingerichtet werden.

Über das Telefonmenü, welches über die IP Adresse zu erreichen ist, wählt man den Reiter Direktwahl an. Je nach Firmware und eingestellter Sprache kann der Reiter auch anders heißen.

Als Typ wird dann erstmal BLF ausgewählt. In das Feld Wert kommt dann die Nebenstelle die man mit dem Knopf erreichen will. Das Label ist dann die Bezeichnung auf dem Telefon. Entscheident ist das Feld Erweiterung. Hier gehören 2 ** rein sonst kann man für die Nebenstelle keine Gespräche abfangen sollte der Kollege mal nicht da sein.

Ist nicht gewünscht das der Kollege andere Gespräche annimmt lässt man die ** einfach weg. Es kann dann mit dem Knopf nur die Nebenstelle angewählt werden.

PhoneSuite

Wer ein TAPI Schnittstelle zu seiner Telefonanlage sucht ist hier richtig. Auf der Seite von PhoneSuite.de gibt es eine TAPI Schnittstelle für die Asterisk, sowie alle anderen TAPI fähigen Anlagen. Die passende Software PhoneSuite verwaltet komfortabel am PC nicht nur die Adressen sondern dokumentiert auch die Anrufe an die Kontakte mit. Eine Anwahl der Telefonnummer aus anderen Anwendungen, wie zum Beispiuel Outlook, gehört natürlich ebendfalls dazu. Alles ist für einen kleinen Preis auf der Seite PhoneSuite.de erhältlich und vielfältig einsetzbar. Vorbeischauen lohnt sich.

Free-PBX 15 statische IP-Adresse

In manchen Netzwerken ist es erforderlich der Telefonanlage ein statsiche IP-Adresse zu geben. Dies kann nicht über die normalen Einstellungen über die Weboberflache erfolgen. Mit anderen Worten für den Laien ist es etwas schwierig und kann bei Fehlern dafür sorgen das die Anlage nicht mehr erreichbar ist. Die Einstellungen lassen sich direkt auf der Anlage (Tastatur und Bildschirm an der Telefonanlage) oder per SSH einstellen. Beim Einsatz über SSH geht allerdings die Verbindung nach dem Ändern der Konfigurationsdatei meist verloren.

Folgende Schritte sind erforderlich:
1. einloggen als root (mit einem SSH Client oder an der Anlage. Nicht über die Weboberfläche !)
2. wechsel in das Verzeichnis cd /etc/sysconfig/network-scripts
3. mit dem Editor eurer Wahl, VI oder NANO die Datei ifcfg-eth0 (kann bei euch auch ifcfg-eth1 oder ähnlich sein) bearbeiten
4. die Zeile BOOTPROTO=dhcp ändern auf BOOTPROTO=none (Das System soll sich keine IP-Adresse selbst besorgen)
5. die Zeilen
NETMASK=255.255.255.0
IPADDR=192.168.0.10
GATEWAY=192.168.0.1
einfügen. (Die IP-Adresse und das Gateway natürlich auf euer Netzwerk anpassen)
6. Die Einstellungen speichern.
7. Jetzt noch den Netwerkdienst neu starten mit: service network restart

FreePBX 13 Internal Server Error 500

Dieses HowTo ist für Freepbx 13 auf einem Debian 8 System

Nach einem Update von Freepbx kann es vorkommen das man sich nicht mehr auf die Adminoberfläche einloggen kann. Es wird dann Internal Server Error 500 angezeigt. Das bedeutet das im Apache das rewritemodul nicht aktiviert ist. Um den Fehler Internal Server Error 500 zu fixen geht man folgendermaßen vor:

  • Über die Konsole einloggen
  • a2enmod rewrite eingegeben
  • service apache2 restart eingeben

Fertig.