VoiceGuide IVR Software Main Page
Jump to content

Nt Service, Fax And Cluster Questions

Recommended Posts

I've tried the trial version and am seriously impressed with how easy it is to use. I need to use an outdialer for my application so it can send messages using TTS to 100's or 1000's of customers in our database. I have several questions to ask if you don't mind please...

 

1) Can VG be run as a Service on Window 2003 Server? I noticed a similar question posted 2 years ago and the answer was "it's on the cards". This is really important so Windows can monitor VG and use " auto recovery" if it fails.

 

2) My web-based service will need to send either fax or voice messages depending on what the users have chosen. Are there any plans for VG to handle faxing instead of scripting WinFax to do it?

 

3) My main application must keep a log in its central database of every call made (who it was sent to, what the message was, and what the outcome was). It would be great if VG could use my SQL Server database schema instead of its own schema and NOT delete the outgoing records after each call. Instead I want it to log the final status of the call (engaged, bad number, success, etc) as a permanent record. Is this possible?

 

If not, is it possible to pass my own variables to VG via it's own db table with each call? I need to hand VG a unique ID so I can regference it in a VG script and insert it into my own db table along with VG's status of each call. There doesn't seem to be a spare field in VG's db schema to accommodate custom data to pass through. I'm not sure if I've explained this well?

 

4) Does VG have a call status variable I can reference in a script? By status I mean if the number dialled was engaged, person hung up, answerphone, etc.

 

5) For fault tollerance I need to use 2 servers for outbound calls, so if VG or the server fails the other server will carry on working. Can you forsee any problems if VG runs on 2 servers and uses the same SQL db for the OutDialQue? They need to share this queue for this "clustering" to work correctly. I may need to introduce record locking to prevent both VG servers from trying to process the same call. If the record is locked will VG move on and process the next record?

 

6) As VG may need to deliver the same message to 100's of numbers, can it intelligently use the same TTS wave file each time without processing TTS for every call? Since our messages can be 1 minute long it's a waste of CPU time if it has to repeat the process for each call. If VG can't use multiple instances of the TTS engine (ScanSoft or Loquendo) simultaneously then the queue for TTS will grow and seriously reduce the number of calls VG can make per hour.

 

Thanks very much - sorry for having so many questions.

Best regards,

Gary.

Share this post


Link to post
1) Can VG be run as a Service on Window 2003 Server?

For the versions of VoiceGuide currently available you can use SRVANY or FireDaemon (or most of the other make-a-service tools) to make VoiceGuide run as a service.

FireDaemon can be found at: http://www.firedaemon.com

Are there any plans for VG to handle faxing

No. Any faxing will need to be passed of to another application.

It would be great if VG could use my SQL Server database schema instead of its own schema and NOT delete the outgoing records after each call.

It can, see: http://voiceguide.com/forums/index.php?showtopic=2696

Download "VG for Dialogic" from our Downloads page.

Records will be deleted if a successful call was made.

You can however from within your script which runs on a successful call insert a record into another table etc.

is it possible to pass my own variables to VG via it's own db table with each call?

Sure. Just run a DB Query module from within your script to read in any data/variables etc.

doesn't seem to be a spare field in VG's db schema to accommodate custom data to pass through.

There is. See the "strRV" field:

strRV

List of custom Result variables which can be used by the VoiceGuide script above. The format of this field is [RvName]{RvValue}. Multiple Result variables can be specified by listing the name-value pairs as needed.

4) Does VG have a call status variable I can reference in a script? By status I mean if the number dialed was engaged, person hung up, answerphone, etc.

Yes. $RV[OutDial_Result]

From:http://www.voiceguide.com/vghelp/html/ResultVariables.htm :

When the outgoing call has been answered or the number of retries has been used up this RV stores the type of outcome. Possible values are: Contacted_Human, Contacted_AM Contacted_Pager, Contacted_Fax, Uncontactable_OnDontDialList, SIT_Reorder, SIT_NoCircuit, SIT_CustIrReg, SIT_Unknown, SIT_Unavailable, Uncontactable_NoAnswer

5) For fault tollerance I need to use 2 servers for outbound calls, so if VG or the server fails the other server will carry on working. Can you forsee any problems if VG runs on 2 servers and uses the same SQL db for the OutDialQue? They need to share this queue for this "clustering" to work correctly. I may need to introduce record locking to prevent both VG servers from trying to process the same call. If the record is locked will VG move on and process the next record?

As VG retrieves the next record to dial it also updates the record's next allowed dial time and decrements the retry counter.

We'd need to setup a test to see how current release behaves when records are locked, but in situations where the multiple servers would retrieve the same record then to calls would be made to the same number - so one of them would definitely get an engaged signal... and the next call and retry fields would still be set to the values that we'd expect them to be set if only one call went out... so really there are no problems caused in such a situation anyway...

If some change was needed in VG to accommodate the record locking mechanism then we'd just program this in and make the version available.

6) As VG may need to deliver the same message to 100's of numbers, can it intelligently use the same TTS wave file each time without processing TTS for every call?

You may want to look into having a small app generate the TTS file once and just refer to that pre-generated .WAV file from within the scripts.

VG reuses TTS generated .WAV files but this reuse is not shared across multiple lines.

Share this post


Link to post

Thanks for your really quick reply and excellent answers.

 

Do you know of any fax software that has an API so I can send faxes triggered from a VG script using vbs? (Sorry if this sounds cheeky, but we need both fax and voice)

 

but in situations where the multiple servers would retrieve the same record then to calls would be made to the same number - so one of them would definitely get an engaged signal... and the next call and retry fields would still be set to the values that we'd expect them to be set if only one call went out... so really there are no problems caused in such a situation anyway...

I understand the logic, but time will be wasted if one server dialled a number that the other server was currently handling. Sure, the engaged tone will force it on to the next record but if every other call resulted in "engaged" it would be very inefficiant. I will check out db record locking - not sure if the SQL used by VG will need to be modified to request a special lock used by SQL Server.

 

You may want to look into having a small app generate the TTS file once and just refer to that pre-generated .WAV file from within the scripts.

This app would also need an API to pass file name and text data to. Do you know of any please? The only ones I've seen are GUI only.

 

Thanks again.

Share this post


Link to post

Forgot to ask if VG For Dialogic supports voice modems? I don't have a Dialogic card at the moment so I'm using a US Robotics Voice Modem for now. (Sound quality is terrible but I guess that's just the slow serial port connection?)

Share this post


Link to post
Do you know of any fax software that has an API so I can send faxes triggered from a VG script using vbs?

WinFax.

This app would also need an API to pass file name and text data to. Do you know of any please? The only ones I've seen are GUI only.

Don't know of any off-hand. We could probably create this small app for you. There would be an extra charge for this - send an email to sales@voiceguide.com referring to this thread and requesting a quote.

if VG For Dialogic supports voice modems?

No. Only the "TAPI" version of VG will work with Voice modems.

Share this post


Link to post

I've just discovered that Windows built-in fax service is totally scriptable, and it's free. There are loads of docs on MSDN, unlike Symantec's website. I'll try to integrate it within VG scripts.

 

Just to help me clarify the difference between the two versions of VG:

 

TAPI - this version won't let you specify your own datasource for the outbound queue.

Dialogic - this version won't work with voice modems but lets you use your own datasource for the outbound queue.

 

So is there a way I can use the custom datasource feature of the Dialogic version but with the voice modem compatability of the TAPI version?

 

Thanks again!

Share this post


Link to post
TAPI - this version won't let you specify your own datasource for the outbound queue.

Dialogic - this version won't work with voice modems but lets you use your own datasource for the outbound queue.

Correct.

So is there a way I can use the custom datasource feature of the Dialogic version but with the voice modem compatability of the TAPI version?

No.

 

Can you post some links to info on scripting MS Fax?

Share this post


Link to post

So how can I build a rough "proof of concept" using our own SQL Server for the job queue without buying a $800 Dialogic card? I don't suppose there's there a Dialogic software emulator? :)

 

MSDN docs and example scripts on scripting Windows fax service:

http://msdn.microsoft.com/library/default....portal_9nol.asp

 

I read somewhere that Win2K has limited line support. XP supports just 2 lines, but Windows 2003 Server supports unlimited lines. It works over a LAN too which is cool and will accept all sorts of files - doc, rtf, pdf, tif, txt, etc.

Share this post


Link to post
So how can I build a rough "proof of concept" using our own SQL Server for the job queue

You would need to have the entries from your SQL Server copied over to MS Access OutDialQue.mdb database.

 

It's really best to just use a Dialogic card though - voice modems have too many problems.

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×