TTS and Database capabilities/limitiations?

Discussion in 'CRM / Helpdesk / App Integration' started by coldtech, Oct 26, 2010.

Thread Status:
Not open for further replies.
  1. coldtech

    Joined:
    Oct 5, 2010
    Messages:
    31
    Likes Received:
    0
    After much searching I am coming up empty which leads me to believe the advanced things I was hoping for will not be happening. I do hope I am wrong.

    What I wanted to do was have a IVR for our technicians in the field to call and have it return the work we they performing like so:

    TTS from select query: "Job 123 replace coil". (SELECT 'Job '+CONVERT(varchar(200),JOBID)+' '+JOBDESCR)
    Prompt
    1. If this is completed press 1.
    2. If this requires additional materials to complete press 2.
    etc etc.

    Determine the prompt and perform an appropriate update query against the job ticket being processed.

    I could even live with "Enter job ticket now", accept the user input and than act upon it, but can the IVR repeat the input?
    I am guessing it should be able to verify the user input(??)

    I wanted to buy the VAD today so I could start playing with it but $1000 for something that may not work for me and no returns on it regardless of whether it will fulfill my requirements isn't going to happen.
     
  2. VAD_Support

    VAD_Support Active Member

    Joined:
    Aug 6, 2009
    Messages:
    690
    Likes Received:
    0
    Hi,

    Currently there is no simple way to integrate a TTS engine with a VAD application.

    Playing back the user input again for confirmation is tricky, but it can be done in the following way:
    1) Ask for digits with a User Input component
    2) Create a custom component named for example "PlayDigit", containing a Conditional Component with 10 branches. Each branch is selected for a different digit, from 0 to 9. Add a public property to the "PlayDigit" component to set the digit from outside. And then add a prompt playback component to each branch, playing a file with the number (for example, 0.wav, 1.wav, and so on).
    3) When you want to repeat the input, loop for each digit into the UserInput.Buffer property. You can get each digit with the VAD function "MID".

    I know this is tricky, but it can be done. You can even encapsulate it in a big "PlayAllDigits" component, so you can reuse it anywhere you need.

    Let me know if you need help on doing this.
     
  3. coldtech

    Joined:
    Oct 5, 2010
    Messages:
    31
    Likes Received:
    0
    Thanks for the response.

    I find it mind numbing that this is not possible. How would you do a simple function of:

    Press 1 to hear your account balance. Your current balance is X Dollars and XX Cents.

    If there were some way to play a unique file or audio stream at runtime I could do my own TTS is this possible?

    Would I be able to trigger an SQL update query with the parameter as the user input digits
    (Whether directly or by passing the user input as a paramter to an external application)?

    My concern with no TTS is many of my field techs are, to be polite ... dumb as a box of rocks.
    My concern is they will enter the wrong job # and without hearing what store/problem is associated with the job ticket the wrong jobs will be processed. It's bad enough with physical paperwork.

    I could easily put error checking prior to the update execution and validate the ticket number as one they were currently dispatched on but am not sure if I could return the results of processing back to the VAD project.

    It's really disappointing there is not a 15-30 day trial of this product so we could put it through it's paces to see how far we could push it.

    I have not had the chance to import the 3cx API into my compiler as yet, is there any functionality in it that would allow me to achieve these tasks?
     
  4. VAD_Support

    VAD_Support Active Member

    Joined:
    Aug 6, 2009
    Messages:
    690
    Likes Received:
    0
    Hi,

    The limitation about playing numbers is by design for the first version. It was something that had to be cut from the first version because of time constraints. That is a very requested and useful feature, so I'm pretty sure that it will be added in future releases, but not sure when...

    In the current version, audio files must be selected at design time. You can not use expressions to dynamically create a file name. Creating a WAV file with TTS is something you can do, but the problem is playing that file, because the file name needs to be defined at design time. And if you have multiple simultaneous calls, you will override that file...

    You can use the digits entered by the user in a SQL statement. For example, you can create the following statement:
    select * from jobs where job_id={0}
    There, {0} means the first parameter, and that could be UserInputComponent.Buffer, and you will put there the DTMF entry.

    You're right, currently there is no trial, you have the Free edition with a few set of components, and the Commercial edition with all the features enabled.

    With the 3CX API you can control calls, but not play files. You can not build an IVR for example. You can take a call and put it into a queue, transfer it to another extension, and that kind of things.

    Regards,
     
  5. coldtech

    Joined:
    Oct 5, 2010
    Messages:
    31
    Likes Received:
    0
    Again, thanks for your prompt replies.

    Sadly, now I have to go tell management we wasted purchasing a PBX that won't deliver on our needs.

    As a windows developer I allowed myself to be blinded by the possibilities a windows based PBX would afford me over a Linux based solution. I failed.

    I don't know why the following is on the 3cx site:

    "With 3CX’ IVR system it is possible for pre-recorded audio files or dynamically generated TTS (text to speech) audio to explain options available to callers. The caller responds by pressing a digit, a combination of digits or by saying a short phrase."

    From what you have explained it's a blatant lie.
     
  6. coldtech

    Joined:
    Oct 5, 2010
    Messages:
    31
    Likes Received:
    0
    Well just got off the phone with Brian at 3CX and had a great discussion with him.

    I'm relieved at how receptive that conversation was received and am looking forward to seeing a really great and positive return on it.
     
  7. SWSDEV

    SWSDEV Member

    Joined:
    Feb 23, 2008
    Messages:
    256
    Likes Received:
    0
    I have accomplished these things.

    For example I have a reusable component that looks at the caller id and plays back the number for line verification.

    I am using a TTS engine.

    I discovered that there was a problem at first because IIS had a problem creating or playing the TTS on the same thread. I had to thread the creation of the TTS component but it works perfect.

    At design time I specified the file name with a default .wav file and I just overwrite it with each call.

    And regarding the issue with multiple calls, my first thought is that you could easily have a call pause and wait until the previous caller finishes hearing his audio, so sort of like queuing. But I could find a cleaner solution to the multiple calls issue, but that solution would work fine if you do not have a lot of simultaneous callers.
     
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...
  8. VAD_Support

    VAD_Support Active Member

    Joined:
    Aug 6, 2009
    Messages:
    690
    Likes Received:
    0
    Hi Shahzad,

    Thanks for sharing your experiences!

    Yes, there are some things that should be easier, and we hope to address those issues in future releases, but for now you can do that anyway after all!

    Best regards,
     
  9. coldtech

    Joined:
    Oct 5, 2010
    Messages:
    31
    Likes Received:
    0
    Spoke with Mr. Qureshi today and things are looking bright again.

    I'm looking forward to doing some new stuff....after I get finished with old stuff :)
     
  10. VAD_Support

    VAD_Support Active Member

    Joined:
    Aug 6, 2009
    Messages:
    690
    Likes Received:
    0
    Let us know if you need help with your VAD projects!
     
Thread Status:
Not open for further replies.