Yeaphone
Konfiguration
Die Konfiguration erfolgt in 3 Schritten:
- Einstellung des SIP-Servers über linphonec, die Konsolenversion von Linphone
- Angabe verschiedener Yeaphone-spezifischer Parameter
- Erstellen einer udev-Regel
Einstellen des SIP-Servers
Zunächst wird linphonec aufgerufen, und zwar als jener Benutzer, unter dem später Yeaphone laufen soll.
user@NSLU2:~# linphonec Ready Warning: video is disabled in linphonec. Run with -V option to enable it. linphonec> proxy add Adding new proxy setup. Hit ^D to abort. Enter proxy sip address: sip:sipgate.at Your identity for this proxy: sip:1234567@sipgate.at Do you want to register on this proxy (yes/no): yes Specify register expiration time in seconds (default is 600): 600 Expiration: 600 seconds Specify route if needed: [leer lassen] No route specified. -------------------------------------------- sip address: sip:sipgate.at route: identity: sip:1234567@sipgate.at register: yes expires: 600 -------------------------------------------- Accept the above proxy configuration (yes/no) ?: yes Proxy added. linphonec> Password for 1234567 on "sipgate.at": [Passwort eingeben] Registration on sip:sipgate.at sucessful. linphonec>
Es wurde nun eine Datei ~/.linphonerc im HOME-Verzeichnis angelegt, die die eingegebenen Parameter enthält.
Mit linphonec kann man auch gleich prüfen, ob die VoIP-Verbindung prinzipiell funktioniert, bevor man auf Yeaphone umsteigt. Kommandos müssen jedoch noch über das Terminal und die PC-Tastatur eingegeben werden. Unter Umständen wird jedoch jetzt noch eine andere angeschlossene Sound-Karte verwendet und nicht der Lautsprecher und das Mikrofon des Yealink-Hörers. Yeaphone wählt später selbständig die korrekten Audioeinstellungen aus.
Die wichtigsten Kommandos von linphonec sind:
- help [<Kommando>]
zeigt alle verfügbaren Kommandos bzw. gibt detailierte Hilfe zu bestimmten Kommandos aus - call <Rufnummer oder SIP-Adresse>
wählt die angegebene Nummer oder SIP-Adresse - answer
beantwortet einen eingehenden Anruf - terminate
beendet einen (abgehenden oder ankommenden) Anruf - quit
hebt die Registrierung beim VoIP-Anbieter auf und beendet linphonec
Sobald Anrufe auf diese Weise funktionieren, kann linphonec beendet werden.
Angabe Yeaphone-spezifischer Parameter
Es wird nun die Konfigurationsdatei ~/.yeaphonerc händisch angelegt. Um die Telefonnummern eingehender Anrufe korrekt verstehen und kürzen zu können, sind die Parameter intl-access-code, natl-access-code und country-code anzugeben.
Ein Beispiel für Österreich:
intl-access-code 00 natl-access-code 0 country-code 43
Oder für die USA:
intl-access-code 011 natl-access-code 1 country-code
In ~/.yeaphonerc können auch spezielle Klingeltöne für bestimmte Rufnummern festgelegt werden, wie im folgenden Beispiel gezeigt:
ringtone_default /usr/share/yeaphone/ringtones/default_p1k.bin ringtone_01234567 /usr/share/yeaphone/ringtones/special_p1k.bin ringtone_0555777 doorbell_p1k.bin
Ein relativer Dateipfad bezieht sich hier auf das Verzeichnis ~/.yeaphone/ringtone.
Eine weitere Funktion, die in ~/.yeaphonerc konfiguriert wird, ist die Mindestklingeldauer. Dabei wird angegeben, wie lange es bei einem eingehenen Anruf einer bestimmten Rufnummer mindestens läuten soll, auch wenn der Anrufer bereits aufgelegt hat. Im folgenden Beispiel werden 5 Sekunden eingestellt:
minring_01234567 5
Falls das Display im Ruhezustand außer der aktuellen Uhrzeit auch einen bestimmten Text anzeigen soll, hilft die Option display-id weiter. Das kann v.a. dort Sinn machen, wo mehrere Hörer in unmittelbarer Nähe zueinander betrieben werden und Verwechslungsgefahr bestünde. Beispiel:
display-id " --1234--"
Erstellen einer udev-Regel
Da Yeaphone aus Sicherheitsgründen nicht als root-Benutzer laufen sollte, müssen die Zugriffsrechte jener Dateien angepasst werden, die die Schnittstelle zum Yealink-Treiber bilden. Die folgende Zeile stellt die Gruppe von root auf voip um unter der Annahme, dass der Yeaphone-Benutzer Mitglied dieser Gruppe ist. Die Zeile muss in die Datei /etc/udev/rules.d/99-yealink.rules geschrieben werden.
KERNEL=="event*", ATTRS{name}=="Yealink*", GROUP="voip", RUN+="/bin/sh -c '/bin/chgrp voip /sys$env{DEVPATH}/device/device/*'"
Damit die Regel aktiv wird, muss nun der Hörer einmal kurz abgesteckt und wieder angesteckt werden.
Verwendung
Mit Starten von yeaphone sollten ungefähr folgende Ausgaben auf der Konsole erscheinen:
user@NSLU2:~# yeaphone Ready Registration on sip:sipgate.at successful.
Gleichzeitig erscheint am Display des Hörers das aktuelle Datum und die Uhrzeit, in kurzer Folge diverse Statusmeldungen, danach ist der untere Teil der Anzeige leer. Nun kann über die Tastatur des Hörers gewählt werden und Anrufe können angenommen werden.
Die Bedeutung der Tasten ist:
- vor einem Telefongespräch
- 0-9,*,#
Wählen einer Telefonnummer - C
Löschen der letzten Ziffer der gewählten Nummer - C lange gedrückt
Löschen der gesamten Nummer - <rote Taste>
Löschen der gesamten Nummer - <grüne Taste>
Anruf tätigen - ▲ + <0-9>
Noch keine Ziffern gewählt: Nummer aus Speicherplatz X holen und anzeigen
Bereits Ziffern gewählt: Aktuell angezeigte Nummer auf Speicherplatz X speichern
- 0-9,*,#
- während eines Telefongesprächs
- 0-9,*,#
Erzeugung von DTMF-Tönen - <rote Taste>
Beenden des Gesprächs - VOL+/-
Lautstärke des Lautsprechers anpassen
- 0-9,*,#
- nach einem Telefongespräch (bei angezeigter letzter Nummer)
- 0-9
Wählen einer neuen Telefonnummer - C
Löschen der gesamten letzten Nummer - <rote Taste>
Löschen der gesamten letzten Nummer - <grüne Taste>
Letzte Nummer noch einmal wählen - ▲ + <0-9>
Letzte Nummer auf Speicherplatz X speichern
- 0-9
- bei Läuten des Telefons
- #
Läuten Stummschalten ohne abzuheben - <rote Taste>
Anruf sofort beenden ohne abzuheben - <grüne Taste>
Anruf annehmen
- #
- allgemein
- <rote Taste> lange gedrückt
Stoppen und Starten der VoIP-Verbindung (entspricht Ein-/Ausschalten des Telefons)
- <rote Taste> lange gedrückt
Die Verwendung dieser Software erfolgt auf eigene Gefahr, der Autor übernimmt keinerlei Haftung für allfällige Schäden oder negative Auswirkungen, die durch Installation oder Verwendung dieser Software entstehen.