Asterisk & Agenten & Statusmeldung

baschdieh

Mitglied
Mitglied seit
15 Sep 2005
Beiträge
416
Punkte für Reaktionen
0
Punkte
0
Hallo,

möchte folgendes realisieren:

Habe ein Queue in der sich div. Agenten einbuchen, nun soll es optional für diese Queue/Agenten die Möglichkeit geben, verschiedene Zustände via Telefon einzugeben.
D.h.:
Zustand - Bereit (Agent angemeldet/erreichbar)
Zustand - Nicht Bereit (Agent abgemeldet/nicht erreichbar)
Zustand - Outbound (Agent abgemeldet/nicht erreichbar)
Zustand - Nachbearbeitung (Anget abgemeldet/nicht erreichbar)

An Sich kein Problem, da ich ggf. was mit einer Kurzwahl am Telefon einstellen kann. Diese kurzwahl meldet dann den Status und dementsprechend den Agenten ab bzw. ab.
Nur brauch ich eine Möglichkeit diesen Status in ein exta Logfile incl. Timestamp zu speichern.
Hat da jemand eine Idee, wie ich so etwas realisieren kann?

==> Kann man da nicht was mit einem "GoTo" und einem externen AGI Script ?

Vielen Dank im Voraus!
 
Zuletzt bearbeitet:
Habs nun via AGI Script gelöst. War garnicht so schwer - falls jemand Interesse hat, poste ich gerne die komplette Lösung hier her.

Thema kann also geschlossen werden. Danke!
 
ja bitte, könnte ich echt gut brauchen...

LG
gardield
 
Über die Funktionstasten des VoIP-Hardphones sollen verschiedene Zustände in ein extra Logfile erzeugt werden. Dieses Logfile dient zur weiteren Auswertung des Callcenters.
Folgende Zustände werden benötigt:
Bereit (Agent anmelden)
Outbound (Agent abmelden)

Mittels Knopfdruck wird dem Benutzer diese Funktion ohne weiteres eingeben der Agenten-Rufnummer / Passwort zur Verfügung gestellt.

Zunächst erfolgt die Anpassung in der extensions.conf wie folgt:

Code:
;Status Outbound
exten => *998,1,AGI(outbound.agi|${CALLERIDNUM})
exten => *998,2,Dial(Local/*1999@context/n,,D(#))

;Status Bereit
exten => *999,1,AGI(bereit.agi|${CALLERIDNUM})
exten => *999,2,Wait(2)
exten => *999,3,AgentCallbackLogin(${CALLERIDNUM}||${CALLERIDNUM}@context)
exten => *999,4,Hangup

; Agentenabmeldung automatisch fuer alle Status
;
exten => *1999,1,Wait(1)
exten => *1999,2,AgentCallbackLogin(${CALLERIDNUM}||'#')
exten => *1999,3,Hangup

Mittels dieser durch ein * gekennzeichnete Durchwahl wird im Hintergrund ein sogn. AGI-Script auf Bash-Sprache ausgeführt. In dieses AGI-Script wird mit einem „pipe“ die gewünschte Variable aus Asterisk übernommen. Falls Bedarf besteht, weitere auszulesen, können diese selbstverständlich mittels weiterem „pipe“ als $2,$3...etc übergeben und abschliessend ausgelesen werden.
Die deklarierten AGI-Scripte müssen unter /var/lib/asterisk/agi-bin eingerichtet werden. Das File muss ausführbar (chmod +x) gemacht werden.

Das AGI-Script muss folgenden Inhalt besitzen:
Code:
#!/bin/bash
logfile=/var/log/asterisk/agentenauswertung.log
date=`/bin/date`
callerid=$1

echo $date "-> Der Agent mit der Rufnummer -> $callerid <- ist in STATUS -> BEREIT <-" >> $logfile

Unter /var/log/asterisk/agentenauswertung.log wird dementsprechend ein Logfile mit den gewünschten Statusmeldungen erzeugt. Im Hintergrund je nach Status wird der Agent automatisch an- bzw. abgemeldet.

Voraussetzung ist:
Bereits eingerichtete Queue
Bereits eingerichtete Agenten

Soo - das sollte es gewesen sein! :)
 
Kostenlos!

Neueste Beiträge

Statistik des Forums

Themen
248,887
Beiträge
2,303,984
Mitglieder
378,567
Neuestes Mitglied
MacOS