Genesys Cloud - Developer Community!

Sign Up

  • 1.  Slot for Telephone Number

    Posted 3 days ago
    Edited by Anne Lindner 3 days ago
    Hi Community,
     
    I'm currently building a voice bot in Genesys Cloud Architect and I'm looking for best practices around collecting phone numbers from callers.
     
    Context:
    I want to ask callers for their preferred callback number. After collecting it, the bot reads it back for confirmation.
     
    What I've tried:
    I'm currently using the `builtin:number` slot, which works for recognition – but it comes with one issue:
     
    1. Readback problem: When the bot reads back the captured number for confirmation, it reads it as a full integer (e.g. "five million six hundred forty-two thousand...") instead of digit by digit. This is confusing for callers.
     
    Why not Regex?
    1. A regex slot type seems too rigid for our use case – Our expected phone numbers can vary in format and length depending on whether callers say 0, +41, 0041 etc.

    2. STT reliability: German speech recognition can be tricky with numbers. For example, "zwei" and "zwo" are both valid ways to say "2" in German, and I'm not sure how reliably the STT handles these variations for longer number sequences like phone numbers.
     
    My questions:
    - Is `builtin:number` actually best practice for collecting phone numbers in a voice bot, or is there a better approach?
    - Would DTMF input be more reliable here?
    - Is there a way to make the TTS read back a captured number digit by digit instead of as a whole number? I'm using the de-CH-JanNeural (Azure) voice, so SSML is limited.
     
    Thanks in advance!


    #Architect

    ------------------------------
    Anne Lindner
    ------------------------------



  • 2.  RE: Slot for Telephone Number

    Posted 3 days ago
    Edited by Phaneendra Avatapalli 3 days ago

    Hi Anne,

    From my understanding, builtin:number is still a valid approach for collecting phone numbers.

    For the digit-by-digit readback, you may find this Community thread helpful. It discusses the same scenario and covers using the Communication action with Data and Speak each digit, as well as an alternative approach of splitting the value into individual digits if needed.

    https://community.genesys.com/discussion/voice-bot-read-each-digit-instead-of-whole-number

    You may also find this discussion useful regarding handling numeric variations and different approaches for collecting numeric identifiers in voice bots:

    https://community.genesys.com/discussion/question-on-detecting-numeric-variations-in-voice-bot-flows

    Hope this helps.



    ------------------------------
    Phaneendra
    Technical Solutions Consultant
    ------------------------------



  • 3.  RE: Slot for Telephone Number

    Posted 3 days ago
    Hi Phaneendra,
     
    Thank you so much for pointing me to that thread! It's exactly what I was looking for. Really appreciate you taking the time to dig that up.
     
    Cheers!


    ------------------------------
    Anne Lindner
    ------------------------------



  • 4.  RE: Slot for Telephone Number

    Posted 3 days ago

    Hello! 

    I agree with @Phaneendra Avatapalli.

    Sorry if I didn't understand the question, but the string builder option supports digit by digit on TTS. This option may help. You can set this on Verification.



    ------------------------------
    Arthur Pereira Reinoldes
    ------------------------------



  • 5.  RE: Slot for Telephone Number

    Posted 3 days ago

    Hi Arthur, 
    thanks for your input, I am so glad  the Genesys Community is so fast and helpful! Unfortunately the "speak each digit" option does not change anything. It still goes "One million, five hundret thousand ..." when repeating the slot. But I will have a look at the other solutions and hopefully end up with a digit by digit repetition. Otherwise its a little brain teaser for my callers and thus not a bug but a feature!



    ------------------------------
    Anne Lindner
    ------------------------------



  • 6.  RE: Slot for Telephone Number

    Posted 2 days ago

    If you want a fool-proof method, spend the 1/2 a token per call and use a prompt like this to recognize pretty much any number.  You can vary the country examples to match and give preference to one over another.

    Prompt:
    "Capture a phone number entered by the user in either US or UK format. Accept numbers with or without a country code. Recognize common separators such as spaces, hyphens, parentheses, and periods. Accept US numbers with 10 digits, optionally prefixed by +1, 1, or 001. Accept UK numbers with the country code +44, 44, or 0044, and also accept local UK numbers starting with 0. Normalize the result to E.164 format when possible. Reject invalid lengths, mixed characters, and numbers that do not match US or UK patterns. If the number is ambiguous, ask the user to re-enter it using digits only."

    Suggested validation rules

    • US: +1XXXXXXXXXX, 1XXXXXXXXXX, 001XXXXXXXXXX, or 10-digit local format.

    • UK: +44XXXXXXXXXX, 44XXXXXXXXXX, 0044XXXXXXXXXX, or local format starting with 0.

    • Allow separators, but strip them before validation.

    • Return the country and normalized number if your flow supports it.



    ------------------------------
    Robert Wakefield-Carl
    ttec Digital
    Sr. Director - Innovation Architects
    Robert.WC@ttecdigital.com
    https://www.ttecDigital.com
    https://RobertWC.Blogspot.com
    ------------------------------