extensions.conf hinzuzufügen:[interne-benutzer]
; ...
; Gesprächsübernahme (PickUp)
exten => _*8X.,1,Set(nst=${EXTEN:2})
exten => _*8X.,n,Verbose(1,${CALLERID(num)} will Anruf von ${nst} holen)
exten => _*8X.,n,Pickup(${nst}@interne-benutzer)extensions.ael:context interne-benutzer {
// ...
// Gesprächsübernahme (PickUp)
_*8X. => {
Set(nst=${EXTEN:2});
Verbose(1,${CALLERID(num)} will Anruf von ${nst} holen);
// hier könnte eine Berechtigungsprüfung eingebaut werden
Pickup(${nst}@interne-benutzer);
}
}|“ (Pipe-Symbol) und der
oben definierten Zeichekette „*8“ für das
Pickup ein – also für obiges Beispiel
„21|*8“. Das Telefon wandelt dies wieder in
die passende SIP-URI um. Das Snom wird durch diesen Zusatz, der streng
genommen nicht zur SIP-URI gehört, angewiesen, zum Heranholen
*8 vor der Nebenstellennummer zu wählen, obwohl es ihm von
Asterisk in der Status-Benachrichtigung nicht so mitgeteilt
wird.[133] (Eine detaillierte technische Beschreibung, wie das Snom
auf verschiedene Formen der SIP-NOTIFY-Nachrichten
reagiert, finden Sie unter http://wiki.snom.com/Features/Call_Pick-Up.)
Andere Telefone haben ähnliche Mechanismen (Grandstream z. B.
** statt *8, dafür muss man gegebenenfalls die
in diesem Kapitel beschriebenen Extensions anpassen).filter_registrar: off callpickup_dialoginfo: on fkey5: dest 22|*8 fkey6: dest 23|*8
fkey5
gesetzt werden usw. Die Funktionstaste 1 wird mit fkey0
angesprochen.context interne-benutzer {
// Verkaufsabteilung
hint(SIP/21&SIP/22&SIP/23) 20 => {
Dial(SIP/21&SIP/22&SIP/23,40);
}
// Gesprächsübernahme (PickUp) von der Gruppe Verkauf
_*820 => {
Verbose(1,${CALLERID(num)} will Anruf von Gruppe Verkauf holen);
Pickup(21@interne-benutzer&22@interne-benutzer&23@interne-benutzer);
}
}20 eintragen (Snom: 20|*8).PICKUPMARK-Funktionalität der
Pickup()-Applikation (Abschnitt C.115, „Pickup()“) an, mit der man flexibler ist.
Beispiel:context interne-benutzer {
// Verkaufsmitarbeiter
_2X => {
Set(__PICKUPMARK=verkauf);
Dial(SIP/${EXTEN},40);
}
hint(SIP/21) 21 => {}
hint(SIP/22) 22 => {}
hint(SIP/23) 23 => {}
// Verkaufsabteilung
hint(SIP/21&SIP/22&SIP/23) 20 => {
Set(__PICKUPMARK=verkauf);
Dial(SIP/21&SIP/22&SIP/23,40);
}
// Gesprächsübernahme von der Gruppe Verkauf
_*820 => {
Verbose(1,${CALLERID(num)} will Anruf von Gruppe Verkauf holen);
Pickup(verkauf@PICKUPMARK);
}
}20) für die Pickup-Gruppe verbrauchen, so bietet sich für
fortgeschrittene Anwender z. B. folgende Konfiguration an:context interne-benutzer {
// Verkaufsmitarbeiter
_2X => {
Set(__PICKUPMARK=200);
// welcher Mitarbeiter zu welcher Pickup-Gruppe gehört, ließe sich
// z. B. über ein ausgefeiltes AGI-Skript setzen
Dial(SIP/${EXTEN}&Local/**${PICKUPMARK},40);
}
hint(SIP/21) 21 => {}
hint(SIP/22) 22 => {}
hint(SIP/23) 23 => {}
// Pickup-Gruppen
_**X. => {
Verbose(1,Es klingelt in Pickup-Gruppe ${EXTEN:2});
}
hint(SIP/21&SIP/22&SIP/23) **200 => {}
// Gesprächsübernahme direkt
_*8X. => {
Set(nst=${EXTEN:2});
Verbose(1,${CALLERID(num)} will Anruf von ${nst} holen);
// hier könnte eine Berechtigungsprüfung eingebaut werden
Pickup(${nst}@interne-benutzer);
}
// Gesprächsübernahme von einer Gruppe
_*8**X. => {
Set(pmark=${EXTEN:4});
Verbose(1,${CALLERID(num)} will Anruf von Pickup-Gruppe ${pmark} holen);
// hier könnte eine Berechtigungsprüfung eingebaut werden
Pickup(${pmark}@PICKUPMARK);
}
}**200 eintragen (Snom: **200|*8).[130] Die Telefonanlagen-Funktion Pickup wird im Deutschen meist als Heranholen oder Rufübernahme bezeichnet.
[131] Zur Beschreibung der Applikation Pickup() siehe
auch: Abschnitt C.115, „Pickup()“
[132] Die Applikation Pickup() darf nicht verwechselt
werden mit der Bristuff-Applikation PickUp() bzw.
DPickup(), PickUp2() oder anderen
Applikationen ähnlichen Namens, die in den diversen Internet-Foren
usw. als Patches herumgeistern, auch wenn sie ungefähr das Gleiche
bewirken.
[133] Das wird vermutlich in neueren Versionen von Asterisk behoben, siehe Asterisk Bug 5014.