[SOLVED] Asterisk soll Anruf annehmen und Freizeichen anbieten

FunkyFish

Neuer User
Mitglied seit
7 Sep 2006
Beiträge
11
Punkte für Reaktionen
0
Punkte
0
Hallo zusammen,

nach einigen Tagen Konfiguration usw. läuft mein Asterisk jetzt soweit.
SIP-Geräte können sich anmelden und nach außen telefonieren. Ankommend funktionierts auch soweit.

Per chan_capi_cm 0.6.5 ist eine Telefonanlage angebunden, bzw. der Asterisk an einer Tel-Anlage. MSN des Asterisk ist 28.
Nun möchte ich, dass Endgeräte der Tel-Anlage mittels **28 am Asterisk anrufen können, ein Freizeichen erhalten und wählen dürfen.
Nach dem Wählen soll Asterisk diese Nummer per SIP anrufen. Falls es nötig ist, damit der Asterisk erkennt, wann die Nummer zu ende ist, könnte die Nr auch mit # enden, oder so...

Ich hab zuerst versucht die komplette Nummer auf einmal zu wählen also **28<vorwahl><rufnummer>, aber entweder die Telefonanlage oder Asterisk löschen alles nach der MSN (vermutlich die Tel-Anlage). Also muss der Umweg her.

Weiß jemand wie ich sowas realisieren könnte... Ich hab auch nicht wirklich Ahnung wonach ich suchen soll, vielleicht gibts dazu ja auch schon irgendwo ein passendes Howto

Gruß
-Sascha-
 
Zuletzt bearbeitet:
Ok, über die c't 13/05 bin ich auf DISA gestoßen...
Damit und über Set(Timeout(digit)=3) + Set(Timeout(response)=15) habe ich mein Freizeichen bekommen und springe in den VoIP Kontext

Nun hab ich aber noch ein Problem, irgendwie funktioniert das SetCallerID beim springen über DISA nicht. Zumindest bekomme ich vom tel.t-online.de ein SIP response 400 "Display Name Restricted". Das hatte ich gestern schonmal und konnte mit SetCallerID behoben werden. Die Ausgaben auf der CLI:

via ISDN rein und SIP raus:
Code:
    -- Executing Answer("CAPI/ISDN1/28-f", "") in new stack
    -- Executing Set("CAPI/ISDN1/28-f", "TIMEOUT(digit)=3") in new stack
    -- Digit timeout set to 3
    -- Executing Set("CAPI/ISDN1/28-f", "TIMEOUT(response)=15") in new stack
    -- Response timeout set to 15
    -- Executing DISA("CAPI/ISDN1/28-f", "no-password|tonline_out") in new stack
    -- Executing SetCallerID("CAPI/ISDN1/28-f", "0322231xxxxx") in new stack
    -- Executing Set("CAPI/ISDN1/28-f", "CALLERID(number)=032223155666") in new stack
    -- Executing Set("CAPI/ISDN1/28-f", "CALLERID(name)=0322231xxxxx") in new stack
    -- Executing NoOp("CAPI/ISDN1/28-f", "Nummer: <gewählte tel-nr>") in new stack
    -- Executing Dial("CAPI/ISDN1/28-f", "SIP<gewählte tel-nr>@0322231xxxxx|45|r") in new stack
    -- Called <gewählte tel-nr>@0322231xxxxx
    -- Got SIP response 400 "Display Name Restricted" back from 217.0.132.118
    -- SIP/0322231xxxxx-081a1c60 is circuit-busy
  == Everyone is busy/congested at this time (1:0/1/0)

Über SIP-Telefon am Asterisk angemeldet und gewählt:
Code:
    -- Registered SIP '32' at 10.0.0.22 port 5061 expires 3600
    -- Executing SetCallerID("SIP/32-0819fc48", "0322231xxxxx") in new stack
    -- Executing Set("SIP/32-0819fc48", "CALLERID(number)=0322231xxxxx") in new stack
    -- Executing Set("SIP/32-0819fc48", "CALLERID(name)=0322231xxxxx") in new stack
    -- Executing NoOp("SIP/32-0819fc48", "Nummer: <gewählte-nr>") in new stack
    -- Executing Dial("SIP/32-0819fc48", "SIP/<gewählte-nr>@0322231xxxxx|45|r") in new stack
    -- Called <gewählte-nr>@0322231xxxxx
    -- SIP/0322231xxxxx-081a5980 is making progress passing it to SIP/32-0819fc48
    -- SIP/0322231xxxxx-081a5980 is ringing

Vermutlich wird die CallerId im falschen Kontext/Channel gesetzt, kann das sein? Wie setze ich die im Richtigen?

Gruß
-Sascha-
 
Hatte recht mit der Vermutung:

http://www.voip-info.org/wiki/view/Asterisk+cmd+SetCallerPres
Das hat geholfen, vorallem hier:
Code:
For me in the end SetCallerPres(allowed) did the trick.

  exten => <msn>,n,SetCallerPres(allowed)

If an ISDN (BRI) call arrives with the flag CallerPres() set to prohib, you can change the CALLERID(num) or CALLERID(name) with the corresponding set function and the CDRs look good, but the sip channel still has something like sip:Unknown <at> 192.168.161.18 in the from field. So the Phone/Softphone only reports about Unknown number and Unknown name.

Gruß
-Sascha-
 
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.