.titleBar { margin-bottom: 5px!important; }

Pickup einrichten - Schritt für Schritt

Dieses Thema im Forum "Asterisk Allgemein" wurde erstellt von resch, 28 Okt. 2008.

  1. resch

    resch Neuer User

    Registriert seit:
    2 Sep. 2008
    Beiträge:
    33
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Hallo Forum,

    bei mir funktioniert das Pickup nicht. Vielleicht gibt es eine Step-by-step-Anleitung hierfür? Ich bin mir relativ sicher, daß es noch an dem einen oder anderen fehlt.

    Die Umgebung:
    Asterisk 1.4.21.2
    VoIP-Telefone: GrandStream GXP2000
    Anbindung nach draußen: mISDN, Beronet BN4S0

    Bisher für Pickup konfiguriert/CLI-Meldungen:

    - /etc/asterisk/features.conf:
    pickupexten = **

    - CLI gibt bei "show features" auch Pickup/Current/** zurück

    - CLI gibt bei "show application pickup" zurück: "Your application is not registered" -> Wie registriert man die application?

    - /etc/asterisk/misdn.conf:
    [default]
    ...
    callgroup=1
    pickupgroup=1

    Frage: Sind callgroup und pickupgroup überhaupt notwendig?
    Wenn ja, wo müssen die noch referenziert werden, sprich, wo wird festgelegt, welche Konten in welcher callgroup bzw. pickupgroup sind? In der sip.conf oder in der extensions.conf oder gar in beiden? Wie sieht das bspw. aus?

    - /etc/asterisk/extensions.conf
    exten => _**.,1,NoOP(Pickup ${EXTEN:2})
    exten => _**.,n,Pickup(${EXTEN:2})
    exten => _**.,n,Hangup

    Und schließlich: Muß in der Config des Telefons (Webinterface) etwas eingestellt werden?

    Fragen über Fragen. Vielleicht könnt ihr mir den einen oder anderen Hinweis geben. Besten Dank vorweg!
     
  2. resch

    resch Neuer User

    Registriert seit:
    2 Sep. 2008
    Beiträge:
    33
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    "show modules" in der CLI zeigt kein app_directed_pickup an.

    Ich denke, der erste Schritt wäre, das Modul an den Start zu bekommen.
    Weiß wer, was man da machen muß?
     
  3. resch

    resch Neuer User

    Registriert seit:
    2 Sep. 2008
    Beiträge:
    33
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    #3 resch, 28 Okt. 2008
    Zuletzt bearbeitet: 28 Okt. 2008
    Also das app_directed_pickup.so habe ich heruntergeladen und in /usr/lib/asterisk/modules kopiert. Ein "module load app_directed_pickup.so" gibt aber folgendes zurück:

    Error loading module 'app_directed_pickup.so': /usr/lib/asterisk/modules/app_directed_pickup.so: cannot open shared object file

    In der /etc/asterisk/modules.conf habe ich

    noload => app_directed_pickup.so

    auf

    load => app_directed_pickup.so

    geändert.

    M.E. sollte das aber nur für das automatische Laden des Moduls relevant sein.

    Ideen zur o.g. Fehlermeldung?
     
  4. himpierre

    himpierre Mitglied

    Registriert seit:
    18 Apr. 2007
    Beiträge:
    316
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Junge, was machst Du denn! :) Wie hast Du denn Asterisk installiert? Was ist das für ein System?
     
  5. resch

    resch Neuer User

    Registriert seit:
    2 Sep. 2008
    Beiträge:
    33
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    #5 resch, 29 Okt. 2008
    Zuletzt bearbeitet: 29 Okt. 2008
    Könntest Du Deine Frage präzisieren?
    Irgendwie was konstruktives wie "das muß man beim installieren mit reinkompilieren, nämlich so..." oder "Module installiert man nicht so, sondern so..." wäre hilfreich.
     
  6. Beastie

    Beastie Neuer User

    Registriert seit:
    19 Okt. 2005
    Beiträge:
    42
    Zustimmungen:
    0
    Punkte für Erfolge:
    6
    Beruf:
    Hostmaster, Programmierer, VoIP- und Mac-Admin
    Ort:
    Muenchen
    Hi,

    zuerst von

    http://www.thorsten-knabe.de/linux/asterisk/pickup.jsp

    das PickUp2 runtergeladen und ins apps directory von asterisk-src kopiert.
    Danach wieder ein make gemacht und die entstandenen 3 Module ins
    modules directory vom asterisk kopiert. Geladen wird das Modul dann mit
    "module load app_pickup2.so" an der Asterisk Konsole. Damit das Pickup
    dann auch funktioniert, habe ich im Dialplan noch eine Zeile eingefuegt:

    exten => _*8X.,1,PickUp2(SIP/${EXTEN:2})

    Das normale Pickup vom asterisk konnte ich bei uns nicht verwenden, da
    es wohl keine Anrufe unterstuetzt, die in einer Queue ankommen.


    Ciao,
    -Martin.
     
  7. resch

    resch Neuer User

    Registriert seit:
    2 Sep. 2008
    Beiträge:
    33
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    "Danach wieder ein make gemacht" bzw.
    "Then recompile and install Asterisk as usual" auf http://www.thorsten-knabe.de/linux/asterisk/pickup.jsp

    Zerschieß ich damit möglicherweise meine Asterisk-Configs?
    War nicht leicht, das mISDN und so an den Start zu bringen (so als Ahnungsloser).
     
  8. Beastie

    Beastie Neuer User

    Registriert seit:
    19 Okt. 2005
    Beiträge:
    42
    Zustimmungen:
    0
    Punkte für Erfolge:
    6
    Beruf:
    Hostmaster, Programmierer, VoIP- und Mac-Admin
    Ort:
    Muenchen
    Nope, tusts Du nicht :) Zum Einen machst Du ja nur make und nicht make samples
    (dabei wuerden Deine ganzen Configs uebrbuegelt werden) und zum Anderen werden
    bei dem make nur Sachen angefasst, die sich veraendert haben. Der Rest Deines
    Systems hat sich ja nicht veraendert, aber unter apps sind 3 neue apps aufgetaucht
    und die werden dann gebaut.


    Ciao,
    -Martin.
     
  9. resch

    resch Neuer User

    Registriert seit:
    2 Sep. 2008
    Beiträge:
    33
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Hallo Beastie,

    das installieren des Pickup2-Moduls hat wohl geklappt.

    "show modules" in der CLI zeigt u.a.:
    app_pickup2.so

    "show application pickup2" zeigt "Synopsis" und "Description"

    "show features" zeigt nur das normale "Pickup".
    Ich nehme an das Pickup2 wird nicht angezeigt, da es in der features.conf nicht auftaucht. Muß man dort einen Eintrag dafür vornehmen?

    Jedenfalls funktioniert das Pickup2 bisher nicht. Vielleicht muß man am Telefon noch etwas einstellen?

    Nachstehend die Ausgabe beim Pickup-Versuch.
    Die Testumgebung:
    SIP 227 Softphone Wengophone ruft SIP 229 Softphone Wengophone an und SIP 228 Grandstream GXP2000 versucht während Softphone 229 läutet mittels **229 das Gespräch anzunehmen.

    -- Executing [229@default-plan:1] NoOp("SIP/227-0083bdb0", "default-plan") in new stack
    -- Executing [229@default-plan:2] NoOp("SIP/227-0083bdb0", "Exten=229") in new stack
    -- Executing [229@default-plan:3] NoOp("SIP/227-0083bdb0", "Callerid=227") in new stack
    -- Executing [229@default-plan:4] Goto("SIP/227-0083bdb0", "default-plan2|229|1") in new stack
    -- Goto (default-plan2,229,1)
    -- Executing [229@default-plan2:1] Dial("SIP/227-0083bdb0", "SIP/229|20") in new stack
    -- Called 229
    -- SIP/229-008400f0 is ringing
    -- Executing [**229@default-plan:1] NoOp("SIP/228-00837370", "default-plan") in new stack
    -- Executing [**229@default-plan:2] NoOp("SIP/228-00837370", "Exten=**229") in new stack
    -- Executing [**229@default-plan:3] NoOp("SIP/228-00837370", "Callerid=229") in new stack
    -- Executing [**229@default-plan:4] Goto("SIP/228-00837370", "default-plan2|**229|1") in new stack
    -- Goto (default-plan2,**229,1)
    -- Executing [**229@default-plan2:1] NoOp("SIP/228-00837370", "Pickup2 229") in new stack
    -- Executing [**229@default-plan2:2] PickUp2("SIP/228-00837370", "229") in new stack
    > find_matching_channel: pattern='229' option='' state=5
    > find_matching_channel: trying channel='SIP/228-00837370' state=4 pattern='229'
    > find_matching_channel: trying channel='SIP/229-008400f0' state=5 pattern='229'
    > find_matching_channel: trying channel='SIP/227-0083bdb0' state=4 pattern='229'
    > find_matching_channel: trying channel='SIP/206-008124b0' state=6 pattern='229'
    > find_matching_channel: trying channel='mISDN/1-u985' state=6 pattern='229'
     
  10. Beastie

    Beastie Neuer User

    Registriert seit:
    19 Okt. 2005
    Beiträge:
    42
    Zustimmungen:
    0
    Punkte für Erfolge:
    6
    Beruf:
    Hostmaster, Programmierer, VoIP- und Mac-Admin
    Ort:
    Muenchen
    Hi resch,

    wie genau rufst Du PickUp2 im Dialplan auf?
    Momentan schaut es so aus, als wuerdest Du es mit z.B.

    exten => _**X.,1,PickUp2(${EXTEN:2})

    aufrufen. Das geht nicht. Du musst ihm auch noch den Channeltype mitgeben,
    also

    exten => _**X.,1,PickUp2(SIP/${EXTEN:2})


    Ciao,
    -Martin.
     
  11. resch

    resch Neuer User

    Registriert seit:
    2 Sep. 2008
    Beiträge:
    33
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Ja, so stand es drin:

    exten => _**.,n,PickUp2(${EXTEN:2})

    Jetzt mit dem exten => _**.,n,PickUp2(SIP/${EXTEN:2})
    funktioniert es.

    Besten Dank.

    Wie ist das denn mit callgroup und pickupgroup?
    Braucht man das dann nur in Verbindung mit dem herkömmlichen Pickup und zwar nur, wenn man für bestimmte Telefone (die in Gruppen zusammengefasst sind) Pickup ermöglichen möchte?
     
  12. Beastie

    Beastie Neuer User

    Registriert seit:
    19 Okt. 2005
    Beiträge:
    42
    Zustimmungen:
    0
    Punkte für Erfolge:
    6
    Beruf:
    Hostmaster, Programmierer, VoIP- und Mac-Admin
    Ort:
    Muenchen
    Genau. Das Pickup, das Du ueber die features.conf konfigurierst ( default *8 ) ruft das
    normale Pickup auf und beachtet dabei, in welcher Rufgruppe Du selber bist und welche
    Gruppen Du picken kannst. PickUp2 kuemmert sich darum aber nicht, es schaut nach
    Channels und schnappt sich den passenden.


    Ciao,
    -Martin.