[HowTo] Fehlende Funktionen der FBF mittels minimalem Asterisk nachrüsten

Danke erstmal für die Antwort, hier ist die Ausgabe bei einem Anruf:
Code:
  == Using SIP RTP CoS mark 5
    -- Executing [623@incomming:1] Set("SIP/fritz.box-00000002", "CALLERID(name)= Stephanie ") in new stack
    -- Executing [623@incomming:2] Set("SIP/fritz.box-00000002", "CALLERID(num)=**610") in new stack
    -- Executing [623@incomming:3] Set("SIP/fritz.box-00000002", "CALLERID(num)=610") in new stack
    -- Executing [623@incomming:4] Dial("SIP/fritz.box-00000002", "SIP/[email protected],50,or") in new stack
  == Using SIP RTP CoS mark 5
    -- Called SIP/[email protected]
[Sep 23 16:46:44] WARNING[2176]: chan_sip.c:3656 retrans_pkt: Retransmission timeout reached on transmission [email protected]:5060 for seqno 102 (Critical Request) -- See https://wiki.asterisk.org/wiki/display/AST/SIP+Retransmissions
Packet timed out after 32000ms with no response
[Sep 23 16:46:44] WARNING[2176]: chan_sip.c:3685 retrans_pkt: Hanging up call [email protected]:5060 - no reply to our critical packet (see https://wiki.asterisk.org/wiki/display/AST/SIP+Retransmissions).
    -- SIP/sip.cheapvoip.com-00000003 is circuit-busy
  == Everyone is busy/congested at this time (1:0/1/0)
    -- Auto fallthrough, channel 'SIP/fritz.box-00000002' status is 'CONGESTION'
[Sep 23 16:46:44] ERROR[2436]: cdr_csv.c:318 csv_log: Unable to re-open master file /var/log/asterisk//cdr-csv//Master.csv : Permission denied
Vielen Dank schonmal fürs anschauen!
 
Sieht so aus, als käme Asterisk nicht zu sip.cheapvoip.com durch, oder bekommt zumindest keine Antwort von dort.

Kannst Du die Adresse von der Asterisk-Maschine aus pingen?
Sind die NAT-Einstellungen richtig (externhost/externip/nat)?
 
Ping geht:
Code:
PING sip.cheapvoip.com (77.72.174.128) 56(84) bytes of data.
64 bytes from 77.72.174.128: icmp_req=1 ttl=244 time=63.9 ms
64 bytes from 77.72.174.128: icmp_req=2 ttl=244 time=63.9 ms
64 bytes from 77.72.174.128: icmp_req=3 ttl=244 time=64.8 ms
64 bytes from 77.72.174.128: icmp_req=4 ttl=244 time=64.9 ms
64 bytes from 77.72.174.128: icmp_req=5 ttl=244 time=64.7 ms
64 bytes from 77.72.174.128: icmp_req=6 ttl=244 time=64.6 ms
64 bytes from 77.72.174.128: icmp_req=7 ttl=244 time=64.5 ms
64 bytes from 77.72.174.128: icmp_req=8 ttl=244 time=66.0 ms
64 bytes from 77.72.174.128: icmp_req=9 ttl=244 time=64.0 ms
64 bytes from 77.72.174.128: icmp_req=10 ttl=244 time=65.5 ms
^C64 bytes from 77.72.174.128: icmp_req=11 ttl=244 time=62.9 ms

--- sip.cheapvoip.com ping statistics ---
11 packets transmitted, 11 received, 0% packet loss, time 50791ms
rtt min/avg/max/mdev = 62.947/64.568/66.075/0.847 ms
externhost ist mein No-IP Name, der ist korrekt mit der IP des Speedport gesetzt, externip auch. nat = yes müßte ja richtig sein. Bin weiterhin ratlos.
 
Zuletzt bearbeitet:
Neu:
mit Raspbian Jessy als Basis läuft bei mir endlich auch Bluetooth ohne Probleme. Endlich funktioniert der bluez-Stack ohne Probleme.

Kurz zum Stand der Dinge:
Code:
apt-get install bluez bluez-tools
apt-get install asterisk-mobile
Letzteres Kommando tritt an die Stelle der bisherigen Installation von Asterisk.

Anmeldung und Konfiguration von Chan_mobile sowie Pairing des Telefons werde ich demnächst schildern.

Mein Test bestand darin, das Bluetoothhandy zu koppeln und in der extension.conf direkt auf eine Sip-Nebenstelle zu leiten, an die ich die Fritzbox angemeldet habe. AB für diese Nummer aktiviert.
Sobald ich die Handynummer anrufe, geht der FBF-AB ran. Die Ansage ist klar verständlich. Der Text, der n ich drauf spreche, ist klar zu hören.

Damit lohnt es sich, hier weiter zu machen.

Folgende neuen Möglichkeiten ergeben sich:
- Ist man (bzw. zumindest das Handy) zu hause, kann der Parallelruf aufs Handy automatisch ausgeschaltet werden.
- Eingehende Anrufe auf die Handynummer können im ganzen Haus angenommen werden, während das Handy am Ladekabel hängt
- Ein Handy mit All-Net-Flat kann man auch als ausgehende Leitung für Telephonate an den heimischen Telephonen nutzen.
-Da es sich aus Sicht der Fritzbox um eine eigene 'Internetrufnummer' handelt, kann man Handyanrufe auch einzelnen Nebenstellen zuordnen und ggf. je nach Telephon auch unterschiedliche Ruftöne zuweisen.
- Es sollten mit aktivem USB-Hub mit mehreren Sticks auch mehrere Handys anzumelden gehen (noch nicht getestet)
- Eine Blutooth Freisprechanlage (ca. 9€ aus China) könnte genau wie BT-Headsets auch als 'Endgerät' am Asterisk verwendet werden. Zusammen mit den GPIO-Pins ließe sich so spottbillig eine Türsprechanlage mit DSP Rückkopplungsunterdrückung realisieren (noch nicht getestet)

Also, ein kleiner Ausblick, was in den nächsten Wochen und Monaten noch kommt.

Ein Hinweis zu Debian/Raspian Jessy:
Standard bei ssh ist nun, dass Root keinen Fernzugang hat. Hontergrund sind die Brute-Force-Angriffe. Bei der internen Konfiguration eines Headless-devices ist das aber sehr unpraktisch. Ich habe bei mir also root erlaubt (in der ssh Konfigdatei in /etc auf yes gesetzt).
Besser ist natürlich, Authemzifikation üner Schlüsselpaar einzurichten.
 
Wo ist der Danke-Button für alle diese Ideen?
 
Die nötigen Anpassungen für Raspbian Jessie habe ich in den ersten Beitrag eingearbeitet, ebenso die Installation von Bluetooth-Stack und Tools.

Die Einrichtung von Bluetoothgeräten ist noch zu machen; auch die Einbindung in den Wählplan. Mit der aktualisierten Installationsanleitung ist man entsprechend vorbereitet.

Upgradewillige sollten die vorhandenen asterisk.conf, extensions.conf und sip.conf auf einen anderen Rechner kopieren, sicherheitshalber mit win32imager eine Sicherung anfertigen (oder die funktionierende SD-Karte beiseite legen und eine neue nehmen) und nach der geänderten Anleitung neu installieren. Dauerte bei mir weniger als eine Stunde. Die alten configs kopiert man dann auf den neuen Asterisk und erstmal sollte alles wie gehabt funktionieren. Wenn dann die chan_mobile-Einrichtung beschrieben ist, kann man schnell loslegen.
 
Ich habe den Punkt zur Bluetoothanbindung im Eingangspost jetzt ergänzt.
Damit sollte jeder jetzt in der Lage sein, ein Bluetoothheadset als Nebenstelle der Fritzbox zu nutzen und ein Bluetoothandy als GSM-Gateway zu benutzen.
Ich hoffe, es ist nachvollziehbar und es haben sich keine Fehler eingeschlichen (mein Asterisk ist etwas anders eingerichtet und ich habe die Codeelemente für die Beispielkonfigs angepasst). Bei Problemen bitte rückmelden.

Etwas Offtopic: Das Bluetoothheadset habe ich testweise auch zum Radiostreamhören probiert. Die Tonqualität ist natürlich bescheiden, aber vorenthalten möchte ich es nicht:

In der extensions.conf eine Rufnummer zum Triggern im ausgehenden Kontext eingefügt:
Code:
exten => 888,1,system(cp /etc/asterisk/radiosaw.call /var/spool/asterisk/outgoing/)

Dazu das passende callfile radiosaw.call
Code:
Channel: Mobile/headset
Context: radiosaw
Extension: s
MaxRetries: 1
RetryTime: 3
WaitTime: 20

und einen zusäzlichen Kontext [radiosaw] in der extensions.conf
Code:
[radiosaw]
exten => s,1,Answer()
exten => s,2,MusicOnHold(200)

Die musiconhold.conf muss entsprechend angelegt werden
Code:
[general]
[default]
mode=custom
application=/usr/bin/mpg123 -q -r 8000 -f 8192 --mono -s -@ http://stream.saw-musikwelt.de/saw-80er/

Damit das funktioniert, muss man noch mpeg123 auf dem Raspi installieren:
apt-get install mpg123

Ruft man nun von einem Telefon die 888, so klingelt das Headset, wenn man abnimmt, wird Radio SAW 80er gespielt.

Wie gesagt, reine Spielerei, da die Tonqualität halt mono mit Frequenzgang nur bis 4 kHz ist (8000 Samplerate macht Limit 4000 Hz), aber irgendwie lustig.


(Dieser Beitrag ist nicht zum Pushen des Threads, sondern lediglich notwendig, weil eine Änderung von vorhandenen Beiträgen ohne einen neuen Post den Abonnenten sonst leider nicht mitgeteilt wird)
 
Hallo, das werde ich auf jeden Fall auch nachbauen, denn bisher hat Bluetooth nicht funktioniert und kann mir dann mindestens ein GSM-Gateway und eine SIM-Karte sparen.
Spricht etwas dagegen, den Raspberry Pi B 2 mit 900 MHz und 1 GB RAM zu nehmen? (Hersteller-Artikel-Nr.: 832-6274)
Welcher Bluetooth-Stick wurde benutzt? (Chipsatz?) Ich habe hier noch einen älteren Logilink BT0002 V2.0.
 
Ob was gegen den Pi2 oder den B+ spricht, kann ich nicht sagen - wenn man ihn hat, einfach ausprobieren. Ich finde meinen Pi2 leider nicht.
Die beiden haben ja 4 USB-Anschlüsse; USB und Audio ist bei den Pis immer ein kritisches Thema.
Beim BananaPi ging Bluetooth auch; dort war die Tonqualität bei ansonsten gleichem Setup sehr abgehackt und in einer Richtung schwer verständlich.

An Sticks habe ich einen alten Hama-Stick und einen Noname verwendet. Der Hama hat schlechtere Tonqualität.
Ich habe verschiedene Sticks bestellt, die in den kommenden Tagen eintreffen sollen. Dann werde ich diesbezüglich noch mal berichten.
 
Heute sind meine BT-Sticks gekommen.

Ich habe bei Pollin eingekauft, 2-Link MM018. Gibts bei Amazon für 4,90€ versandkostenfrei.
Chipsatz:
ID 0a12:0001 Cambridge Silicon Radio, Ltd Bluetooth Dongle (HCI mode)

Der Stick ist Class 1, also 100m Freifeldreichweite

Folgende Probleme habe ich festgestellt:

- Mit einem BT-Stick läuft alles einwandfrei
- Mit 2 BT-Sticks braucht man einen aktiven Hub
- Bei zwei gleichzeitigen aktiven Verbindungen geht auch bei aktivem Hub die Sprachqualität nach ca. 10 Sekunden in den Keller.

Ich wage mal die Vermutung, dass das Hauptproblem der USB-Anschluss ist. Aber ein funktionierender BT-Kanal ist ja schon besser als keiner.

Vielleicht kann der eine oder andere berichten, wie es auf dem Pi2 oder anderen Boards aussieht - ähm klingt.

Selber werde ich auf ein Fujitsu D3003-Bord wechseln, das ist für ein x-86-kompatibles System preiswert als Restposten, vom Energiebedarf akzeptabel, hat PCI oder PCI-E (mit Riser), so dass ich eine DIVA 4Bri einbauen kann (4-Port/8Kanal ISDN-Karte) und sogar eine GPIO. Die USB-Ports an dem System dürften auch etwas besser sein als beim RasPi.
 
Zuletzt bearbeitet:
Mein Logilink BT-Stick ist wohl nicht geeignet.
Ich habe es mit mehreren Smartphones erfolglos probiert.

Beim Pairing gab es leider zuerst Probleme. Es wurden keine Pins augetauscht. Der Rasspberry verzichtete immer auf die Pin-Abfrage.
Nach langem Probieren ging es dann doch mit dem kompletten Bluetooth-Paket ( sudo apt-get install bluetooth blueman bluez python-gobject python-gobject-2 ). Damit konnte ich es mir mit dem Bluetooth Manager und USB-Tastatur und Maus am Raspberry-Bildschrim anschauen. Manchmal kam sogar die Pairing-Pin-Abfrage.
Eine Dateiübertragung per Bluetooth hat problemlos funktioniert.
Die ganzen zusätzlichen Bluetooth-Pakete waren wohl nicht nötig, denn am Ende habe ich es doch so gemacht, wie es in #1 stand, aber Bildschirm und Tastatur waren hilfreich für die Eingabe der Pin.

Auf dieser Steite https://www.raspberrypi.org/forums/viewtopic.php?f=53&t=53299
fand ich diesen Tipp, der vermutlich auch weiter helfen könnte:
1. Make rpi visible and stuff with: power on / discoverable on / pairable on
(I doubt you need all of this but I used all of these to make sure it works)
2. Start Agent with: agent on
3. Set Default Agent with: default-agent
(I'm not sure myself what this "Default Agent" is but now I was asked for a
Pin on the rpi-side and it paired with my phone)

Wenn ich Asterisk starte, bekomme ich leider nur diese Meldungen:
-- Bluetooth Device Handy1 has connected, initializing...
-- Error initializing Bluetooth device Handy1.
-- Bluetooth Device Handy1 has disconnected.
-- Bluetooth Device Handy1 has connected, initializing...
-- Error initializing Bluetooth device Handy1.
-- Bluetooth Device Handy1 has disconnected.
-- Executing [0xxxxxxxx@sip21:1] Dial("SIP/21-00000001", "Mobile/Handy1/0xxxxxxx,45") in new stack
-- Called Mobile/Handy1/0xxxxxxxx
-- Error initializing Bluetooth device Handy1.
== Everyone is busy/congested at this time (1:0/0/1)
-- Executing [0xxxxxx@sip21:2] Hangup("SIP/21-00000001", "") in new stack
== Spawn extension (sip21, 0602151879, 2) exited non-zero on 'SIP/21-00000001'
-- Bluetooth Device Handy1 has disconnected.
Auch im bluetoothctl wechseln sich die Meldungen: Device F8:XX:XX:XX:XX:XX Conntected: yes und Conntected: no ab.
Ein Logitech Dinovo-BT-Stick wurde vom Raspberry erst gar nicht erkannt und weitere habe ich leider nicht gefunden.
Jetzt muss ich erstmal einen anderen besorgen.

Sollte man für jedes Smartphone einen eigenen Stick nehmen? Eigentlich müsste doch ein Stick für alle Geräte reichen?
Wenn ich mehrere Smartphones angemeldet habe, bekomme ich für die anderen genau die gleichen Meldungen.

An einem USB3-HUB wird der BT-Stick leider nicht erkannt, bzw. der HUB wird nicht erkannt..
 
Zuletzt bearbeitet:
Ähm, "bluez-utils is not available" bei debian jessie.
Sicher, dass Du Jessie drauf hast, nicht noch weezy?
Bei Weezy habe ich auch ständig erfolglos versucht, es zum Laufen zu bringen. Erst mit Jessie gehts endlich.

Bei Asterisk benötigt man einen Adapter je Gerät, das angebunden werden soll.
Ich habe aber mit dem RasPi(1) B Probleme bei mehr als einem Adapter.

Ich habe nach meiner Anleitung inzwischen auch auf einem BananaPi, in einer VM und auf einem D3003-S3 installiert. Immer mit Debian Jessie.

BananaPi:
schlechte Tonqualität, auch nur bei einem Stick

Raspberry Pi B
prima mit einem Bluetoothstick
erhebliche Probleme mit mehr als einem Stick, auch bei aktivem Hub

VirtualBox
Systemabsturz, sobald Anruf übers Handy kommt

Fujitsu D3003 / Futro S900
1 Stick läuft perfekt
2 Sticks direkt angeschlossen - unzuverlässig
2 Sticks über powered Hub - läuft wunderbar

Das Pairing ist ziemlich kniffelig, vor allem muss man immer aufpassen, den richtigen Stick mit dem richtigen Gerät zu pairen.
 
2015-09-24-raspbian-jessie ist drauf.
bluez-utils gibt es tatsächlich nicht. Die veraltete Zeile hatte ich aus einem Raspi-Forum kopiert.
 
Zuletzt bearbeitet:
wegen der diversen Probleme mit USB speziell bei den aelteren PI Modellen wuerde ich fuer solche Tests
nur den PI B+ oder natuerlich gleich den PI 2 nehmen. Alles andere ist Zeitverschwendung.
 
Die USB-Probleme bestehen leider nicht speziell bei den älteren Pi Modellen.

Selbst der Pi 2 hat noch einen LAN-USB-Chip am internen Hub, also prinzipiell das gleiche Problem.
Diese Architektur führt dazu, dass der isochrone Datentransfer im USB2-Mode nicht sauber unterstützt wird, wegen der "Vorbelastung" der USB-Bandbreite - schließlich landen alle USB-Geräte über den Hub am gleichen internen Port.
Ein Pi B+ behebt das Problem nicht, denn hier ist in dem Bereich gar nichts geändert worden, außer dass jetzt 4 USB-Anschlüsse nach außen geführt werden (was das Problem eher verschärft, wenn die auch genutzt werden)
Der Pi2B hat den Vorteil von mehr Rechenleistung und vor allem mehr Cores. Das kann sich natürlich positiv auf DropOuts auswirken, muss es aber nicht.

Es wurde viel an den Treibern in Debian gefeilt, womit der Transfer von Audiodaten verbessert wurde. Der falsche Eindruck, es sei bei den neueren Modellen etwas am USB-Problem verbessert worden, kommt letztlich daher, dass zeitgleich mit den neueren Pis auch ein neues Raspbian mit besseren Treibern erschien.

Wie gesagt, mit einem CSR-BT-Stick funktionierts auch beim Pi1B, sauber von Grund auf nach meiner Anleitung installiert.
Keine weiteren Geräte am USB, ausgenommen natürlich der LAN-Port, der ja intern bei den Pis über USB angebunden ist.

Generell halte ich mehr als einen BT-Stick an Einplatinencomputern für problematisch.
 
Der BT-Stick 2-Link MM018 ist heute eingetroffen.
Er sah aus, als ob ein LKW drüber gefahren war und musste erstmal wieder in Form gebracht werden, damit man ihn einstecken konnte.

Das Pairing ging anders, als beim alten Stick. Man musste sich keine Pin ausdenken und bei beiden Geräten eingeben.
Aber danach war es genau so, wie wie auch mit dem anderen Stick.
Code:
[CHG] Device FX:XX:XX:XX:XX:XX Connected: yes
[CHG] Device FX:XX:XX:XX:XX:XX Connected: no

---Edit---
In meine chan_mobile.conf hatte sich ein falsches Zeichen eingeschlichen. Nach der Korrektur funktioniert es jetzt. Leider gibt es in eine Richtung eine geringe Lautstärke.
 
Zuletzt bearbeitet:
Connected yes / no ist normal!
bluetoothctl stellt ja keine Daten/Audiovebindungen bereit oder fordert solche Daten an. Es wird also eine Verbindung aufgebaut, festgestellt, dass gar keine zu einander passende Dienste bereit stehen und die Verbindung wieder geschlossen.
Wichtig ist, dass gepairt ist und auch trusted wird.

Danach kommt die Verbindung zu Stande, wenn chan_mobile richtig konfiguriert und der Asterisk gestartet ist. Startet man Asterisk im Konsolenmodus (asterisk -cvvvvv) merkt man, dass das Handy auf Bluetoothheadset ungefähr nach der Hälfte des Starts des Asterisk stattfindet.
 
Zuletzt bearbeitet:
Geeignete Handytarife für diese Lösung

Da zwischendurch gefragt wurde, wo man den tollen Tarif bekommt, den ich hier mal erwähnt hatte (effektiv 5,37€ mit 3 GB Datenvolumen): Den gabs zwar nur im Januar, aber 1&1 hat jetzt wieder etwas günstiges:
Für 1&1 Bestandskunden effektiv 6,41€/Mon bei 3 GB, für nicht 1&1-Kunden effektiv 7,45€.
Der Tarif ist die Tabletflat L und ist bis 31.12. buchbar.

Bei der Tabletflat ist eine Handynummer dabei (das ist heute nicht mehr immer so), so dass man den Tarif auch in einem Smartphone einsetzen kann. Die abgehenden Tarife für Telephonie sind allerdings sehr hoch (19,9 Cent/Min in alle Netze) - was bei Nutzung meiner Call-Back-Lösung ja keine Rolle spielt, denn man löst den Anruf immer via boxtogo pro übers Internet aus und eingehend zahlt man ja nichts auf dem Smartphone, egal welche Karte drin ist. Wer meine Lösung nur für den Parallelruf mit Nummernübermittlung nutzt: Mit mobileVoIP-App gehts auch (etwas teurer wegen des dann zufällig anfallenden einmaligen Verbindungsaufbauentgelts von z.B. 5Cent/Gespräch)

Auch wenn man diese Info vielleicht schon in anderen Threads findet, hier der Hinweis darauf, weil es ja gerade mit dieser Lösung besonders günstig ist.
 
Habe auch vor, einen Asterisk mit deiner Config einzusetzen, hauptsächlich, um meine gesamten zu sipgate basic portierten Rufnummern wieder einzeln nutzen zu können.

Was ich noch gerne haben möchte - weiß jetzt aber nicht, ob das überhaupt geht oder ob das eh schon funktioniert:

Ich habe 2 DECT-Telefon an der Fritzbox. Wenn ich gerade telefoniere und jemand ruft an, dann klingelt nur das zweite bzw. im ersten Tel höre ich anklopfen. Wenn ich jetzt das Gespräch am Tel1 auflege, klingelt trotzdem nur noch das 2. Ich muss also zum anderen Tel und dort rangehen.

Geht das mit Asterisk irgendwie, dass nach beendigung des Telefonats auf Tel1 dieses auch zu klingeln anfängt?

Das geht bestimmt über irgendwelche kryptischen Befehle, Ruf heranholen oder so, aber geht das auch so wie vpon mir gewünscht ohne zusätzliche Kommandos?
 
Moins


Probier in so einem Fall mal: *09 (und grünen Hörerknopf drücken)
...das sollte einen auf der Fritz!Box ankommenden Telefonanruf heranholen (Pickup call, Call pickup?)
 
Zuletzt bearbeitet:
Holen Sie sich 3CX - völlig kostenlos!
Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.