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

Consultative transfer

Dieses Thema im Forum "Asterisk Allgemein" wurde erstellt von xherbie, 20 Dez. 2005.

  1. xherbie

    xherbie Neuer User

    Registriert seit:
    20 Dez. 2005
    Beiträge:
    2
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Hallo, ich habe irgendwo gelesen, dass in der neuen Asterisk Version consultative transfers möglich sind nach folgendem Schema:

    - Entgegennahme Anruf
    - Hold
    - 3te Partei anrufen
    - über Anruf informieren
    - ich selber kann mit hold das gespräch wieder zurücknehmen
    - die 3te Partei kann das gespräch mit der Rautentaste übernehmen
    - ich selber lege auf und das Gespräch geht an die 3te Partei weiter
    - Wenn die 3te PArtei besetzt ist, kann ich das Gespräch wieder
    zurücknehmen.

    Das wäre für mich absolut die einfachste Variante von Call Transfers. Unattended und attended call transfer mit park-Positionen habe ich zum Laufen gekriegt, aber das erste Verfahren ist nicht praxis orientiert und das zweite sehr umständlich.

    Weiss jemand mehr zu dem Thema? Wir haben wir ein Asterisk 1.2 Server mit IAX Hard-Phones und ein ISDN Gateway mit einer Junghanns QuadrBri Karte.

    Danke für ein Feedback und Grüsse
    Herbie
     
  2. xherbie

    xherbie Neuer User

    Registriert seit:
    20 Dez. 2005
    Beiträge:
    2
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Ich habs selber rausgefunden. Funktionieren tuts mit

    atxfer => *2 ; Attended transfer

    in features.conf. Wichtig dabei

    transferdigittimeout => 8 ; Nach 8 Sekunden hat man das Gespräch wieder
    featuredigittimeout = 800
     
  3. Laechler

    Laechler Neuer User

    Registriert seit:
    30 Juli 2005
    Beiträge:
    25
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Aber...

    wie kann ich die Zeitdauer beim Warten einstellen? Ich verbinde an eine Nebenstelle, dort klingelt es. Nach 15 Sekunden habe ich das Gespräch wieder und mit verbose 5 erscheint
    "ast_feature_request_and_dial: We exceeded our AT-timeout" im Display

    Meine features.conf:

    Code:
    [general]
    parkext => 70                           ; What ext. to dial to park
    parkpos => 71-79                        ; What extensions to park calls on
    context => parkedcalls                  ; Which context parked calls are in
    parkingtime => 60                       ; Number of seconds a call can be parked for (default is 45 seconds)
    xfersound = beep ; to indicate an attended transfer is complete
    xferfailsound = beeperr ; to indicate a failed transfer
    transferdigittimeout => 8               ; Number of seconds to wait between digits when transfering a call
    featuredigittimeout = 8000
    responsetimeout => 30
    
    [featuremap]
    automon => *1                  ; One Touch Record
    pickupexten = *8               ; Anrufuebernahme mit 8
    blindxfer => #                ; Blind transfer, default is #
    ;disconnect => *0               ; Disconnect
    automon => *1                  ; One Touch Record
    atxfer => **                   ; Attended transfer
    
    Alle Timout-Einträge hatten auf dieses Problem keinen Einfluss.

    Dann habe ich getestet in der extensions.conf:

    Code:
    [macro-dial]
    exten => s,1,GotoIf($[ "${MACRO_CONTEXT}" = "macro-rg-group" ]?4:2)  ; if this is from rg-group, don't strip prefix
    exten => s,2,GotoIf($["${CALLERIDNAME:0:${LEN(${RGPREFIX})}}" != "${RGPREFIX}"]?5:4)  ; check for ring-group prefix
    exten => s,3,SetCIDName(${CALLERIDNAME:${LEN(${RGPREFIX})}}) ; strip off prefix
    exten => s,4,AGI,dialparties.agi
    exten => s,5,NoOp(Returned from dialparties with no extensions to call)
    exten => s,6,SetVar(DIALSTATUS=BUSY)
    exten => s,10,Set(TIMEOUT(response)=45)
    exten => s,11,Dial(${ds})                               ; dialparties will set the priority to 10 if $ds is not null
    exten => s,12,Set(TIMEOUT(response)=45)
    exten => s,20,NoOp(Returned from dialparties with hunt groups to dial )
    exten => s,21,SetVar(HuntLoop=0)
    exten => s,22,GotoIf($[$[${HuntMembers} >= 1]?30 )  ; if this is from rg-group, don't strip prefix
    exten => s,23,NoOp(Returning there are no members left in the hunt group to ring)
    
    (Man beachte s,10). Das war auch nix.
    Wo kann ich ansetzen? Ich möchte 30 Sekunden Zeit haben.

    Vielen Dank im voraus.