MacPerl Stories: Web-based Telemarketing Call Centre system


I am using MacPerl for a Web based Telemarketing Call centre system for 12-24 representatives for a high profile Marketing pilot centre. I was originally briefed to keep it cheap and fast, so I had no choice but to go Mac as this gives the best balance of Price, Performance & Simplicity. Having just been seconded away from running the Telemarketing system for over 1,000 users (DEC Alpha OSF with Informix Database and Terminal Emulator front end), I was fully aware what was needed and that I could do it on a Mac, I am an Macevangelist at heart. I had played once or twice with MacPerl prior to this and had thoroughly enjoyed using Perl on Unix, I am still avoiding learning 'C' but I am heading down the rocky road toward writing some MacPerl extensions.

The solution I built is unique in that it operates and looks like a prospect database but we have NO database software, and its performance is excellent.

How it all works

  1. We source data from here or there and ftp (Netpresenz by Peter Lewis) or AppleShare it onto our dedicated PowerMac 7300/200 running a WebStar server (We will probably look at going to AppleShare IP 6). Then we run MacPerl scripts to create the campaign by Parsing and Cleaning the data, creating directories and seting up the call queues. The call queues have a hidden cookie in them with the customer information so when you go into the script you know who your talking to.

  2. Each campaign has a script to it that is given to us so we created a HTML/JavaScript Web solution that you type in what text and what objects (Radio/Checkbox/Text etc.) you want and then this submits back to the server and a MacPerl is run over the submission and a HTML script is created, very cool. (Not100% yet)

  3. When the Rep. has called the customer all the information is submitted back to a 'thin' AppleScript CGI, 'thin' cos all it does is write the submit data straight back to a results file untranslated thereby making it very quick, and AppleScript cos the MacPerl CGI's I originally had kept hanging due to conflicts with other MacPerl processes (Primarily with the following task), ummmm Matthias forkforkforkfork PPPPPPPLLLEEAAASSEEE (I'll even send you $$$). Anyway the CGI is so simple that the AppleScript CGI is very quick (though slow to compile on startup, ahh for Native AppleScript).

  4. What we then needed to do is to rewrite each call queue with the previous call result and append it to the cookie so that if the Rep goes back into the record the embedded JavaScript reformats the script with each radio and checkbox the way that it was entered on the prior call, a MacPerl of course.

  5. As a spinoff we are often requested via the script to send a customer mail, so we read and translate the call results and where requested do a 'mail merge' by reading a preformatted PostScripted MSWORD letter and create a new PostScript file and copy it to a printer, voila MacPerl !

  6. Finally we need to read and translate and 'download' the data to send it off to be analysed crosstabbed etc., MacPerl.

Why did I telling you all this :-

  1. MacPerl is free, I feel morally obliged to divulge ........... :-)

  2. So you know it can be done ! Yet it could not be done without MacPerl, it's just too difficult and costly.

Paul Schaap, Systems Manager
OPTUS Communications P/L, Australia