Asterisk-Telefonserver auf einem Raspberry Pi – Installation und Konfiguration


In English——På svenska——En español——En français

Wichtiger Hinweis: Leider verfälschen die Google-Übersetzungen die Quellcodes. Bitte öffnet den Quellcode in einem anderen Fenster, wie es das nachstehende Bild zeigt. Von dort lassen sich die Quellcodes auch leichter herauskopieren:

2.11.2022

Diese Seite richtet sich an jene, welche einen Asterisk-Telefon-Server auf einem Raspberry Pi betreiben möchten und später ein kleines Netzwerk aus Asterisk-Servern planen, um ein eigenständiges Telefonnetz aufzubauen. Los geht es mit der Installation von Raspbian und Asterisk auf einem Raspberry Pi und dann nach Lust und Laune immer tiefer in die Programmierung von Asterisk. Selbstverständlich muss es nicht unbedingt ein Raspberry Pi sein. Andere Linux-Rechner können selbstverständlich auch als Plattform für Asterisk dienen. Allerdings sollte ein Telefon-Server im Dauerbetrieb laufen und dafür eignet sich ein Raspberry Pi, weil er sehr wenig Strom benötigt und Hunderte von Telefon-Teilnehmern bedienen kann.

Liebhaber alter und neuer Fernmeldetechnik sind als Teilnehmer auf meinem Asterisk-Server immer gerne  willkommen. Voraussetzung ist zum Beispiel nur eine meist vorhandene FritzBox, in der sich weitere Telefonanbieter eintragen lassen. Kurze Mail an asterisk ätt janson-soft punkt de reicht.

Ein Teilnehmer meines Telefonserver hat sich für seine Telefonnummern mit einem kleinen Kunstwerk bedankt. Der lustige Frosch aus Kupfer  begrüßt ab jetzt bei Wind und Wetter jeden Besucher.

Außerdem sind weitere Betreiber kleiner Asterisk-Server gesucht, die sich untereinander über IAX2 verbinden möchten. Bis jetzt ist mein Server mit drei weiteren Servern verbunden, die über Vorwahlen erreichbar sind.

Von der Installation des Betriebssystems auf den Raspberry bis zu den Feinheiten der Asterisk-Programmierung ist nachfolgend als Schritt für Schritt erklärt:

Mein Telefon-Server läuft rund um die Uhr auf einem Raspberry Pi 3 B+ und versorgt Teilnehmer in halb Europa
Hurra! Mein Asterisk-Telefon-Server-Tutorial ist fertiggestellt – 9. März 2023: Das Tutorial besteht aus genau 40 Abschnitten und es ermöglicht Anfängern, auf einem Raspberry Pi einen eigenen Telefon-Server zu betreiben und diesen mit anderen Asterisk-Servern zu vernetzen. Zusätzlich sind zahlreiche wirkungsvolle Schutzmaßnahmen wie APIBAN und Fail2Ban beschrieben, um einen sicheren Betrieb zu gewährleisten. Asterisk läuft bei mir dank APIBAN jetzt wartungsfrei rund um die Uhr. Das Tutorial beinhaltet auch die Programmierung von AGI-Skripten auf Python und anderen Programmiersprachen, wodurch es fast keine Grenzen bei der Umsetzung gibt. – weiter

Jeder Teilnehmer erhält Infomaterial für den schnellen Einstieg.
Asterisk-Telefon-Provider ermöglicht seinen Teilnehmern kostenloses Telefonieren – 11. Mai 2022: Mein experimenteller Telefon-Provider auf der Basis von Asterisk ermöglicht seinen Teilnehmern das Führen von kostenlosen Telefonaten und bietet darüber hinaus Möglichkeiten, die über das Telefonieren hinausgehen. Deshalb ist er für technisch interessierte Teilnehmer besonders interessant. Etwa die Hälfte der Teilnehmer besitzt eine Amateurfunklizenz. Viele interessieren sich für alte und neue Fernmeldetechnik. Einige beschäftigen sich auch mit der Asterisk-Programmierung und betreiben eigene Asterisk-Server. Es gibt auch Teilnehmer, die einfach nur telefonieren wollen. – weiter

Der Raspberry kommt ohne Betriebssystem daher. Wie installiere ich das Betriebssystem und wo bekomme ich es?

Raspberry Pi 3 B im Gehäuse.
Installation des Betriebssystems Raspbian (Raspberry Pi OS) auf einem Raspberry Pi – 23.12.2021: Im Grunde ist die Installation des Linux-Betriebssystems Raspbian (Raspberry Pi OS) auf einem Raspberry Pi denkbar einfach, wenn alles gut geht. Doch manchmal liegt die Tücke im Detail.

Kinderleicht ist es, wenn das neueste Raspbian einwandfrei funktioniert. Das war bei mir leider nicht mehr der Fall, weil im Root-Modus die Menüleiste fehlt. Mir blieb nichts anderes übrig ein altes Betriebssystem zu installieren und es mit einem Update und Upgrade zu versehen. – weiter

Wie komme ich von Windows auf meinen Raspberry?

Mit dem FTP-Client FileZilla gelingt von Windows aus der Zugriff auf Raspberry-Dateien. Der Raspberry kann das von Haus aus.
Von Windows auf den Raspberry Pi zugreifen – 5.12.2021: Auf meinem Raspberry Pi betreibe ich einen kleinen SIP-Server mit Asterisk. Von Windows 10 aus möchte ich direkten Zugriff auf die Asterisk-Konsole und auf die Kommandozeilenebene (CLI) des Raspbian haben. Außerdem möchte ich zur Datensicherung und zu Konfigurationszwecken die Konfigurationsdateien von Windows aus sichern und verändern können. Dies erspart einen zweiten Bildschirm. – weiter

Ab hier geht es los mit der eigentlichen Installation und Programmierung  / Konfiguration von Asterisk. Im ersten Schritt sind wir froh, wenn wir mit zwei Telefonen Gespräche führen können:

Zu Testzwecken läuft meine Asterisk-Telefonanlage auf einem alten Notebook mit Lubuntu
Eine ganz einfache Asterisk-Konfiguration als Haustelefonanlage für die allerersten Schritte mit Asterisk – 22.12.2022: Für den absoluten Anfänger ist diese Konfiguration geeignet, um schnell erste Erfolge mit Asterisk vorweisen zu können, um ein paar Telefone über das eigene LAN (das lokale Netzwerk) als Haustelefonanlage zu verbinden. In einem weiteren Schritt lassen sich die Telefone über das Internet weltweit erreichen. Unser Ziel ist ein eigenes Telefonsystem, das uns von kommerziellen Anbietern unabhängig macht. – weiter

Für die ersten Schritte mit Asterisk sind die drei wichtigsten Konfigurationsdateien bereits einsatzbereit vorkonfiguriert.
Einfache Asterisk-Konfiguration für zwei SIP-Telefone – 6.11.2022: Für den Einsteiger stellt dieser Artikel eine einfache Asterisk-Konfiguration vor, die es ermöglicht mit zwei Telefonen mit dem SIP-Protokoll über das Internet zu telefonieren. Wenn dies klappt, haben wir die größte Hürde für den Einstieg in Asterisk genommen. – weiter

Die meisten Fritz!Boxen beherrschen Telefonie mit VoiP
Einen neuen Telefonanschluss in eine Fritz!Box eintragen – 7.11.2022: Eine Schritt-für-Schritt-Anleitung wie man weitere SIP-Accounts in seine FritzBox einträgt. Die Account-Daten erhält man von seinem Telefonanbieter. – weiter

 

Auf einem Raspberry Pi kann ein vollwertiger SIP-Server mit der Telefonsoftware Asterisk laufen, der zudem mit Fail2Ban vor Angriffen aus dem Internet geschützt ist.
Asterisk mit Fail2Ban und VoIPBL auf einem Raspberry Pi installieren und konfigurieren – 8. Oktober 2020: Mein kleiner Asterisk-SIP-Server ist vor einigen Tagen von einer alten FritzBox 7170 auf einen Raspberry Pi 3 B+ umgezogen. Zur Sicherheit wurde noch Fail2Ban installiert und konfiguriert, damit er vor mehrfachen erfolglosen Verbindungsversuchen, die Passwörter knacken wollen, geschützt ist. Dies hat sich als notwendig erwiesen, da mein SIP-Server nicht nur eine Haustelefonanlage ist. Die Nebenstellen können sich über das Internet von überall auf der Welt verbinden. – weiter

Der Asterisk-Server läuft hinter einem Router im LAN auf einem Raspberry Pi 3 B+. Als Betriebssystem dient Raspbian.
Eine einfache Asterisk-Konfiguration für einen SIP-Server als Telefonanlage – 15.10.2020: Die hier vorgestellte Asterisk-Konfiguration dient als Muster für einen einfachen SIP-Server, der als Telefonanlage hinter einem Router arbeitet. Die Nebenstellen des SIP-Servers sind sowohl innerhalb des eigenen LANs als auch über das Internet erreichbar. Außerdem ermöglicht dieses Konfigurationsbeispiel Zugänge aus anderen Netzen über zwei fremde Provider. Über diese beiden Provider kann mit Hilfe von Vorwahlen das Einwählen in andere Netze stattfinden.

Auf dieser Seite sind zusätzlich jede Menge Softwarelösungen für Asterisk vorgestellt.

Außerdem sind noch verschiedene Testnummern integriert. Der hier vorgestellte Code dient als erweiterbares Schema und er wurde auf Asterisk 1.4.22 und auf Asterisk 16.2.1 über ein Jahr lang in einem realistischen Dauereinsatz getestet. Die Asterisk-Software steht kostenlos zur Verfügung. – weiter

150pxvorschaubildphonerliteverschluesselung
Wenige Änderungen in der Asterisk-Konfiguration sind notwendig.
Verschlüsselung von Telefonaten mit TLS und SRTP für Asterisk und PhonerLite – 20.4.2024: Beschreibung der Konfiguration für eine Verschlüsselung mit TLS, SRTP und SARV von Telefonverbindungen unter Verwendung des kostenlosen SIP-Softphones PhonerLite für Windows und einem Asterisk-Telefon-Server, der dazu ebenfalls zu konfigurieren ist. – weiter

Ich muss meinen Asterisk-Server vor Angreifern schützen. Fail2Ban alleine reicht meistens nicht:

Fail2Ban bietet bereits vorgefertigte Regeln für dem Schutz eines Asterisk-Servers an.
Fail2Ban für Asterisk installieren und konfigurieren – 28. Februar 2023: Fail2Ban ist ein Programm, das auf einem Server läuft und Log-Dateien von Asterisk überwacht, um ungewöhnliche Aktivitäten aufzuspüren und diese in Echtzeit zu blockieren. Es ist ein wichtiger Bestandteil der Sicherheitsstrategie, da es verhindert, dass unauthorisierte Nutzer auf den Asterisk-Server zugreifen und somit sensible Daten oder Dienste manipulieren oder zerstören. Fail2Ban minimiert das Risiko von Angriffen auf Asterisk, indem es potenzielle Bedrohungen schnell erkennt und automatisch blockiert, bevor sie Schaden anrichten können. – weiter

Liste der von Iptables gesperrter SIP-Scanner
SIP-Scanner blockieren, die Fail2Ban nicht entdecken kann – 17.1.2022: Wenn im Asterisk-CLI Meldungen wie “Timeout on … on non-critical invite transaction.” als “WARNING” auftreten, handelt es sich meistens um einen Angriff durch einen SIP-Scanner. Sie sind für Betreiber von Asterisk-Servern eine Gefahr, da Fail2Ban oft nicht in der Lage ist diese unerwünschten Eindringlinge zu blockieren. Manchmal treten die Attacken der SIP-Scanner massenhaft auf und können sogar den Betrieb eines Asterisk-Servers empfindlich stören. Nachfolgend eine Lösung ohne Einsatz nicht ausreichend getesteter Skripte, die den Asterisk-Server eventuell zum Abstürzen bringen könnten. – weiter

 

https://www.kwancro.com/honeypotdata/ Hier gibt es die Daten für die Erstellung von Blacklisten zum Schutz von SIP-Servern
Asterisk: SIP-Scanner-Blacklist für Iptables selbst erstellt – 28. Februar 2023: Da mir Tools für die automatische Beschaffung und Verwaltung von SIP-Scanner-Blacklisten  zu unsicher sind und sie das System im schlimmsten Fall beschädigen können, bin ich dazu übergegangen mir die Blacklisten selbst zu erstellen. Mit entsprechenden Python-Skripten beschränkt sich der wöchentliche Aufwand nur auf ein paar Minuten. – weiter

APIBAN schützt SIP-Server durch automatisiert erstellte Blacklists, die immer auf dem aktuellsten Stand sind
APIBAN schützt SIP-Telefon-Server automatisch vor bösartigen Angriffen aus dem Internet – 2. Februar 2023: APIBAN ist ein kostenloser Dienst, der zum Beispiel für Asterisk-SIP-Server laufend aktualisierte Blacklists böswilliger IP-Adressen zur Verfügung stellt, die automatisch in regelmäßigen Abständen in Iptables eingetragen werden. Dies bewerkstelligt ein kleines Skript. Damit die Blacklist in Iptables nicht zu groß wird, bleiben nur die 250 neuesten Einträge in Iptables bestehen. Ältere Einträge werden automatisch aus Iptables entfernt. Man muss sich um die Pflege der Blacklists im Idealfall nicht mehr kümmern. – weiter

Mit Softphones wie SessionTalk bin ich auch von unterwegs erreichbar und kann über meinen Asterisk-Server kostenlos oder wenigstens kostengünstig telefonieren:

Das SIP-Softphone SessionTalk auf einem Smartphone.
SessionTalk, ein praktisches SIP-Softphone für Android und das Iphone – 1.05.2022: SessionTalk ist ein kompaktes und praktisches SIP-Softphone für Android und das Iphone. Die Einrichtung eines SIP-Accounts hat sich als einfach gestaltet. Es ist selbstverständlich kostenlos und kommt ohne Werbung aus. Zum finden ist es zum Beispiel im Google Playstore. SessionTalk ist besonders für Anfänger empfehlenswert. – weiter

Softphone Sipnetic auf einem Smartphone installiert
Asterisk Sip.conf für instabile WLAN- u. Mobilfunkverbindungen optimieren – 23. Februar 2023: Wenn sich Softphones auf Smartphones bei schlechten WLAN- oder Mobilfunkverbindungen ständig an- und abmelden oder die Sprache abgehackt ist, können diese Störungen durch bestimmte Einstellungen in der sip.conf des Asterisk-Servers verringert oder beseitigt werden. – weiter

 

Testnummern helfen beim Service und Testen des Asterisk-Servers:

Wie klingt dein Telefon für deinen Gesprächspartner? Mit dieser Testnummer für Asterisk lässt sich die eigene Stimme abhören. Die Nummer ist auch zum Testen von Wählscheiben-Telefonen geeignet.
Asterisk-Testnummer zum Prüfen der Sprach- und Verbindungsqualität – 7.12.2021: Mit dieser Testnummer für Asterisk lässt sich die eigene Stimme abhören, um die Tonqualität seines Telefons beurteilen zu können. Sie funktioniert selbst mit alten Wählscheibentelefonen. Ein Muss für jeden, der alte und neue Telefone restauriert und repariert. Bis die Nummer zu meiner Zufriedenheit lief, hat es eine Weile gedauert. – weiter

Ist das Telefon korrekt angeschlossen und in Ordnung? Ein Testanruf gibt Auskunft.
Eine universelle Testnummer für Asterisk mit einem automatischen Rückruf – 2. Oktober 2021: Wer einen Asterisk-Server betreibt, möchte seinen Teilnehmern eine Testnummer zur Verfügung stellen, mit der sich die Funktionalität des Telefons oder Endgeräts und der korrekte Anschluss überprüfen lässt. – weiter

Online lassen sich Audio-Dateien in Formate umwandeln, die für Asterisk geeignet sind. Aber es geht noch viel mehr.
Erzeugen von Telefon-Ansagen in verschiedenen Sprachen – 3.11.2022: Für einen Anrufbeantworter oder meinen Asterisk-Server benötige ich Sprach-Ansagen in verschiedenen Sprachen. Die weiblichen oder männlichen Stimmen sollten professionell und deutlich klingen. Wie mache ich das für private Zwecke ohne einen Cent dafür zu zahlen? Und alles soll möglichst online erstellt werden können. – weiter

Wir bilden ein Netzwerk aus vielen kleinen Asterisk-Servern und sind Teil einer interessanten Gemeinschaft:

Mit dem IAX2-Protokoll lassen sich Asterisk-Server über das Internet verbinden.
Zwei  Asterisk-SIP-Server über IAX2 verbinden – 24.12.2021: Zwei Asterisk-Telefon-Server lassen sich über das IAX2-Protokoll mit wenig Aufwand verbinden. Dabei ist sogar das  Trunking möglich. Das heißt, dass ganze Nummernblöcke des anderen Asterisk-Servers direkt angewählt werden können. Sollten sich Nummernblöcke überschneiden, können Vorwahlnummern zum Einsatz kommen. – weiter

 

Ausschnitt aus der iax.conf
Mehrere Asterisk-Server über das IAX2-Protokoll verbinden – 5.1.2022: Mehrere Asterisk-Server lassen sich mit Hilfe des IAX2-Protokolls zu Netzwerken verbinden, deren Asterisk-Server über Durchwahlen erreichbar sind. Sind die  Server über das Internet verbunden, müssen in den Routern nur der Port 4569 UDP weitergeleitet werden. Über diesen Port lassen sich eine große Anzahl von  Gesprächen gleichzeitig führen. – weiter

 

Videotelefonie geht auch:

Video-Telefonie über das SIP-Protokoll mit Asterisk 16.2.1 und dem kostenlosen Softphone MicroSip für Windows 10
Video-Telefonie mit Asterisk – 27. September 2021: Der kleine SIP-Server auf der Basis eines Raspberry Pi und Asterisk ist sogar in der Lage zusätzlich Video-Telefonate zu bewältigen. Dazu sind nur wenige Zeilen in der sip.conf hinzuzufügen. Ein Video-Telefonat belastet die CPU des Raspberry Pi 3 B+ mit etwa 5 bis 6%. Getestet habe ich die Konfiguration wieder auf Asterisk 16.2.1. Die Bildqualität ist je nach gewählter Bandbreite und Kamera hervorragend und übertrifft die der mir bekannten Messenger-Dienste. Abgesehen davon möchte ich nicht mehr von bestimmten externen Anbietern abhängig sein, von denen ich nicht weiß, wie sie meine Daten verwerten. – weiter
Konfiguration von Linphone für Android als Überwachungskamera.
Altes Smartphone als Überwachungskamera über das SIP-Protokoll – 12.10.2021: Alte – und natürlich auch neue – Smartphones lassen sich als Überwachungskameras einsetzen.  Der Videostream lässt sich über Wlan oder über das Mobilfunknetz von überall auf der Welt empfangen. Getestet habe ich das Verfahren mit meinem eigenen Asterisk-Server.  Nicht jeder betreibt einen eigenen  Asterisk-Server. Es müsste deshalb auch über das selbstverständlich kostenlose SIP-Netz von Linphone funktionieren. – weiter

Fax ist eher ein Hobby:

MinoltaFax 160 Baujahr 1991. Es lässt sich an einer FritzBox als ATA betreiben, um das Fax mit dem Asterisk-SIP-Server zu verbinden.
Faxweiche für Asterisk als Software-Lösung – 7.12.21: Mit einer Faxweiche für Asterisk als Software-Lösung lässt sich an einer einzigen Telefonnummer gleichzeitig ein Telefon und ein Fax anschließen. Die mit wenigen Programmzeilen umgesetzte Faxweiche erkennt die eingehenden Faxsignale und leitet die Telefonverbindung je nach dem entweder zum Telefon- oder zum Faxanschluss weiter. –weiter

Venta Fax ist ein Softphone für Windows, welches das SIP-Protokoll und den Telefaxbetrieb beherrscht.
Telefax-Betrieb mit einem SIP-Softphone und einem alten Faxgerät – 3.12.2021: Das Verschicken und Empfangen von Telefaxen kommt immer mehr aus der Mode. Mit E-Mails geht es viel schneller und billiger. Zum Testen alter Telefaxgeräte, die in meinem privaten Telefonnetz zum Einsatz kommen, habe ich für die Gegenstelle nach Lösungen gesucht. – weiter

Fiktives Faxgerät von der KI GenCraft erzeugt (Bildquelle: GenCraft)
Faxempfang auf Asterisk mit und ohne E-Mail-Weiterleitung – 2.4.2024: Der Empfang von Faxen lässt sich in Asterisk mit ein paar Programmzeilen umsetzen. Sie ist aber einfach zu verstehen und beliebig ausbaufähig. Getestet mit Asterisk 16 auf einem Raspberry Pi. Wir müssen nur in der sip.conf und in der extensions.conf  ein paar Zeilen hinzufügen und noch einen Ordner anlegen und freigeben, in welchem die Faxeinrichtung die Faxe als TIFF-Dateien ablegt. Anschließend gibt es noch eine Lösung mit einer E-Mail-Weiterreichung der Faxe. – weiter

Ein Smartphone hat eine E-Mail mit einem Fax im Anhang erhalten
Faxempfang auf Asterisk mit Weiterleitung als TIFF-Datei im E-Mail-Anhang – 9.4.2024: Eine schrittweise Anleitung, wie man den Faxempfang mit einer E-Mail-Weiterleitung auf einem Asterisk-Telefon-Server realisiert. Getestet mit Asterisk 16 und Raspbian Buster (Debian) auf einem Raspberry Pi 3 B. Die Wahlregel in der extensions.conf verschickt nach dem  Faxempfang automatisch eine E-Mail mit einer TIFF-Datei als Anhang, die dem empfangenen Fax, das aus mehreren Seiten bestehen darf, entspricht.  Für das Verschicken der E-Mails sorgt das Programm Mutt, das entsprechend zu konfigurieren ist. – weiter

Filezilla A Pdf Raspberry
Die zu verschickende PDF-Datei muss sich in einen Ordner geschoben werden. Dann eine Telefonnummer wählen.
PDF-Dateien als Faxe mit Asterisk versenden – 11.04.2024: Die Telefonsoftware Asterisk kann auch Faxe verschicken. Allerdings nur, wenn diese als TIFF-Dateien in einem ganz bestimmten Format vorliegen. Das hier vorgestellte Skript wandelt die als Fax zu verschickenden PDF-Dateien in das notwendige TIFF-Format um und versendet sie dann als Fax. – weiter

Textnachrichten verschicken und Chatten:

Chatten mit dem Softphone Sipnetic für Android über das SIP-Protokoll.
Verschicken von Textnachrichten über das SIP-Protokoll mit Asterisk – 3.11.2022: Ab Asterisk 11 lassen sich  Textnachrichten über das SIP-Protokoll verschicken. Vorrausetzung ist, dass die Endgeräte diese Funktion ebenfalls unterstützen. Die meisten Softphones sind dazu in der Lage. Für den Empfang der Texte müssen die empfangenen Endgeräte zudem eingeschaltet sein. Eine Zwischenspeicherung findet leider nicht statt. – weiter

Wir können uns jetzt in Gruppen unterhalten. Welche Telefongesellschaft bietet das?

Asterisk-CLI während einer Telefonkonferenz
Telefon-Konferenzschaltungen mit Asterisk und Confbridge -25. Juni 2021: Mit der Telefon-Software Asterisk lassen sich auch Telefon-Konferenzen schalten. Mehrere Teilnehmer können sich dann in Konferenzräumen treffen und unterhalten. In meinem Beispiel habe ich die Teilnehmerzahl auf 10 begrenzt, obwohl noch mehr Teilnehmer möglich sind. Für die Einrichtung ist die confbridge.inf zu konfigurieren und die extensions.conf zu ergänzen. Weiterhin sind noch zwei txt-Dateien anzulegen. Und schon ist Asterisk für Konferenzen fähig. Das nachfolgende Beispiel beschränkt sich auf die Einrichtung eines Konferenzraums. Nachträglich wurden 4 weitere Konferenzräume eingerichtet. – weiter

Omas Telefon wird lauter:

Mit Asterisk leise Telefone lauter stellen.
Zu leises Telefon mit Hilfe einer Asterisk-Konfiguration lauter stellen – 15. Mai 2022: Ein gebraucht erworbenes DECT-Telefon wurde von den Gesprächsteilnehmern am anderen Ende der Leitung als eine Idee zu leise empfunden. Selbst in den Service-Einstellungen fand sich keine Einstellung die Mikrofonempfindlichkeit zu erhöhen. Was tun? – weiter

Mit Sipbroker gelangen wir kostenlos in sehr viele Telefonnetze:

SIP Broker ermöglicht mit Vorwahlen kostenloses Telefonieren in über 2000 VoIP-Netze.
Mit SIP Broker kostenlos in über 2000 öffentliche VoIP-Telefonnetze weltweit telefonieren – 22. Mai 2022: SIP Broker ist ein kostenloser Service, welcher kostenlose Telefonate zu über 2000 verschiedenen Telefonnetzen ermöglicht, die über die ganze Welt verteilt sind. Allerdings funktioniert der Dienst nur mit bestimmten Wahlregeln, die man entweder in seinem IP-Telefon oder in Asterisk eintragen muss. Nachfolgend zeigt dieser Artikel, wie man seinen Asterisk-Server für SIP Broker konfiguriert und befähigt. – weiter

Für Liebhaber der alten elektromechanischen Vermittlungstechnik, die ihrem Asterisk-Server eine persönliche Note vergeben möchten:

Mechanisch erzeugte Signaltöne und die unvermeidbaren Störgeräusche gaben jeder Vermittlungsstelle eine persönliche Note.
Die Klangwelten der alten elektromechanischen Fernsprech-Vermittlungstechnik – 14. November 2022: Die elektromechanische Vermittlungstechnik vergangener Zeiten war geprägt durch eigentümliche Störgeräusche. Nicht nur die Schaltgeräusche der elektrischen Relais waren zu hören. Durch das Übersprechen der analogen Leitungstechnik konnten abgesehen vom unvermeidlichen Rauschen auch die Gespräche der Nachbarkanäle erahnt werden. Die Signaltöne der damaligen amerikanischen Vermittlungstechnik waren vielfältig und klangen durch ihre mechanische Erzeugung unregelmäßig.  Das damalige Telefonnetz hat etwas Lebendiges durch seine unterschiedlichen Klänge und Nebengeräusche, die zum Glück von Evan Doorbell für die Nachwelt dokumentiert wurden. – weiter

Oszillogramm eines alten Freitons, der durch eine mechanische Rufmaschine erzeugt wurde.
Mein Asterisk-Server klingt jetzt wie eine alte elektromechanische Vermittlungsstelle – 10. Juni 2022 (zuletzt am 14. Juni 2022 aktualisiert): Mein Ziel war es meine kleine Asterisk-Telefonanlage auf einem Raspberry Pi wie eine alte elektromechanische Vermittlungsstelle wirken zu lassen.

Alles begann mit dem Ersetzen des Freitons. Der Freiton ist der Ton, den der Anrufende hört, wenn es beim Angerufenen am anderen Ende der Leitung klingelt. Der Freiton lässt sich in Asterisk durch eine Audiodatei ersetzen. Es gibt Audiodateien mit historischen Freitönen, die von alten Ruf- und Signalmaschinen erzeugt wurden.

Andere Hörtöne wie das Besetztzeichen und Ansagen lassen sich ebenfalls einbauen, damit die Asterisk-Telefonanlage eine persönliche Note erhält. Man kann sie zum Beispiel akustisch wie eine alte elektromechanische Vermittlungsstelle erscheinen lassen. Die Audiodateien können auch das typische Rauschen und Übersprechen der alten Ferngespräche liefern.  weiter

Ein Telefon mit Freisprecheinrichtung dient als Webradio:

Ein Telefon mit Freisprecheinrichtung wird mit Asterisk zum Webradio.
Mit Asterisk den Audio-Stream von Web-Radio-Stationen empfangen – 3.11.2022: Mit der Telefonsoftware Asterisk gelingt es den MP3-Audiostream von Webradio-Stationen zu empfangen. Ein Telefon mit Freisprecheinrichtung wird dann zu einem Webradio. Jede Station bekommt eine Telefonnummer zugeteilt. Der Frequenzumfang ist eingeschränkt. Für den Empfang von Sprache reicht es aber. – mehr

Mit Callthrough ist unser Asterisk-Server über viele Netze erreichbar:

Tastenfeld mit Rautetaste eines Telefons, das das Mehrfrequenzwahlverfahren beherrscht.
CallThrough-Funktion für Asterisk mit der Extensions.conf – 15. Februar 2023: Was ist CallThrough? Der Anrufer wählt zunächst eine Einwahlnummer. Per Sprachaufforderung wird er danach gebeten die gewünschte Zielnummer einzugeben. In diesem Beispiel wird die Zielnummer erst nach Eingabe des Raute-Symbols abgeschickt. Der Anrufer bekommt dann den Sprachhinweis, dass die gewünschte Verbindung aufgebaut wird. CallThrough kommt zum Beispiel zum Einsatz, wenn aus technischen Gründen eine Durchwahl nicht möglich ist. Dieser Artikel stellt eine CallThrough-Funktion vor die in der extensions.conf als Wahlregel realisiert wurde. In einem Link wird zudem eine Alternative mit einem  AGI-Skript in Python vorgestellt.  – weiter

Falls man im Urlaub für wenig Geld auf einem schwedischen Flohmarkt ein Wählscheibentelefon gefunden und gekauft hat:

Eine schwedische Wählscheibe hat eine abweichende Anordnung der Ziffern, was das Wählen erschweren kann, wenn das Telefon zum Beispiel an einer FritzBox angeschlossen ist.
Wie bedient man ein schwedisches Wählscheibentelefon? – 23.10.2022: Schwedische Wählscheibentelefone besitzen ein unübliches Ziffernblatt. Die aufgedruckten Ziffern sind um eine Stelle entgegen des Uhrzeigersinns verschoben. Das macht das Wählen an einer normalen Nebenstellenanlage oder im Rest der Welt außerhalb Schwedens zum Problem. Wie wählt man unter diesen erschwerten Bedingungen die richtigen Nummern? – weiter

Und nun kommen die Feinheiten. AGI-Skripte für Asterisk verwenden:

Der Programmier-Code ist fehlerfrei. Trotzdem läuft das AGI-Skript nicht. Warum verflixt noch einmal?
AGI-Skripte für Asterisk unter Windows editieren – Was ist zu beachten? – 9. März 2023: Windows ist weit verbreitet. Deshalb schreiben nicht wenige ihre AGI-Skripte auf Windows, um sie dann in ihren Raspberry Pi zu kopieren. Wer einige Dinge nicht beachtet, wird die Skripte nicht zum Laufen bekommen. Hier sind die Fallstricke beschrieben, die mich viel Zeit gekostet haben. Die Beispiele beziehen sich auf Python. Sie haben für andere Programmiersprachen die entsprechende Gültigkeit. – weiter

Rotes schwedisches Ericsson Dialog. Die Ziffern sind versetzt angeordnet. Ein kleines Skript für Asterisk löst das Problem.
Schwedische und neuseeländische Wählscheiben: AGI-Skripte für Asterisk in Python oder PHP wandeln die gewählten Nummern um – 1.11.2022: Schwedische Wählscheiben besitzen gegenüber den meisten Wählscheiben auf der Welt eine andere Bedruckung. Die Ziffern sind um eine Stelle entgegen des Uhrzeigersinns verrutscht dargestellt. Wer sich an den aufgedruckten Ziffern eines schwedischen Wählscheibentelefons orientiert, wählt falsch, wenn das Telefon z.B. an einer üblichen Telefonanlage, an einem Asterisk-Server oder an einer FritzBox angeschlossen ist. – weiter

AGI-Skripte für Asterisk lassen sich auch mit Python programmieren
Mathe-Trainingsprogramm in Python mit AGI für Asterisk-Server – 4.11.2022: Dieses kleine Mathe-Trainingsprogramm dient zum Üben der Subtraktion von Zahlen. Es wurde auf Python geschrieben und läuft in Verbindung mit AGI auf Asterisk-Servern. – weiter

Lottoschein aus dem Jahr 1957 (Bildquelle: Wikipedia)
Lottozahlengenerator als AGI-Skript in Python für Asterisk mit Hilfe von ChatGPT erstellt – 9.02.2023: Dieses AGI-Skript ist für den Einsatz in einer Asterisk-Telefonanlage gedacht und dient dazu, Sounddateien und Zahlen abzuspielen. Nach einer Verzögerung von einer Sekunde startet das Skript mit dem Abspielen einer Sounddatei und weiteren Verzögerungen. Anschließend werden per Zufallsgenerator sechs Zahlen zwischen 1 und 49 ausgewählt, sortiert und mit Verzögerungen ausgesprochen. Das Skript endet schließlich mit einer weiteren Sounddatei und Verzögerungen.

Bemerkenswert ist, dass der Code teilweise mit Hilfe der textorientieren KI-Software ChatGPT in einem Dialog erstellt wurde, der wie ein Gespräch von Mensch zu Mensch erscheint. Selbst dieser Artikel wurde teilweise von ChatGBT verfasst. Außerdem kamen für die Sprachhinweise noch Sprachgeneratoren und Übersetzungsprogramme zum Einsatz. weiter

Ausschnitt aus einem AGI-Skript in Python3
Asterisk AGI-Skript in Python für die Rufweiterleitung mit CallThrough – 14. Februar 2023: Wird dieses AGI-Skript für Python 2.7 oder Python 3 durch einen Telefonanruf aufgerufen, wird der Anrufer durch eine Sound-Datei aufgefordert seine gewünschte Zielnummer in seine Telefontastatur einzugeben. Das Skript wartet maximal vier Sekunden, bis die nächste Ziffer eingegeben wird. Wenn die 4 Sekunden ohne eine Aktion des Anrufers verstrichen sind, wird die bisher eingetippte Abfolge von Ziffern als Zahl an Asterisk übergeben, um damit in diesem Fall eine Nummer zu wählen. Es dient also dazu CallThrough zu ermöglichen. Dieser Artikel stellt in einem Link auch eine Alternative für Callthrough ohne AGI-Skripte vor. – weiter

Auswahlmenüs benötigen ein Telefon mit einer Tastatur, die DTMF-Töne für die Tonwahl erzeugt. Nur sehr alte Tastentelefone können  keine Tonwahl und verwenden noch die Impulswahl
Auswahlmenü (IVR-Menü) für Asterisk als AGI-Skript in Python – 16. Februar 2023: Ein Auswahlmenü, auch IVR-Menü (Interactive Voice Response) genannt, ist eine automatisierte Telefonanwendung, die es dem Anrufer ermöglicht, durch Drücken von Tasten auf seiner Telefontastatur eine gewünschte Option auszuwählen. Es bietet dem Anrufer eine einfache Möglichkeit, auf eine bestimmte Abteilung oder Dienstleistung zuzugreifen, indem er eine bestimmte Tastenkombination drückt, die mit der entsprechenden Funktion oder Person verbunden ist. Es wird oft in Unternehmen und Organisationen eingesetzt, um den Anrufer direkt an die richtige Stelle zu leiten und Wartezeiten und Übertragungen zu reduzieren. – weiter

Ein Telefon mit Tastenblock für die Tonwahl ist notwendig
Auswahlmenü kombiniert mit CallThrough als AGI-Skript in Python für Asterisk – 18. Februar 2023: Mit diesem AGI-Skript in Python für Asterisk gelangt der Anrufende in ein Auswahlmenü. Nach dem Eingeben einer zweistelligen Nummer erhält er Zugang zu externen Telefonnetzen oder zu anderen Telefon-Servern. Nach dieser Vorauswahl kann er eine Zielnummer eintippen, um ein Endgerät im  ausgewählten externen Telefonnetz oder Server zu erreichen. – weiter

Dieses AGI-Skript reagiert auf die Caller-ID des Anrufers und dient als Muster für ähnliche Skripte
Ein AGI-Skript in Python für Asterisk erkennt die Caller-ID und trifft danach Entscheidungen – 9. März 2023: Dieses AGI-Skript in Python gibt die Caller-ID und damit in der Regel die Telefonnummer des Anrufers zurück und verarbeitet sie weiter. Fängt die Nummer nicht mit Null an, wird die Caller-ID als Nummer angesagt. Fängt die Caller-ID mit einer Null an, wird die Nummer als Folge von einzelnen Ziffern aufgesagt. Damit erklärt diese Programm die Prinzipien, wie Caller-IDs eingelesen werden können und anschließend weiterverarbeitet werden. – weiter

Ein AGI-Skript liest die CPU-Temperatur aus und sagt sie telefonisch an.
AGI-Skript in Python sagt die aktuelle CPU-Temperatur des Asterisk-Servers auf – 15. März 2023: Dieses AGI-Skript für Python ist eine nette Spielerei und sagt dem Anrufer die aktuelle Temperatur der CPU des Asterisk-Servers auf. Die Ansage wird wiederholt und ist in meinem Fall auf Englisch. – weiter

Manchmal ist es sehr wichtig zu wissen, ob es kürzlich einen Stromausfall gab.
Laufzeit des Asterisk-Servers mit einem AGI-Skript in Python aufsagen lassen – 18.03.2023: Dieses kleine mit Python realisierte AGI-Skript  sagt die Laufzeit des Linux-Rechners, auf dem Asterisk läuft, gerundet in Tagen an. Da mein Asterisk-Server selbstverständlich im Dauerbetrieb arbeitet, lässt sich ermitteln, wie viele Tage der letzte Stromausfall zurückliegt. Ist man nicht daheim, lässt sich durch einen einfachen Anruf feststellen, ob es kürzlich einen Stromausfall gab. Diese Information kann in bestimmten Fällen sehr wichtig sein. Deshalb gehört dieses Programm auf jede Nebenstellenanlage auf der Basis von Asterisk.- weiter

Ein paar Programmzeilen schrecken Werbeanrufe ab.
AGI-Skript mit Python wertet Caller-IDs eingehender Telefonanrufe aus – 21.03.2023: Dieses in Python geschriebene AGI-Skript für Asterisk liest die Caller-IDs (d.h. die Telefonnummern) der eingehenden Gespräche aus, um zum Beispiel Werbeanrufe abzuschrecken oder bekannte Nummern bevorzugt zu behandeln. Die Präfixe der Ortskennzahlen und Ländervorwahlen lassen sich ebenfalls gezielt auswerten. Das Programm entscheidet mit diesen Informationen die weitere Behandlung der Gespräche. – weiter

Python ist ideal für das Auslesen von Daten
Weltweite Wetterdaten der WWIS-Webseite mit Python auslesen und als AGI-Skript in Asterisk einbinden – 27.03.2023: Hier wird schrittweise erklärt, wie sich weltweite Wetterdaten der WWIS-Webseite mit Python auslesen lassen. Dabei hat mir ChatGPT geholfen und viel Sucherei erspart. Wichtig ist beim Umgang mit ChatGPT eine stufenweise Herangehensweise an die Aufgabenstellung. ChatGPT ist eine große Hilfe. Allerdings sind einigermaßen gute Kenntnisse in Python notwendig, um die Fragen verständlich formulieren zu können. Schrittweise musste das Skript für eine englischsprachige Sprachausgabe vorbereitet werden, wobei zu beachten ist, dass die Sprachausgabe nur die Null und positive Ganzzahlen aufsagen kann. – weiter