[gelöst] Asterisk 1.4.20 + Misdn + Pickup

speedocom

Neuer User
Mitglied seit
12 Jan 2005
Beiträge
79
Punkte für Reaktionen
0
Punkte
0
Hallo,

wir haben zwei Snom 320 an einem Asterisk 1.4.20.
Der Server ist via Misdn an unserer TK Anlage angeschlossen.
Leider bekommen wir bei den Snoms kein Pickup hin.
Die Anrufe werden am Snom signalisiert , die Taste ist als BLF
eingerichtet.

Folgende Meldung erscheint in der CLI :

Code:
   -- Executing [538@isdn:1] Set("mISDN/3-u63", "NRM=538") in new stack
    -- Executing [538@isdn:2] Set("mISDN/3-u63", "GLOBAL(PICKUPMARK)=538") in new stack
  == Setting global variable 'PICKUPMARK' to '538'
    -- Executing [538@isdn:3] Dial("mISDN/3-u63", "SIP/538|20|TtWw") in new stack
 Extension Changed 538[hints] new state Ringing for Notify User 619
    -- Called 538
    -- SIP/538-082780d8 is ringing
    -- SIP/538-082780d8 is ringing
    -- SIP/538-082780d8 is ringing
    -- Executing [*8538@default:1] PickUp("SIP/619-a4f06a88", "538@PICKUPMARK") in new stack
[Aug  4 12:29:55] WARNING[1907]: channel.c:4399 ast_get_group: Ignoring invalid group 538 (maximum group is 63)
    -- No channel found 0.
  == Spawn extension (default, *8538, 1) exited non-zero on 'SIP/619-a4f06a88'

In der extension.conf haben die Globale Variable Pickupmark gesetzt.

Code:
exten => _538,1,Set(NRM=${EXTEN})
exten => _538,n,SET(GLOBAL(PICKUPMARK)=${EXTEN})
exten => _538,n,Dial(SIP/${EXTEN},20,TtWw)

Ebenso hiermit das Pickup :

Code:
[pickup]
exten => _*8.,1,Pickup(${EXTEN:2}@PICKUPMARK)

Was könnte noch fehlen?
Steh echt auf dem Schlauch...

Danke Euch
 
Zuletzt bearbeitet:
Hi,

das Problem ist, dass das Pickup über pickup_groups maximal 64 eben solcher zulässt:
[Aug 4 12:29:55] WARNING[1907]: channel.c:4399 ast_get_group: Ignoring invalid group 538 (maximum group is 63)

ich mache das genauso, habe aber das Problem bisher noch nicht, da alle extensions innerhalb dieses Bereichs liegen.

Gruß,
 
Habe auch lange gesucht und schliesslich so die Lösung gefunden.
Code:
exten => _*8.,1,SET(GLOBAL(PICKUPMARK)=${EXTEN:2})
exten => _*8.,n,Pickup(${EXTEN:2}@PICKUPMARK)

Bei mir ist das übrigens nicht in einem separaten Kontext, sondern dort wo die Telefone reinwählen (bei mir heisst der local). Vielleicht stellt das noch ein Problem dar?
Die langen Nummern spielen keine Rolle, ich habe 4 stellige Rufnummern und es funktioniert wunderbar.

Meine Lösung habe ich übrigens von hier:
http://www.ip-phone-forum.de/showthread.php?t=168927
 
Herzlichen Glückwunsch und Danke für den Link.

Ich habe die Pickups auch im allgemeinen Kontext.
Das setzen der PICKUPMARK passiert bei mir allerdings, wenn die jeweilige Extension gewählt wird - so kann ich auch einen Zentralruf (auf mehrere Telefone verteilt) heranholen.

Dass es mit höheren Nummern funktioniert wundert mich zwar, freut mich aber noch mehr - für die Zukunft gut zu wissen.
 
Hallo Ihr,

ich habe es ja genau so gemacht.
Allerdings ist das reine Pickup und das setzen des Pickupmarks
bei mir in verschiedenen Kontext.
Aber das kann doch nicht das Problem sein, oder?

Gruss
Florian
 
Hi Florian,

ne, bei mir sind die beiden auch getrennt. Das ist kein Problem, denn PICKUPMARK ist global.

Ich habe in der sip.conf für jeden Kontext denselben "subscribecontext" - alle Telefone sind untereinander über hints erkennbar.
Ausserdem steht in dem jeweiligen Kontext "pickupgroup=10-40". Ich glaube, dass hierin die Begrenzung liegt.

Es gibt einen Unterschied zwischen "directed pickup" und "pickup" ... den ich bis heute leider nicht wirklich verstanden habe :?
Voip-Info.org gibt hier nähere (wenn auch nicht unbedingt eindeutige) Auskünfte:
http://www.voip-info.org/wiki/view/Asterisk+callgroups+and+pickupgroups
http://www.voip-info.org/wiki/view/Asterisk+cmd+Pickup

Gruß
 
Hi Gregor,

also pickupgroup und callgroup habe ich in der sip.conf nicht gesetzt.
ist aber für den pickup laut voip-info.org nicht nötig :

Code:
This dialplan command allows you to pick up calls that are ringing a specific extension. The device which is ringing need not have callgroup or pickupgroup set, you just need to know the extension.
This application also allows you to specify partial extensions. For example, you have block 200 to 209 and you want to pick up any calls that my be ringing on those 10 phones, you just pickup 20 and it'll pick up the most recent ringing one. Another side effect is that you can pickup a call that a person might be making for an outbound call... rather cool :-)
An example for the dialplan is below, and installation can be accomplished by using astxs or manually modifying the Makefile.

Es ist echt zum heulen, ich glaube bald es hat was mit mISDN zu tun.
die gespräche wo ich picken möchte kommen alle von der TK Anlage über
mISDN rein... es sind keine reinen SIP to SIP Gespräche...

gruss
Florian
 
dein eingehender mISDN-Kontext sei mal mISDN-incoming (entsprechend ersetzen), tut dann das hier

Code:
[SNOM-Kontext]
exten => _*8.,1,Pickup(${EXTEN:2}@mISDN-incoming)

nicht vielleicht? oder muss es zwingend mit PICKUPMARK oder -group sein?
 
@detejo

nein, ich arbeite mit dem globalen PICKUPMARK.
Siehe Code von Stephanw oben...
subscribecontext benutze ich ebenso wenig, da ja alle eh im selben sind.
mit den hints und subscribtion gibt es auch keinerlei probleme, dies wird
am snom ordentlich signalisiert.
das einzige was nicht klappt ist der verdammte pickup.

Ich könnte auch bei den accounts die pickup und callgroup setzen.
dann wäre ein pickup über *8 möglich.
Möchte ich aber nicht da ich dann beim Snom eine zweite Taste belegen müsste, schöner
wäre ein Pickup über die vorhandene BLF Taste.

gruss
Florian
 
Hi Florian,

also der Fehler der bei Dir auftaucht lässt darauf schließen, dass offenbar der Pickup über groups versucht wird (s.o.).

Wie dem auch sei ...: Du brauchst keine extra Taste für den Pickup übers Snom. Bei mir funktioniert das, wenn die Funktionstaste als Nebenstelle mit
Code:
<sip:[email protected];user=phone>|**
belegt ist (** ist mein Pickup Präfix - muss bei Dir dann natürlich *8 heißen )

Gruß,
 
Hi Gregor,

das mag schon sein aber wo kann ich dies umstellen?
(also direkter pickup ohne groups)
Das mit der Taste ist korrekt, mache ich ebenso.
Allderdings ab FW 7.1.33 heisst die Taste BLF.

Gruss
Florian
 
Hallo Florian,

um ehrlich zu sein: Ich habe nicht die leiseste Ahnung.

Ich war echt schon glücklich, als ich das mit den hints/BLFs und Pickups auf diese Weise hinbekommen habe. Mit der Einschränkung auf 64 Nummern kann ich für die nächsten Jahre gut leben.

Sorry. :|

Wie stephanw schreibt, funktioniert es bei ihm scheinbar auch mit höheren Nummern - nämlich so, wie Du auch schon aus dem Voip-Info.org zitiert hast.
Was dazu in der Konfiguration geändert werden muss würde mich schon auch sehr interessieren.

Gruß
 
Hallo,

ich glaube ich habe was gefunden.
könnt ihr mal auf der cli folgendes eingeben und posten:

core show application PickUp

bei mir schaut das dann so aus:

Code:
vpngw01*CLI> core show application PickUp
vpngw01*CLI>
  -= Info about application 'PickUp' =-

[Synopsis]
Channel independent call pickup.

[Description]
PickDown([group]): 
Tries to pickup the first ringing channel with callgroup == group.
If called without the group argument, the pickupgroup of the channel will be used.

Und da kommen wieder die Gruppen ins Spiel...
Hab ich etwa die falsche Application :))

gruss
Florian
 
Hi,

sieht bei mir so aus:
Code:
[Description]
  Pickup(extension[@context][&extension2@context...]): This application can pickup any ringing channel
that is calling the specified extension. If no context is specified, the current
context will be used. If you use the special string "PICKUPMARK" for the context parameter, for example
10@PICKUPMARK, this application tries to find a channel which has defined a channel variable with the same content
as "extension".

Das sieht deutlich anders aus.

Gruß,
 
So Problem gelöst:

Bei mir heisst die Application "dpickup"
und so schauts in der extension.conf aus:

Code:
[pickup]
exten => _*8.,1,DPickup(${EXTEN:2}@PICKUPMARK)

Welche Asterisk Version setzt du ein?
Meine ist aus dem Debian Paket 1.4.20

gruss
Florian
 
Zuletzt bearbeitet:
Hallo nochmal,

entgegen meiner Signatur habe ich aktuell Debian mit Asterisk 1.4.21.1 aus den Quellen von Digium im Einsatz (hab' ich vor dem Urlaub eigentlich als Austauschserver aufgesetzt).
Die application dpickup gibt's bei mir nicht. Laut voip-info.org wurde dpickup eingeführt, um Namenskonflikte mit pickup aus bristuff zu vermeiden (2 1/2 Jahre alt diese Information).

Na, jedenfalls Glückwunsch und viel Spaß beim Heranholen.
 
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.