[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:

FunkyFish

Neuer User
Mitglied seit
7 Sep 2006
Beiträge
11
Punkte für Reaktionen
0
Punkte
0
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-
 

FunkyFish

Neuer User
Mitglied seit
7 Sep 2006
Beiträge
11
Punkte für Reaktionen
0
Punkte
0
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-
 

Zurzeit aktive Besucher

3CX PBX - GRATIS
Linux / Win / Cloud

Statistik des Forums

Themen
232,920
Beiträge
2,028,165
Mitglieder
351,084
Neuestes Mitglied
knuller