Jump to content

spufi

Member
  • Content Count

    16
  • Joined

  • Last visited

Community Reputation

0 Neutral

About spufi

  • Rank
    Member

Recent Profile Visitors

707 profile views
  1. Hallo Swyxler, in einem CallRouting muss ich herausfinden, ab an einer Visual Groups Warteschlange gerade User angemeldet sind. Ich habe mir das CallRouting der VisualGroup angeguckt und folgenden Code als relevant angesehen und herausextrahiert: Const fsoForReading = 1 Const fsoForWriting = 2 Const fsoForAppending = 8 Const fsoCreateIfNotExist = True Function TraceIntoFile ( traceText ) Const filename = "D:\EigeneTraces\EigeneTraces.txt" Dim fso Dim file ' Create FileSystemObejct Set fso = CreateObject("Scripting.FileSystemObject") ' Open text file Set file = fso.OpenTextFile(filename, fsoForAppending, fsoCreateIfNotExist) ' Write (append) traceText into file file.WriteLine ( """" & traceText & """,""" & CStr(now) & """" ) file.Close Set file = Nothing Set fso = Nothing End Function Dim msgnr 'Messagenumber in repeated query Dim queuestring 'VisualGroups server connection string Dim globcallid 'PBXCall.CallId Function checkvisgroup Dim PBXConfig Set PBXConfig = PBXScript.CreateObject("IpPBxSrv.PBXConfig") PBXConfig.Initialize PBXUser On Error Resume Next 'Get global queue connection string queuestring = PBXScript.GetGlobalConfigItem ("VisualGroups","Global","Url") If queuestring = "" Then getparameters = 1 Exit Function Else queuestring = CStr(queuestring) + "&rid=9398517249" End If Dim stringurl Dim CnxSVG Dim reason Dim len1 Dim len2 Dim LDAP_WAIT_TIMEOUT On Error Resume Next msgnr = msgnr + 1 'globcallid = CLng(PBXCall.CallId) stringurl = CStr(queuestring) & "&msgnr=" + CStr(msgnr) + "&function=4&deactivatemode=0" 'stringurl = stringurl + "&callid=" + CStr(globcallid) stringurl = stringurl + "&queuenameid=1" TraceIntoFile (stringurl) Set CnxSVG = CreateObject("MSXML2.ServerXMLHTTP") CnxSVG.Open "POST", stringurl, False CnxSVG.Send If Err <> 0 then TraceIntoFile (Err.Description) Err.Clear checkvisgroup = 9 Exit Function End if If CnxSVG.waitForResponse(LDAP_WAIT_TIMEOUT) Then If CnxSVG.Status = 200 Then LDAPRequested = True TraceIntoFile (CnxSVG.responseText) len1 = instr(CnxSVG.responseText, "<reason>") len2 = instr(CnxSVG.responseText, "</reason>") If len1 > 0 And len2 > 0 And len2 > len1 + 8 Then reason = mid(CnxSVG.responseText, len1 + 8, len2 - len1 - 8) End If If reason = "NoAgent" Then checkvisgroup = 1 Exit Function End IF End If End If If Err <> 0 then TraceIntoFile (Err.Description) End if Set CnxSVG = Nothing checkvisgroup = 2 End Function In der Mitte des Codes ist "stringurl = ..." auskommentiert und durch meinen "Versuch" ersetzt. Der Code läuft original ja unter der Nummer der VisualGroup. "Meine globcallid" hat aber nichts mit der VisualGroup zu tun. Deswegen habe ich queuenameid probiert. Leider gibt die Antwort dann nicht ...<response>0</response>... sondern ...<waiting>0</waiting>... zurück. Ich finde keine Dokumentation zu den VisualGroup-aspx-Seiten und welche Variablen ich übergeben kann. Denke ich jetzt überhaupt in die richtige Richtung? FYI: Mein erster Versuch war ein DB Zugriff auf die Felder state der Tabelle svg_ta_queuewaitingusers und priority der Tabelle svg_ta_queuemembers. Das funktioniert so lange sich die User immer brav aktiv von der Warteschlange abmelden. Sobald sie ihren Client einfach nur schließen, wird state nicht upgedatet.... Mein zweiter Ansatz war das Auslesen einer Wallpaper. Dort stehen die angemeldeten User auch drin. Das habe ich aber abgebrochen, da der responseText so unendlich lang ist. Ich hoffe ich konnte mein Problem verständlich machen.
  2. Thank you. I'll do it this way. And for the second Question... I'm two steps further but not there. I'll try again in the german forum.
  3. This is exactly what I meant. But how can a normal user, without the SwyxWare Administration, open the VG-user-CallRouting, to activate or deactivate the previous standing anouncement?
  4. Hello, my question are actually two. First: In a CallRouting, can I somehow get the „is there someone logged in to the VisualGroup Queue“? Perhaps over a SQL Statement like this: SELECT COUNT(*) FROM VisualGroups.sometable WHERE GroupID = 1 AND UserLoggedInStatus = 1 And second: In case our building closes for a day, the front desk started the „CallRouting“ and activated an announcement in front of the other Routings. Now, with „Visual Groups“, can I place a button on the Client Skin that starts the CallRouting for the VisualGroup user? Other idea: configure a name button that calls a user who toggles the announcement over a SQL Statement. But I would definitely prefer a „visual solution“.
  5. Tatsache...aber auch blöd. Dann versuche ich mal meine 3 "besonderen Kollegen" davon zu überzeugen, dass sie ihr SIP Handgerät nun nicht mehr benötigen, da ihr Handy nun diese Funktion übernehmen kann. Danke
  6. Hallo Forum, welche Endgeräte für die Statussignalisierung herangezogen werden (Serverstandard), stellt man ja in den Servereigenschaften - Endgeräte ein. Dort habe ich zur Auswahl 1. Netphone Client (als einziges ausgewählt) 2. IP-Telefon (da wir uns Abends nicht von den Tischgeräten abmelden -> nicht ausgewählt) 3. SIP Endgerät 4. Basis Client Mir fehlt in dieser Auswahl "Mobile". Die Benutzung der App "Swyx Mobile 2.0" wird mir in den Benutzereigenschaften - Endgeräte auch angezeigt. Wenn der Netphone Client läuft, kann man die Statusnzeige über die App auch fernsteuern. Sobald allerdings der Client/der PC ausgeschaltet ist, ist der Status "abgemeldet". Nun kann man mit der Statusauswahl in der App nur noch steuern, ob man die Telefonate durchgestellt bekommen möchte oder nicht. Das Verhalten ist nachvollziehbar, schön wäre jedoch auch eine Anzeige "erreichbar", wenn die App angemeldet ist. Gibt es da einen Workaround?
  7. Hallo Forum Wir haben die Netphone Version 11.10.1.0, virtuelle Server, mit einem Master und Standby. Analoge Leitungen für unsere Türöffnungsanlage und alte Faxgeräte werden durch den AudioCodes Mediant 800 bereitgestellt. Nun soll umgestellt werden auf SIP Trunk Pure. Die Weiterleitung der Anrufe je nach Aktivitätsstatus auf Master oder Standby sollte entweder die Firewall (bei uns WatchGuard XTM330) oder ein neuer Router sein. Unsere Watchgurad soll das angeblich nicht leisten können, also sollte ein LANCOM Router für ca. 600€ oder der Zyxcel Speedlink 5501 bei uns aufgebaut werden. Auf meine Frage, ob das nicht auch der Mediant 800 übernehmen könne (der ist ja schließlich auch nichts anderes als ein etwas teurerer Router, und wir haben davon sogar noch einen Ersatz im Schrank liegen) kamen die Telekomiker allerdings sehr schnell ins Schwimmen… Deswegen an Dich die Frage: kann der AudioCodes Mediant 800 diese Aufgabe übernehmen? Oder wie kriege ich das raus?
  8. spufi

    Notruf Gruppe

    Fehler (3 kurze Töne)
  9. spufi

    Notruf Gruppe

    Es ist die Variante mit dem abschließenden Hochkomma. Nehme ich nur die 410, klingelt es auch. Um es noch besser zu machen: von intern funktioniert das Ganze. Ich habe mir das Trace des Anrufs nun angeguckt... und musste feststellen, dass mir für eine 100%ig zuverlässige Fehleranalyse das Wissen fehlt. Ich kann nachvollziehen wie der Ruf an meine Nummer weitergeleitet wird, und dann kommt "proceed with dest script" und ein paar schräge getStrings wie "Um einen Rückruf zu starten, bitte hier klicken".... Kann da ein Fehler in der Mediantenkonfiguration sein? (Virtueller Server mit AudioCodes Mediant 800B). Wie kommt sonst der Unterschied zwischen internen und externen Anrufen zustande?
  10. spufi

    Notruf Gruppe

    Ich habe im CallRouting der 911 nur einen Durchstellen Block, der an meine Durchwahl für 15 Sekunden durchstellt (="410*72*). "Mit Call Routing des Ziels fortfahren" ist an. Alle Ausgänge sind verbunden mit "Regel ausgeführt". Im meinem CallRouting ist keine Regel aktiviert. Wenn ich nun mit meinem Handy die 911 anrufe, kommt die Fehlermeldung (drei kurte Töne). Was könnte das Problem sein?
  11. spufi

    Notruf Gruppe

    Muss ich dazu noch Blockwahl erzwingen? So Wählt er die 911 und *72* interessiert ihn nicht. Heißt, das Telefon klingelt ganz normal.
  12. spufi

    Notruf Gruppe

    Zu den Vorschlägen von jodost: 1: Leider ist die Mindestzeit für ein Durchstellen 5 Sekunden. Wenn ich das irgendwie unterwandern kann, immer her mit der Info. 3: Bei unserem Alarm muss sich einfach einmal die Ansage bis zum Schluss angehört werden. Sonst wiederholt sich der Anruf. 4: Ist eine Alternative, wenn es nicht anders geht. 2: Die Direktansprache wäre natürlich das Optimum. Ich weiß, dass die Direktansprache über SwyxIt funktioniert (fällt aus) oder über Blockwahl nnn*72* direkt auf den Lautsprecher des Telefons. Am schönsten wäre ein Durchstellen Block an eine Gruppentelefonnummer *72* und die Ansage des Anrufer wird an allen Telefonen abbespielt. Leider bekomme ich, sowohl beim Durchstellen an eine Gruppe als auch an einen einzelnen Benutzer, die Fehlermeldung und das Telefon klingelt ganz normal. Gibt es eine Möglichkeit die diesen Weg weiterverfolgt?
  13. spufi

    Notruf Gruppe

    Hallo Forum, aus gegebenem Anlass wurde am Empfang unserer Firma ein Notruftaster eingebaut. Dieser setzt auf das bestehende Alarmanlagensystem auf und sendet einen Telefonanruf an die Swyx-Anlage. Ich wurde vor der Einrichtung gefragt ob das praktikabel ist und habe ja gesagt. Meine Lösung war eine parallel klingelnde Gruppe „Alarm Empfang“ einzurichten, in die alle Mitarbeiter in der Nähe des Empfangs kommen. Das klappte im ersten Test auch wunderbar. Taster gerückt, 3 Sekunden später klingeln alle Telefone, im Display ist „Alarm Empfang“ zu lesen, und um den Alarm verstummen zu lassen muss nur ein Hörer abgenommen werden. Im Live-Test zur normalen Arbeitszeit spiele sich nun folgendes ab. Leider sind einige meiner Kollegen besser konditioniert als der berühmte Pawlowsche Hund und nehmen einen Anruf ab, noch ehe das erste Klingeln zur Hälfte vorbei ist. Der Anrufabnehmer bekommt dann zwar eine Ansage „es wurde ein Alarm ausgelöst“ vorgelesen, müsste nun aber Eigeninitiative entwickeln um seine exklusiven Informationen zu verbreiten… schade. Ergebnis des Live-Testes: theoretisch 1+, praktisch ungenügend durch Anwenderfehler und ein dutzend Experten die Ihre Meinung lautstark und z.T. schriftlich an die Gehaltsklasse über mir kundtun mussten. „Zu kurzes Klingeln. Keine Zeit zu reagieren. Was soll das denn? Klingelton unterscheidet sich nicht vom Normalen.“ Meine Idee danach war, aus der Gruppe einen Benutzer zu machen, sein Telefon in den Keller zu stellen und die Anrufe an alle Benutzer der ex Gruppe zu signalisieren. So genügt das Abnehmen nicht mehr, man muss vorher noch den „Übernehmen“-Knopf suchen und drücken. Das dauert ein paar Sekunden. Nur leider ist diese Signalisierung primär optischer Natur auf dem Display der OpenEdge 40 HFA Telefone und nur beim dritten Klingeln ertönt ein leises Piepen. Am liebsten wäre mir eine Lösung über ein CallRouting, das den Anruf automatisch annimmt und dann die Telefone für 20 Sekunden klingeln lässt ohne durch ein Abnehmen der Hörer zu verstummen. Alternativ: kann ich die Klingeltöne außerhalb des SwyxIt für bestimmte Anrufernummern verändern? Oder den Signalisierungston manipulieren? Vielleicht habt Ihr aber auch noch eine ganz andere Lösungsidee? Bin für jede Anregung dankbar.
  14. Hallo Experten, wir haben diese Woche umgestellt von Version 2011/SQL2008R2 auf Version 2015/SQL2014 Virtueller Server. Nachdem ich einige Usereinstellungen „nochmal per Hand überspeichern“ musste läuft alles, bis auf: Wir haben eine Nummer eingerichtet, die eine Zeichenfolge empfängt und dann per Script Code verarbeitet. In diesem Fall per ADODB und SQL die IpPbx Datenbank manipuliert. So haben wir es gelöst, wenn man von unterwegs per Handy eine Rufnummer zu sich umleiten wollte. sSQL = "UPDATE [ipPbx].[dbo].[users] " & _ "SET [DefaultFwd] = 1, " & _ "[DefaultFwdNum] = '" & numTo & "' " & _ "FROM [ipPbx].[dbo].[users] a " & _ "JOIN [ipPbx].[dbo].[internalNumbers] b ON a.[userID] = b.[userID] " & _ "WHERE b.[Number] = " & numFrom Das hat nun 4 Jahre wunderbar funktioniert. Nun bekomme ich folgendes Verhalten: Ausgangssituation: Die Hotlinenummer 400 ist umgeleitet zur 401. In den Eigenschaften des Benutzers 400 – „Umleitungen“ ist der Haken „Alle Anrufe umleiten“ gesetzt und „Standardumleitungen“ ist die 401 zu sehen. [ipPbx].[dbo].[users].[ DefaultFwd] ist 1 und [DefaultFwdNum] ist 401. Alle Anrufe bei der 400 klingeln auf der 401. Geht: Verändert man den Eintrag „Standardumleitungen“ auf 402, oder wählt man auf der 402 die ##8400*400#, ist der Eintrag „Standardumleitungen“ und [ipPbx].[dbo].[users].[ DefaultFwdNum] 402. Alle Anrufe bei der 400 klingeln auf der 402. Geht nicht mehr: Verändert man [DefaultFwdNum] in der IpPbx per SQL auf 402, so erscheint auch im Eintrag „Standardumleitungen“ die 402. Alle Anrufe auf der 400 klingeln aber weiterhin auf der 401. Selbst ein nachträgliches Wählen der ##8400*400# bringt keine Verbesserung. Die Umleitung muss erst verändert werden, damit sie funktioniert. Mir ist bewusst, dass es auch die PBXUser PBXCall und PBXScript Objekte gibt (und benutze diese auch), jedoch kann ich damit nur die eigene Umleitung verändern. Die Datenbank wurde bei der Umstellung natürlich Ex- und Importiert. Ich kann an den für mich logischen Stellen für dieses Problem auch keine Unterschiede feststellen. Ich hoffe jemand kann mir dieses Phänomenen erklären.
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use and have taken note of our Privacy Policy.
We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.