Wir hatten einen Artikel über die Installation von Asterisk 13 auf Ubuntu, aber wir haben uns nicht mit dem Softphone verbunden und den Anruf getätigt. In dem Artikel ging es nur um die serverseitige Einrichtung. Jetzt werden wir auf diesem Artikel aufbauen und Linphone mit Asterisk 13 verbinden.
Voraussetzungen
- Zwei Ubuntu-Computer im selben Netzwerk (oder Computer und eine VM, in meinem Fall sind es zwei Laptops)
- Einer von ihnen hat Asterisk installiert
Linphone installieren und Asterisk konfigurieren
Die Installation von Linphone ist einfach, geben Sie auf beiden Computern
einsudo apt install linphone
Danach müssen wir Asterisk so einrichten, dass es neue Benutzer akzeptiert. Geben Sie auf dem Asterisk-Rechner
eincd /etc/asterisk/
Hier sind wir in das Verzeichnis gewechselt, in dem sich alle Asterisk-Konfigurationsdateien befinden. Wir brauchen die sip.conf, aber bevor wir sie bearbeiten, sichern wir sie:
sudo cp sip.conf sip.conf.orig
Wenn Sie in die Datei schauen, ist sie riesig. Das Scrollen braucht Zeit, also müssen wir es beschneiden, um alle kommentierten Zeilen und Leerzeichen auszuschließen und nur die Zeilen übrig zu lassen, die als Konfiguration gelten.
Also öffnen wir die Datei mit vi, während wir uns in /etc/asterisk/
befindensudo vi sip.conf
Und in vi geben wir das ein, um Kommentare zu entfernen
:g/^\s*;/d
Dann dies, um Leerzeichen zu entfernen.
:g/^$/d
Was bleibt, ist die eigentliche Konfiguration. Am Ende dieser Konfiguration müssen wir zwei Benutzer wie folgt hinzufügen:
[miki]
type=friend
context=phones
allow=ulaw,alaw
secret=12345678
host=dynamic
[Bobby]
type=friendcontext=phonesallow=ulaw,alawsecret=87654321host=dynamisch
Als nächstes geben wir den Asterisk mit dem Befehl asterisk -rvvv ein und geben in der Asterisk-Eingabeaufforderung
einsip reload
Und dann, um Gleichaltrigen zu zeigen
sip show peers
Linphone verbinden
Starten Sie auf beiden Computern Linphone und rufen Sie den Assistenten auf, um Benutzer hinzuzufügen, mit Passwörtern, die Sie in sip.conf
eingebenDanach sind wir noch nicht bereit anzurufen. Wir müssen einen Wählplan in die extensions.conf schreiben. Lassen Sie uns zuerst ein Backup erstellen und dann eine neue leere Datei erstellen:
sudo mv extensions.conf extensions.conf.orig
sudo nano extensions.conf
In eine leere Datei werden wir den Wählplan einfügen.
[phones]
exten => 100,1,NoOp(First Line)
same => n,NoOp(Second Line)
same => n,Dial(SIP/miki)
same => n,Hangup
exten => 200,1,NoOp(First Line)
same => n,NoOp(Second Line)
same => n,Dial(SIP/bobby)
same => n,Hangup
Lassen Sie uns erklären, was das alles bedeutet
In [] setzen wir Kontext, der in unserem Fall Telefone ist. Wir betreiben Nebenstellen, 100 für Miki und 200 für Boby. Um Dinge innerhalb des Wählplans zu erledigen, verwenden wir Dinge, die Anwendungen genannt werden. Das sind diese Dinge wie NoOp, Dial und Hangup. Lassen Sie uns zuerst die erste Zeile erklären.
Exten steht für Nebenstelle, gefolgt von => und dann sagen wir, welche Nummer der Nebenstelle wir betreiben. Es ist 100, gefolgt von 1 für die Nummer der Zeile. NoOp ist eine Anwendung, die wir für die erste Zeile verwenden. In der zweiten Zeile sieht es anders aus, aber es ist im Grunde dasselbe. Anstelle von exten schreiben wir same, weil wir mit derselben Erweiterung arbeiten, 100.
Das bedeutet, dass Nummer 100 in der zweiten Zeile nicht wiederholt werden muss und wir zu Zeilennummer wechseln, aber auch hier haben wir eine Wendung. Anstatt 2 zu schreiben (was wir auch tun könnten), schreiben wir n, was als nächstes bedeutet. Dafür gibt es einen einfachen Grund. Wenn wir 2 schreiben und dann eine weitere Zeile zwischen 1 und 2 mit neuer Anwendung einfügen, müssten wir alle Zeilennummern ändern. Wenn wir also n schreiben, müssen wir das nicht tun.
Wenn wir uns zur zweiten Erweiterung bewegen, sind wir wieder am Platz eins. Die erste Zeile muss vollständig geschrieben werden, während Karten für den Rest verwendet werden können.
Ersten Anruf tätigen
Nachdem wir einen Wählplan erstellt und gespeichert haben, können wir anrufen. Bevor wir das tun, laden wir zuerst den Dialplan neu. Dies ist ein obligatorischer Schritt, wenn wir eine neue Konfiguration hinzufügen.
asterisk -rvvv
Nach der Eingabe von prompt
dialplan reload
Geben Sie Sternchen ein und sehen Sie sich jetzt unsere Kollegen an
ThinkPad-X220T*CLI> sip show peers
Name/username Host Dyn Forcerport Comedia ACL Port Status Description
bobby/bobby 192.168.1.6 D Auto (No) No 5060 Unmonitored
miki/miki 192.168.1.5 D Auto (No) No 5060 Unmonitored
Wir haben zwei Peers verbunden und können von einem zum anderen telefonieren. Nennen wir Bobby
== Using SIP RTP CoS mark 5
-- Executing [200@phones:1] NoOp("SIP/miki-0000000a", "First Line") in new stack
-- Executing [200@phones:2] NoOp("SIP/miki-0000000a", "Second Line") in new stack
-- Executing [200@phones:3] Dial("SIP/miki-0000000a", "SIP/bobby") in new stack
== Using SIP RTP CoS mark 5
-- Called SIP/bobby
-- SIP/bobby-0000000b is ringing
Wie wir sehen können, funktioniert der Aufruf.
Weitere Anwendungen finden
Um komplexere Wählpläne zu schreiben, müssten Sie mehr Anwendungen verwenden. Sie können Anwendungen in der Asterisk-Eingabeaufforderung auf verschiedene Arten durchsuchen. Wenn Sie beispielsweise Wählanwendungen wünschen, geben Sie core show applications dial
einThinkPad-X220T*CLI> core show applications like dial
-= Matching Asterisk Applications =-
Dial: Attempt to connect to another device or endpoint and bridge the call.
RetryDial: Place a call, retrying on failure allowing an optional exit extension.
-= 2 Applications Matching =-
Es gibt uns zwei Anwendungen, eine, die wir bereits verwendet haben, und eine, die für uns neu ist, RetryDial. Wenn Sie also
eingebencore show application RetryDial
(beachten Sie keine s, nur die Anwendung gefolgt vom Namen), Sie erhalten die ausführliche Hilfedatei für die von Ihnen ausgewählte Anwendung.
Aber angenommen, Sie mögen keine dieser beiden Apps, Sie wollen etwas mehr. Sie können Ihre Suche erweitern, indem Sie eine vagere Definition wie diese hinzufügen
core show applications describing dial
Ich habe 41 Apps bei dieser Suche gefunden.
Schlussfolgerung
Aufbauend auf unserem vorherigen Asterisk-Artikel haben wir gezeigt, wie Asterisk für die Verwendung mit Linphone konfiguriert wird. Wir haben einen Dialplan gemacht und erstmal über unseren Asterisk-Server telefoniert. Außerdem haben wir vorgestellt, wie Sie Anwendungen finden, die Sie zum Schreiben Ihres gewünschten Wählplans benötigen. Vielen Dank fürs Lesen und viel Spaß beim Telefonieren.