Sysop installieren

Aus metasec wiki
Wechseln zu: Navigation, Suche

Pakete Installieren

Das jeweils aktuelle Paket runterladen und installieren

wget http://dl.metasec.de/metasec_sysop_current.deb
dpkg -i metasec_sysop_current.deb

Nach der Installation stehen die Sysop-Programmteile als auch die notwendigen AGI Scripte und Wahlplanteile zur Verfügung.

Konfiguration

Warteschlangen

  • agenten anlegen
  • wahlplan anlgen / ändern / anpassen
  • agis installieren
  • warteschlangen anlegen
    • z.b. "zentrale"

Wahlpläne


[amt]
exten => 0, 1, Set(__SYSOP_CALLIDNUM=${CALLERID(num)})
exten => 0, 2, Set(__SYSOP_EXTEN=${EXTEN})
exten => 0, 3, Set(__SYSOP_CHANNEL=${CHANNEL})
exten => 0, 4, GoTo(default,105,1)

exten => _XXX,1,GoTo(default,${EXTEN},1)

[default]

; zentrale 
exten => 105, 1, Set(UML=${DB(uml/zentrale)})
exten => 105, 2, GoToIf($["${UML}"="1"]?100)
exten => 105, 3, Answer
exten => 105, 4, Queue(zentrale)
exten => 105, 5, NoOp(=== ABWURF AUS DER AGENTENWS ===)
exten => 105, 6, Macro(ab_zentrale,${V_TARGET_N})
exten => 105, 7, Hangup

; agentenanmeldung über sysop webgui
exten => _sysop., 1, Answer
exten => _sysop., 2, Set(AGENTID=${CUT(EXTEN|-|2)})
exten => _sysop., 3, Set(ACTION=${CUT(EXTEN|-|3)})
exten => _sysop., 4, NoOp(${AGENTID} ${ACTION} ${EXTEN})
exten => _sysop., 5, GoToIf($["${ACTION}"="login"]?100)
exten => _sysop., 6, Agi(zphone_sysop_agent.php,${AGENTID},logout)
exten => _sysop., 7, Playback(agent-loggedoff)
exten => _sysop., 8, Hangup

exten => _sysop., 100, Agi(zphone_sysop_agent.php,${AGENTID},login)
exten => _sysop., 101, Playback(agent-loginok)
exten => _sysop., 102, Hangup


; wildcardrouting
exten => _ZXX, 1, Agi(zphone_sysop_macro.php,${EXTEN})
exten => _ZXX, 2, Set(UML=${DB(uml/zentrale)})
exten => _ZXX, 3, NoOp(${EXTEN} ${V_TARGET} ${V_TARGET_N} ${V_TAG} ${V_TIME} ${V_SOUND} ${UML})
exten => _ZXX, 4, GoToIf($["${CUSTOMER}"="V"]?100)
exten => _ZXX, 5, GoToIf($["${CUSTOMER}"="B"]?200)
exten => _ZXX, 6, GoTo(default,105,1)

exten => _ZXX, 100, NoOp(Virtueller Kunde)
exten => _ZXX, 101, TrySystem(/usr/local/metasec/bin/zphone_msg.sh "${EXTEN}" "${CALLERID(num)}" i "${CHANNEL}" "${UNIQUEID}")
exten => _ZXX, 102, Set(__SYSOP_EXTEN=${EXTEN})
exten => _ZXX, 103, Set(__SYSOP_CHANNEL=${CHANNEL})
exten => _ZXX, 104, Set(__SYSOP_CALLIDNUM=${CALLERID(num)})
exten => _ZXX, 105, GoToIf($["${UML}"!="1"]?200)
exten => _ZXX, 106, GoTo(default,${V_TARGET_N},1)

exten => _ZXX, 200, GoToIf($["${V_TARGET}"="105"]?300)
exten => _ZXX, 201, GoToIf($[${LEN(${V_TARGET})}>4]?400)
exten => _ZXX, 202, GoTo(default,${V_TARGET},1)

exten => _ZXX, 300, NoOp
exten => _ZXX, 301, Set(__SYSOP_CALLIDNUM=${CALLERID(num)})
exten => _ZXX, 302, Set(__SYSOP_EXTEN=${EXTEN})
exten => _ZXX, 303, Set(__SYSOP_CHANNEL=${CHANNEL})
exten => _ZXX, 304, GoTo(default,105,1)
exten => _ZXX, 305, Hangup

exten => _ZXX, 400, Set(CDR(accountcode)=${EXTEN})
exten => _ZXX, 401, Set(CALLERID(num)=${EXTEN})
exten => _ZXX, 402, GoTo(default,${V_TARGET},1)


[callback-cc]
exten => h, 1, NoOp(--- kunde hat aufgelegt ---)
exten => h, 2, Macro(callupdate,${SYSOP_CHANNEL},${SYSOP_EXTEN},${EXTEN})

exten => _1XX, 1, TrySystem(/var/www/webtapi/sysop/scripts/caller_info.sh ${SYSOP_EXTEN} ${SYSOP_CHANNEL} ${SYSOP_CALLIDNUM} ${EXTEN})
exten => _1XX, 2, Wait(1)
exten => _1XX, 3, Dial(SIP/${EXTEN},,M(callupdate^${SYSOP_CHANNEL}^${SYSOP_EXTEN}^${EXTEN}))
exten => _1XX, 4, Hangup

[sysop]

#include extensions-custom-sysop.conf

#include extensions-fax-sysop.conf

exten => _0X., 1, Set(CALLERID(num)=987654321)
exten => _0X., 2, Dial(SIP/${EXTEN:1}@yps)

exten => _11X, 1, SIPAddHeader(Alert-Info: info=alert-autoanswer)
exten => _11X, 2, Set(_ALERT_INFO=info=alert-autoanswer)
exten => _11X, 3, Dial(SIP/${EXTEN})

exten => _70X., 1, NoOp(==== SYSOP CALL ${EXTEN} ======)
exten => _70X., 2, Set(CDR(accountcode)=${EXTEN:2:3})
exten => _70X., 3, Set(CALLERID(num)=${EXTEN:2:3})
exten => _70X., 4, Dial(SIP/${EXTEN:6}@yps)
exten => _70X., 5, Hangup

exten => _7ZX., 1, NoOp(==== SYSOP CALL ${EXTEN} ======)
exten => _7ZX., 2, Set(CDR(accountcode)=${EXTEN:1:4})
exten => _7ZX., 3, Set(CALLERID(num)=${EXTEN:1:4})
exten => _7ZX., 4, Dial(SIP/${EXTEN:6}@yps)
exten => _7ZX., 5, Hangup

exten => _XXX, 1, GoTo(default,${EXTEN},1)

exten => _XXXX, 1, GoTo(default,${EXTEN},1)

[sysop_meetme]

#include extensions-custom-sysop_meetme.conf

#include extensions-fax-sysop_meetme.conf
exten => _X., 1, Answer
exten => _X., 2, MeetMe(${EXTEN},dq)
exten => _X., 3, Hangup


Macros


[macro-ab_zentrale]
exten => s, 1, NoOp(=== MACRO_AB_ZENTRALE ${ARG1} ===)
exten => s, 2, GoToIf($["${ARG1}"=""]?100)
exten => s, 3, GoToIf($["${ARG1}"="105"]?100)
exten => s, 4, NoOp(${CALLERID(num)})
exten => s, 5, GoTo(default,${ARG1},1)
exten => s, 100, VoiceMail(su10000@default)

[macro-anruf-fo]
exten => s, 1, TrySystem(/usr/local/metasec/bin/zphone_msg.sh "${ARG1}" "${CALLERID(num)}" i "${CHANNEL}" "${UNIQUEID}")
exten => s, 2, Agi(zphone_chese.php,${CALLERID(num)},${ARG1})
exten => s, 3, GoToIf($[${LEN(${CALLERID(num)})}>3]?1000)
exten => s, 4, GoToIf($[${LEN(${CALLERID(num)})}=3]?2000)
exten => s, 5, Set(__ZCHESE=${ZCHESE})
exten => s, 6, GoToIf($["${ZCHESE}"="1"]?500)
exten => s, 7, NoOp(--- ${CALLERID(num)} ---)
exten => s, 8, Set(GROUP()=${ARG1})
exten => s, 9, Set(GROUPCOUNT=${GROUP_COUNT(${ARG1})})
exten => s, 10, Set(UML=${DB(uml_target/${ARG1})})
exten => s, 11, GoToIf($[${LEN(${UML})}>0]?300)
exten => s, 12, GoToIf($[${GROUPCOUNT}>1]?100)
exten => s, 13, Dial(SIP/${ARG1},20,tTro)
exten => s, 14, TrySystem(/usr/local/metasec/bin/zphone_msg.sh ${ARG1} ${MACRO_EXTEN} m ${CHANNEL} ${UNIQUEID} upd)
exten => s, 15, Macro(sysopmaster,${ARG1})
exten => s, 16, Hangup()
exten => s, 100, GoToIf($[${LEN(${CALLERID(num)})}=3]?400)
exten => s, 101, Macro(sysopmaster,${ARG1})
exten => s, 300, GoToIf($["${UML}"="105"]?600)
exten => s, 301, Set(CALLERID(num)=${ARG1})
exten => s, 302, GoTo(default,${UML},1)
exten => s, 400, Busy(30)
exten => s, 401, Hangup()
exten => s, 500, Dial(SIP/${ARG1})
exten => s, 501, Hangup()
exten => s, 600, Macro(sysopmaster,${ARG1})
exten => s, 1000, Set(CALLERID(num)=0${CALLERID(num)})
exten => s, 1001, GoTo(5)
exten => s, 2000, SIPAddHeader(Alert-Info: info=<Bellcore-dr2>)
exten => s, 2001, GoTo(5)

[macro-anruf_vrtl]
[macro-callupdate]
exten => s, 1, NoOp(===== CALLERUPDATE ${ARG1} ${ARG2} =======)
exten => s, 2, TrySystem(/var/www/webtapi/sysop/scripts/caller_update.sh ${ARG1} ${ARG2} ${ARG3})

[macro-sysopmaster]
exten => s, 1, Agi(zphone_sysop_macro.php,${ARG1})
exten => s, 2, NoOp(${ARG1} ${V_TARGET} ${V_TARGET_N} ${V_TAG} ${V_TIME} ${V_SOUND})
exten => s, 3, Set(__SYSOP_CALLIDNUM=${CALLERID(num)})
exten => s, 4, Set(__SYSOP_EXTEN=${ARG1})
exten => s, 5, Set(__SYSOP_CHANNEL=${CHANNEL})
exten => s, 6, GoTo(default,105,1)

Sysop

Sysop als Desktopapplikation

Prism

Prism ist es Firefox Spinnoff, welches einer webbasierten Applikation erlaubt, sich wie eine reguläre Windows Desktop Applikation zu verhalten. Unter http://prism.mozillalabs.com/started/ kann man die jeweils aktuelle Version herunterladen.