Jump to content

Tom Wellige

Root Moderator
  • Content Count

    2,857
  • Joined

  • Last visited

  • Days Won

    93

Everything posted by Tom Wellige

  1. Im Prinzip machst Du da alles richtig. Ich verstehe allerdings nicht, warum die beiden "Datum/Uhrzeit" Blöche in Folge für den Vormittag und Nachmittag von Montag bis Donnerstag nicht klappen sollten. Du hast nicht zufällig noch die alte Version (idealerweise als .RSE Datei exportiert)? Dann würde ich da gerne mal einen Blick drauf werfen.
  2. Ebenso darfst Du den Ruf im PreProcessing nicht annehmen, da sonst anschliessend der "Regel übersprungen" Ausgang nicht mehr funktioniert, d.h. nachfoglende Regeln werden NICHT mehr gestartet. Das gilt für alle GSE Regeln, und so auch für das PreProcessing. Indem Du eine Ansage abspielst verbindet der Server den Ruf um die Ansage abspielen zu können.
  3. From 2009 to 2011 mirjam baumberger wrote a great blog, the "Fridays' Swyx Tip". Every Friday she posted a tip regarding the usage of SwyxWare and connected tools and devices. As the old forum is offline, this article series will be restored here again over the time. Please note that some information in this article series might not be valid anymore with current SwyxWare versions. This blog article was originally posted on 30.01.2009 04:07 Dear Swyx Users Did you know that you can define a custom ringing sound ? When Swyx receives an incoming call you can actually play a custom ringing tone to the caller while the call is connecting to its destination. Scenario: After your standard trading hours, SwyxWare is advising the caller that they will be connected to the after hours service team. While your customers is listening to the instruction on how your after-hours service is working, Swyx is already trying the get a hold of your standby staff. How can you do that? By opening your ECR script and editing the Connect To block. By default the system alert sound is played but you have also an option to select a individual WAV/MP3 file. From the drop down list select a file. Browse your hard drive by clicking on . When searching, you can also choose a file in MP3 format. Upon selection, the MP3 file will automatically be converted into the supported WAV format and saved in your personal directory on the SwyxServer. The converted files are therefore available for use later. During the conversion process, the Info dialog "Please wait, the file is being converted into WAV format" will open. To listen to your new select alert file click on . Click on , to stop playing the file. Or you can even record your own altering announcement To record a new alert announcement click on : You will then be prompted to enter a file name. The following window appears: "Start Recording". Click on "Start" to begin recording the announcement. Stop the recording by clicking on . To delete the selected file, click on . Have a good weekend and happy Swyxing... Regards Mirjam @ IT Net World Ltd, NZ & AUS SWYX Distributor http://www.itnetworld.co.nz/
  4. Genau so ist es. Ob jetzt 1-100, 1-50 oder 1-20 ist egal, das entscheidest Du selbst.
  5. There is always one colleague in the group who is never answering group calls! Does this sound familiar to you? When connecting a call to a group it depends on the group configuration, how the call will be signaled to the group members: Parallel - all phones of all members ring simultaneously Random - one member is picked randomly from the group Rotary - the first call goes to member 1, the second call to member 2, a.s.o. Sequential - the call goes to member 1, if member one is not available (timeout, busy, not logged in) it goes to member 2, if member 2 is not available it goes to member 3, a.s.o. The next new call will go first to member one In many cases these hunt group selections are sufficient, but there is one selection missing in the list which is getting asked for every once in a while: Longest Waiting/Idle The call routing of the SwyxWare wouldn't be the call rouging if this problem couldn't be fixed in there What is needed is a reliable source of information when a certain user had is latest call (disconnect time). This information can be taken from the call detail records. For the ease of usage, they need to be written into a database instead of a text file (refer to KB article Write Call Details Records into a database (kb2491)). Without going too much into details, we will add a small trigger onto this table. This trigger will be called for every newly added record, takes user name and disconnect time from it and stores it also into an additional table "LongestWaiting" into the database. When it is necessary to know when a certain user had his latest disconnect, one only needs to look into "LongestWaiting" table. We use a small GSE Action (comparable with a function in any programming language, it is just "written" with the GSE). This GSE Action takes the group the call should be connected to as parameter (refer to my blog article #6: Make it easy!). It uses the GetUserByAddress method of the PBXConfig Server Script API to resolve all users from the given group. With the list of users the database (LongestWaiting" table will be queried to get a list of all users in the order of old disconnect time first. The GSE Action tries now to connect the call to the users in the list, starting with the first one. If this user is not available (timeout, busy, not logged in) it goes on with the second in the list, a.s.o.. It goes on until the call is either connected or the call wasn't taken by any user. The usage of this GSE Action is actually quite simple, it replaces the standard "Connect To" block by The GSE action takes a few parameters, with the "Destination" being the most important one. This is the group which the call should be delivered to with the new "longest waiting/idle" hunt group type. A complete description, manual and download can be found in the Longest Waiting Hunt Group project, being a part of the Open ECR Extensions project here on Swyx Forum. Enjoy! PS: don't miss to take a look into the ECR Useful Link Collection
  6. Nein, da muss nicht noch etwas zusätzliches installiert werden. Microsoft gibt sich nur einige Mühe es zu verstecken
  7. Das Rufjournal im SwyxIt! zeigt die Rufdauer leider nicht an. Das lässt sich auch per Konfiguration nicht ändern. Das Rufjournal im Outlook zeigt sie allerdings an:
  8. Wie gesagt, den Umleitungsstatus bekommst Du nur im Call Routing des entsprechenden Benutzers abgefragt. Out of the Box sehe ich da keine einfache Lösung. Auch persistente Variablen lösen Dein Problem nicht wirklich, denn in dem Augenblick in dem der Benutzer X seine Umleitung setzt ja kein Call Routing angestossen wird mit dem den neuen Status selber speichern könntest. Die komplette Umleitungskonfiguration kann über den ConfigDataStore abgefagt werden, da sind vom Call Routing aus aber einige Klimmzüge für notwendig. Finally steht die Umleitungskonfiguration in der SwyxWare Datenbank. Technisch kann es natürlich niemand verhindern dass dort z.B. ein Call Routing Skript der Zentrale hineinschaut um sich mal in Bezug auf den Benutzer X ein wenig schlauer zu machen... Es sei allerdings ausdrücklich darauf hingewiesen, dass es dafür an keiner Stelle Support gibt. Bei schreibenden Zugriff auf die Datenbank würde sogar der komplette Support für diesen Server eingestellt.
  9. Du kannst die (ersten n) Namenstasten eines Benutzers auf alle Benutzer einer Gruppe direkt mit der SwyxWare Admnistration verteilen. Das geht über das "Eigenschaften klonen..." im Kontextmenü eines Benutzers:
  10. Hallo Mathias, das mit dem Status ist einfach (siehe hier), das mit der Umleitungskonfiguration eines anderen Benutzers geht leider nicht. Du kannst von Call Routing aus nur auf die eigene Umleitungskonfiguration zugreifen. PBXUser.BusyRedirect PBXUser.BusyRedirectNumber PBXUser.DelayedRedirect PBXUser.DelayedRedirectNumber PBXUser.DelayedRedirectTimeout PBXUser.UnconditionalRedirect PBXUser.UnconditionalRedirectNumber Vielleicht kannst Du ja die Call Routings der anderen Personen die Du abfragen willst/musst mit einbeziehen?
  11. Sorry, I have no ETA information at hand.
  12. When it comes to develop call routing scripts with some own VBScript code in it, it might become handy to be able to have a look on what your code is doing. There are lots of so called "debugging" possibilities, but at this point you have to believe me, the only really reliably working method is placing your own log/trace information into the server trace file. Before you say that those trace files are way too large and confusing for you, they are not, once you know how to read them and how to filter the stuff you are interested in out. In the forum post "How to filter SwyxWare traces for call routing output of a single call" I have explained already in detail how this can easily be done. So lets focus on how to get your own information into the server trace file. This can simply be done with PBXScript.OutputTrace. PBXScript.OutputTrace "Hello World!" So what should be written into the server trace and what not? And how will I find my own trace output quickly and easily? By taking a look into the server trace file you figure that the SwyxWare traces quite a lot of stuff, not only errors but also tons of other information and events. You should do the same in your own VBScript code as well. Do not only trace errors your run into but also every kind of information that might become useful later on when you have to analyse the call routing if for some reason it doesn't work anymore like the many months before. The more information you place into the trace file the more easy it will become to pin point a problem later on. You might not even have to get into the script and work yourself into it if the traces are already informative enough. Lets assume you have written yourself a VBSscript function to do what ever you need to do, placed it into the Start block and call it later on e.g. in an Evaluate block. Taking all said above into consideration, that following is something like a "best practice" function template in terms of tracing: Function DoWhatever ( Parameter1, Parameter2 ) PBXScript.OutputTrace "---------> DoWhatever" PBXScript.OutputTrace "Parameter1 = " & Parameter1 PBXScript.OutputTrace "Parameter2 = " & Parameter2 On Error Resume Next Dim bReturn bReturn = False ' do what ever your function needs to do ' ... If Err <> 0 Then PBXScript.OutputTrace "Error while doing something!" PBXScript.OutputTrace "(Err) " & Err.Description Else PBXScript.OutputTrace "Successfully did something" End If ' if you "calculate" something, it is always a good idea to trace the result of it Dim sSQL sSQL = "SELECT * FROM MyTable WHERE value1 = " Parameter1 & " AND value2 = " & Parameter2 PBXScript.OutputTrace sSQL DoWhatever = bReturn PBXScript.OutputTrace "bReturn = " & bReturn PBXScript.OutputTrace "<--------- DoWhatever" End Function Lets go through the template, step by step... The first and the last thing you function should do it to trace that you have entered and left it again. PBXScript.OutputTrace "---------> DoWhatever" PBXScript.OutputTrace "<--------- DoWhatever" The arrows should tell you that you go into your function and go out of it again. All trace lines in between these two arrow lines will be made by your function. So they also help to find your stuff quickly. If your function takes parameters it is a good idea to trace them. If your function doesn't work and it get already come crap parameters it is not surprising that it fails later on. PBXScript.OutputTrace "Parameter1 = " & Parameter1 PBXScript.OutputTrace "Parameter2 = " & Parameter2 If you have disabled the standard error handling (will be part of a future blog post) you need to check every "dangerous" call yourself, if it succeeded or not. For example you try to write something into a text file it could happen that the file doesn't exist or is read only. Or you try to access a database which is currently not reachable. So if you check for the outcome of such a call do not only trace errors but also that it succeeded. If Err <> 0 Then PBXScript.OutputTrace "Error while doing something!" PBXScript.OutputTrace "(Err) " & Err.Description Else PBXScript.OutputTrace "Successfully did something" End If If you calculate something within your function, e.g. build an SQL statement to run against a database and use some current values (e.g. the function parameters) to do so, it is a good idea to write the result of this into the trace. To stay with the SQL statement example this will enable you later on to copy&paste the statement from the trace file and test it directly against your database. Dim sSQL sSQL = "SELECT * FROM MyTable WHERE value1 = " Parameter1 & " AND value2 = " & Parameter2 PBXScript.OutputTrace sSQL And finally, if your function returns a value, just trace this value: PBXScript.OutputTrace "bReturn = " & bReturn You don't need to put all trace stuff into your function from the beginning, while you are still developing it. But once it is finished and tested you should put trace output in it. You can't trace too much information, just too few. The more information you trace the more easy it will become later on to identify a problem if the call routing script ceases to work. Enjoy! PS: don't miss to take a look into the ECR Useful Link Collection
  13. The following forum topic is restored from the Swyx Forum Archive (2007-2014)
  14. From 2009 to 2011 mirjam baumberger wrote a great blog, the "Fridays' Swyx Tip". Every Friday she posted a tip regarding the usage of SwyxWare and connected tools and devices. As the old forum is offline, this article series will be restored here again over the time. Please note that some information in this article series might not be valid anymore with current SwyxWare versions. This blog article was originally posted on 16.01.2009 00:00 Dear Swyx Users Many of you are familiar with the SwyxMobile extension. When you are away from the office, incoming calls to your extensions are forward to your mobile extensions and common pbx functionalities such as transfer, conference or even call-recording can be triggered from your mobile phone. Let’s assume you arrive back in the office while talking on your mobile extension. It’s is now only a click away to transfer that call from your mobile to your desk phone. Your office phone will start ringing and once you have picked up the phone, you then can continue your conversation on the office extension. Or, if you are in a phone conversation on your SwyxIt! and you want to transfer that call to your mobile extension, you can also transfer the call to your mobile extension with only one mouse click*. From Mobile Extension to Office Phone From Office Phone to Mobile Extension You can transfer a call from your mobile extension to your office phone by selecting “Transfer to office phone” on the SIM menu You can transfer a call to your mobile extension by a simple drag and drop the active Line to your “Connect to Mobile Speed Dial” * Please download the ECR script from the link below. This script will allow you to call your own mobile extension from your desk phone. Additionally you can edit a Speed Dial and configure the Script Number to it. The modified SwyxIt! Skin including a “connect to mobile speed dial” can be downloaded from the link. Download script & skin from here: ECR Script Call Mobile Extension and Skin.zip Have a good weekend and happy Swyxing... Regards Mirjam @ IT Net World Ltd, NZ &AUS SWYX Distributor http://www.itnetworld.co.nz/
  15. The following forum topic is restored from the Swyx Forum Archive (2007-2014) Die von Dir aufgelisteten Objekte befinden sich auf dem Server im Call Routing. Mit denen kannst Du auf dem Client nichts tun. Das Client SDK sollte Dir helfen! Tom.
  16. Enreach, the fast-growing European UC provider, strengthens its position in the European IT and telecommunications markets with the acquisition of M Mobility A/S (‘M Mobility’), a dedicated full-service provider of B2B telco solutions to small and medium-sized enterprises (‘SME’) in Denmark. Founded in 2010, M Mobility provides telco services and hardware which are bundled together in customised solutions. Expanding Danish business With the acquisition of M Mobility, Enreach, supported by pan-European investment company Waterland, significantly grows its Danish footprint. Adding to its successful existing business ipnordic, M Mobility is the second acquisition by Enreach in the Danish B2B telecommunications market this year and helps consolidate its strong position in the SME segment. Stijn Nijhuis, CEO of Enreach: "The acquisition of M Mobility is a great example of our buy and build strategy and the opportunities it brings to our group. This acquisition will expand our presence in the Danish market and help us open up new growth opportunities with customers of M Mobility having access to the enhanced capabilities of ipnordic’s product portfolio. Both companies have a strong focus on customer excellence, exemplified by an average response time for customer service of less than 15 seconds. We are therefore very pleased to be able to add M Mobility to our group." One-stop-shop M Mobility acts as a “one-stop-shop”, offering tailored solutions with one-point-of-contact and a single invoice, providing simplicity and a convenient process for the customer. This unique value proposition offers superior customer service that results in a high degree of customer satisfaction. M Mobility will continue to operate independently while leveraging strong group synergies. The company remains based at its current location in Copenhagen, Denmark. Søren Mathiesen Hass, founder and current CEO of the company will continue to work with the business going forward alongside its experienced management team. Søren said: "We are delighted to become a part of Enreach and contribute to the group’s mission of ensuring that businesses have access to the best communication and collaboration tools in order to work more efficiently. At M Mobility, we are dedicated to growing our customer base by being a one-stop-shop for SMEs. Joining Enreach will help facilitate our customers’ growth even further by offering a broader product portfolio and working closely together with ipnordic, we are certain to be in the right position for sustainable future growth in the Danish market." About Enreach Enreach is the parent company of various labels such as Voiceworks, Swyx, ipnordic, Centile, Eazit and Network Telecom. Enreach provides collaboration technology and telecoms services via their reselling partners or direct brands that are transformative for SMEs and the people that work with them. All brands contribute to intelligent, integrated IT and communication solutions that ensure optimal communication and workflow between organisations. Enreach’s mission is to give businesses access to the best communication and collaboration tools with an easy, user-centric interface built around their specific needs and systems. The groups products put powerful features in reach of every business, no matter the industry or size, so their employees can focus on getting amazing things done. Enreach is active in the core markets Germany, the Netherlands and France with activities in 25 countries and more than 750 employees. For more information about Enreach visit www.enreach.com About M Mobility A/S M Mobility A/S is a dedicated full-service provider of B2B telco solutions to small and medium-sized enterprises (“SME”) in Denmark. The company acts as a “one-stop-shop”, offering tailored solutions with one-point-of-contact and a single invoice, implying simplicity and a convenient process for the customer. The offerings include telco services and hardware which are bundled together in customised solutions. Founded in 2010 by CEO Søren Mathiesen Hass, M Mobility has a strong focus on customer excellence and works with a team of approximately 25 employees. Press release on swyx.com
  17. Die Unternehmensgruppe Enreach treibt ihre Buy-and-Build-Strategie weiter voran und baut mit der Übernahme des in Kopenhagen ansässigen TK-Anbieters M Mobility ihre Präsenz im dänischen Markt aus. Der schnellwachsende UC-Anbieter Enreach, die Muttergesellschaft von Swyx und Voiceworks, stärkt seine Position im europäischen IT- und Telekommunikationsmarkt mit der Übernahme von M Mobility A/S, einem Komplettanbieter von B2B-Telekommunikationslösungen für kleine und mittelständische Unternehmen (KMU) in Dänemark. Das 2010 gegründete Unternehmen M Mobility bietet Telekommunikationsdienste und Hardware an, die zu kundenindividuellen Lösungen gebündelt werden. Ausbau des Geschäfts in Dänemark Mit M Mobility erweitert die Enreach Unternehmensgruppe, die zum Portfolio der Private-Equity-Investment-Gesellschaft Waterland gehört, ihre Geschäftstätigkeiten in Dänemark. Nach der Übernahme von ipnordic im Januar ist M Mobility die zweite Akquisition von Enreach im dänischen B2B-Telekommunikationsmarkt in diesem Jahr und trägt dazu bei, dass die Gruppe ihre starke Marktposition im KMU-Segment weiter festigen kann. „Die Übernahme von M Mobility ist ein gutes Beispiel für unsere Buy-and-Build-Strategie und die damit verbundenen Chancen für unsere Gruppe. Mit der Akquisition bauen wir unsere Präsenz im dänischen Markt aus und können neue Wachstumsmöglichkeiten erschließen. Sowohl ipnordic als auch M Mobility legen großen Wert auf Kundenzufriedenheit, was sich beispielsweise in einer durchschnittlichen Reaktionszeit des Kundenservice von weniger als 15 Sekunden zeigt. Wir freuen uns daher sehr, dass wir M Mobility in unsere Gruppe aufnehmen können“, sagt Stijn Nijhuis, CEO von Enreach. „Als agiler, kundenorientierter TK-Anbieter passt M Mobility hervorragend zu unserer Unternehmensgruppe und ermöglicht es uns, zusätzliche Synergien zu schaffen, was letztlich auch unseren Partnern in Deutschland zugutekommt: Sie profitieren von einer kontinuierlichen Weiterentwicklung unseres Lösungsportfolios sowie einer immer höheren Technologie- und Servicekompetenz“, ergänzt Dr. Ralf Ebbinghaus, Enreach Chief Commercial Officer. Alles aus einer Hand M Mobility agiert als "One-Stop-Shop" und bietet maßgeschneiderte Lösungen sowie einen besonders einfachen, bequemen Prozess, bei dem Kunden eine zentrale Anlaufstelle haben und eine einzige Rechnung erhalten. Der einzigartige Service von M Mobility führt zu einem hohen Maß an Kundenzufriedenheit. M Mobility wird weiterhin eigenständig agieren und gleichzeitig von der Zusammenarbeit innerhalb der Gruppe profitieren. Das Unternehmen behält seinen Sitz am aktuellen Standort in Kopenhagen, Dänemark. Søren Mathiesen Hass, Gründer und derzeitiger CEO von M Mobility, wird das Unternehmen auch in Zukunft zusammen mit seinem erfahrenen Managementteam führen. „Wir freuen uns darauf, zu Enreach zu gehören und gemeinsam mit unseren neuen Kollegen dazu beizutragen, dass Unternehmen ihre Kommunikation und Zusammenarbeit besonders effizient gestalten können“, sagt Søren Mathiesen Hass. „Wir bei M Mobility arbeiten kontinuierlich daran, unseren Kundenstamm zu erweitern, indem wir kleinen und mittelständischen Unternehmen überzeugende Lösungen aus einer Hand bieten. Als Teil von Enreach können wir unsere Kunden mit einem breiteren Produktportfolio noch besser unterstützen und wir sind uns sicher, dass wir durch die enge Zusammenarbeit mit ipnordic die Grundlage für ein nachhaltiges zukünftiges Wachstum im dänischen Markt schaffen.“ Über Enreach Enreach ist die Muttergesellschaft verschiedener Unternehmen wie Voiceworks, Swyx, ipnordic, Centile, Eazit und Network Telecom. Enreach bietet UC-/Collaboration-Technologien und Telekommunikationsdienstleistungen an, die den Arbeitsalltag von kleinen und mittelständischen Unternehmen sowie deren Mitarbeitern entscheidend verbessern. Alle Marken der Gruppe tragen zu intelligenten, integrierten IT- und Kommunikationslösungen bei, die optimale Kommunikation und Zusammenarbeit über Unternehmensgrenzen hinweg gewährleisten. Dabei stellt Enreach Unternehmen Kommunikations- und Collaboration-Tools zur Verfügung, die genau auf ihren Bedarf abgestimmt und einfach zu bedienen sind, damit sich ihre Mitarbeiter auf das Kerngeschäft konzentrieren können. Enreach ist in 25 Ländern aktiv und beschäftigt mehr als 750 Mitarbeiter. Weitere Informationen unter www.enreach.com. Über M Mobility A/S M Mobility A/S ist ein Komplettanbieter von B2B-Telekommunikationslösungen für kleine und mittelständische Unternehmen in Dänemark. Das Unternehmen agiert als "One-Stop-Shop" und bietet seinen Kunden maßgeschneiderte Lösungen aus einer Hand sowie einen einfachen, bequemen Prozess mit einer einzigen Anlaufstelle und Rechnung. Das Angebot umfasst Telekommunikationsdienste und Hardware, die zu individuellen Lösungen gebündelt werden. M Mobility wurde 2010 von CEO Søren Mathiesen Hass gegründet, hat einen starken Fokus auf Kundenzufriedenheit und beschäftigt rund 25 Mitarbeiter. Pressemitteilung auf swyx.de
  18. Hi Kasper, for the number configuration of the trunks and users (external numbers) there is no API available on the Server Script API. You could of course run a PowerShell script (or ConfigDataStore wrapper) from within the call routing to get the number you need, but here you definitely have to keep an eye on the performance and resources. For each such call a ConfigDataStore client will be instantiated which comes with roughly 50MB consumption. Depending on the call load on your system this can sum up to quite considerable numbers. So a constant definition at the beginning of your script might actually be the better solution.
  19. The call was still in the call routing of the destination. In there the latest reached block was e.g. a "Connect To" block to connect the call, but this ran into the configured timeout (default 15 seconds). After that the call was disconnected.
  20. Hi Kasper, there no place else than the CDRs to get this information from. In fact, that is one of the many reasons why they are written in the first place As I see it you should check the "ConnectDate" and not the "DeliveredDate". If the call was only alerted but not connected, you will get a "DeliveredDate", but no "ConnectDate". From what I understood you are looking for successfully connected calls, right? Aside of that your query looks fine for me.
  21. Ich kenne Deine Call Routing nicht, und kann daher nicht sagen, warum Dein Routing "stecken" bleibt, aber PBXCall.PostDialingDigits liefert Dir in jedem Fall ein Ergebnis. Wenn keine Nachwahlziffern gewählt wurden, ist das Ergebnis ein Leerstring. Um sicher zu sein, habe ich es auch gerade nochmal kurz getestet: Ich habe immer genau das zu hören bekommen, was ich erwartet habe. Vielleicht hängst du einfach mal Dein Call Routing (.rse Datei) hier an?
  22. So lange musst Du ja gar nicht warten Nach dem Release der v12 lädst Du sie Dir einfach von der Swyx Webseite herunter, machst auf einem Spielrechner eine "Eval" Installation, holst Dir da die Skins raus die Du haben willst, und kannst sie dann ganz einfach in Deinen Client an der ONPC hinein laden.
  23. From 2009 to 2011 mirjam baumberger wrote a great blog, the "Fridays' Swyx Tip". Every Friday she posted a tip regarding the usage of SwyxWare and connected tools and devices. As the old forum is offline, this article series will be restored here again over the time. Please note that some information in this article series might not be valid anymore with current SwyxWare versions. This blog article was originally posted on 09.01.2009 02:42 Dear Swyx Users In the tip below I illustrate how Swyx helps you to stay in control of your call activities. Swyx records every single phone call in to the Swyx CDR (Call Detail Records). Additionally, you can also report on call activity based on other events. This call-log can be written into a database or a even a simple text file. Let’s assume you have send out a promotion mail to your customers to receive a special discount when presenting a valid Voucher. Now, you want to keep track how many calls you are receiving out of this campaign. Logging this incoming calls in a text file is really easy. We have to add a new ECR rule to your SwyxServer were the caller will be greeted with an announcement like: Welcome to ... , please enter the Voucher Code and complete your entry by pressing the # key. By adding a new Script User to your Swyx Server, we can create a small sample Call Routing Script, which will save all incoming calls including Voucher Code information to a text file on the local hard-drive. Create a new ECR script and enter the custom code below to the Start Block of your new script. ' FileOpen iomode Values Const fsoForReading = 1 Const fsoForWriting = 2 Const fsoForAppending = 8 Const fsoCreateIfNotExist = True Function InsertCallIntoFile ( callerID, keys ) Const filename = "c:\gse_demo\test.txt" Dim fso Dim file ' Create FileSystemObejct CreateObject("Scripting.FileSystemObject") ' Open text file Set file = fso.OpenTextFile(filename, fsoForAppending, fsoCreateIfNotExist) ' Write (append) CallerID into file file.WriteLine ( "Caller: " & callerID & ", Called number: " & CalledNumber & ", Voucher ID: " & keys & ", Date & Time of call: " & CStr(now)) file.Close Set file = Nothing Set fso = Nothing End Function Then add the get DTMF String Block to your script and set “Save input to variable:” to keys and record an announcement which advises the caller how to enter the Voucher Code. Add a new block “Set Variable” to your script and set the Variable name to caller and the variable value to = InsertCallIntoFile (CallerID() , keys) Complete your script with a connect to block so that the caller is forwarded to the appropriate sales team. If you receive a call to this script, a text file will be created on the SwyxServer location c:\gse_demo\test.txt That’s it. Every call to this script is now logged in to the txt file with the according Voucher ID entered, and additional information like caller number and date and time of call is also written in to the file. ;- ) Of course, this call information can also be writing in a database. More details on this topic can be found in the Swyx Knowledgebase article Custom VBScript Code - Call Loggin Into Ddatabase (kb2218). Happy Swyxing... Regards Mirjam @ IT Net World Ltd, NZ & AUS SWYX Distributor http://www.itnetworld.co.nz/ Update: When it comes to call routing and VBScript programming, don't miss this page: ECR Usefull Link Collection
×
×
  • 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.