get number Action
Get a number entered as a series of digit keypresses. You can set a prompt and configure how many digits are required or the digit that signifies the end of the number. This action is simpler to use than get input for digit input.
language wrappers and examples
The get number properties are:
Property | Required/Optional | Default | Description |
---|---|---|---|
next page | required | A web page request object that defines the web page to be requested once the get number action has completed successfully. The digits entered will be sent to this page. | |
prompt | optional | - | A play action that can prompt for digits. |
digit count | optional | 0 | The number of digits to enter. 0 signifies an unlimited number of digits, in which case end digit must be set. |
end digit | optional | "#" | A single digit that, when pressed, will indicate the end of the number. An empty string signifies no end digit, in which case digit count must not be zero. Valid digits are 0123456789ABCD#*. |
valid digits | optional | "0123456789" | A string that represents the set of digits that are deemed to be valid. Note that the help digit and end digit are also valid entries in addition to those set here. Any valid Dual Tone Multi Frequency
(DTMF) digit can be included in this string. Valid digits are 0123456789ABCD#*. |
help digit | optional | "*" | A single digit that, when pressed, will result in the prompt being repeated. An emtpy string signifies no help digit. Valid digits are 0123456789ABCD#*. |
seconds timeout from API V2.0 | optional | 30 | The time in seconds that the action waits for input to complete after the prompt has finished. A value of 0 means that the action will return immediately with whatever digits are currently available. |
milliseconds inter digit timeout from API V2.0 | optional | 5000 | An integer. The time period in milliseconds that the action waits for each consecutive digit to be entered. A value of 0 or a negative value signifies that this timeout is disabled. |
milliseconds initial timeout from API V2.0 | optional | milliseconds inter digit timeout | An integer. The time period in milliseconds that the action waits for the initial digit to be entered. A value of 0 or a negative value signifies that this timeout is disabled. If this value is omitted the value of milliseconds inter digit timeout is used. |
on digit timeout messages | optional | "Sorry, I did not hear that.", "Please listen to the instructions and then use your telephone keypad to enter a valid number." | An array of play actions. This defines messages to play if no digit is pressed within the digit timeout period. Each play action in the array is played once for each successive timeout. When all messages have been played the get number action finishes. Note that barge in is disabled by default for these actions. |
on invalid digit messages | optional | "Sorry, that was not a valid number.", "Please listen to the instructions and enter a valid number." | An array of play actions. This defines messages to play if an invalid digit is pressed (a digit that is not defined in valid digits). Each play action in the array is played once for each successive invalid digit. When all messages have been played the get number action finishes. Note that barge in is disabled by default for these actions. |
Remarks
get number
supports typing ahead.
It inspects any digits that have already been cached from barge in on a preceding play action.
If they are valid digits they prefix any digits subsequently entered.
If these digits on their own satisfy digit count
or end digit
this action will return immediately.
To avoid this behaviour you can insert a clear input action after the play action.
Returns
The digits entered will be returned via the subsequent HTTP Request to thenext page
in the action result as follows:Property | Availability | Description |
---|---|---|
entered number | always | A string of the digits that were entered in response to the prompt. The end digit , if entered, is not returned in this string. |
-
Examples:
Get a variable length number using the defaults (ending with a '#'):
"get_number" : { "prompt" : { "play" : { "play_list" : [ { "text_to_say" : "Please enter your number followed by a hash." } ] } }, "next_page" : { "url" : "usenumberpage" } }
The following may be returned when a number is successfully entered followed by '#':
"action_result" : { "action" : "get_number", "result" : { "entered_number" : "0287368394" } }
Get a 16 digit number using the defaults:
"get_number" : { "prompt" : { "play" : { "play_list" : [ { "text_to_say" : "Please enter your 16 digit number" } ] } }, "digit_count" : 16, "end_digit" : "", "next_page" : { "url" : "usenumberpage" } }
The following may be returned when a number is successfully entered:
"action_result" : { "action" : "get_number", "result" : { "entered_number" : "8825620287368394" } }
Get a 4 digit number containing digits 1-8:
"get_number" : { "prompt" : { "play" : { "play_list" : [ { "text_to_say" : "Please enter 4 digits between 1 and 8" } ] } }, "digit_count" : 4, "end_digit" : "", "valid_digits" : "12345678", "next_page" : { "url" : "usenumberpage" } }
The following may be returned when a 4 digit number is successfully entered:
"action_result" : { "action" : "get_number", "result" : { "entered_number" : "6816" } }
Get a variable length number containing digits 0-9, ending with a '#':
"get_number" : { "prompt" : { "play" : { "play_list" : [ { "text_to_say" : "Please enter your id followed by a hash" } ] } }, "digit_count" : 0, "end_digit" : "#", "help_digit" : "*", "milliseconds_inter_digit_timeout" : 10000, "on_digit_timeout_messages" : [ { "play" : { "play_list" : [ "file_to_play" : "silencemessage1.wav" ] } }, { "play" : { "play_list" : [ "file_to_play" : "silencemessage2.wav" ] } } ], "on_invalid_digit_messages" : [ { "play" : { "play_list" : [ "text_to_say" : "Please enter only numeric digits followed by a hash" ] } }, { "play" : { "play_list" : [ "text_to_say" : "No really!", "text_to_say" : "Please enter only numeric digits followed by a hash" ] } } ], "next_page" : { "url" : "usenumberpage" } }
The following may be returned when a number is successfully entered followed by a '#':
"action_result" : { "action" : "get_number", "result" : { "entered_number" : "716723" } }
-
GetNumber Class
Namespace: Aculab.Cloud.RestAPIWrapper
Assembly: Aculab.Cloud.RestAPIWrapper.dllAn action to prompt the caller to enter a number and wait for it to be entered.
-
public class GetNumber : TelephonyAction { // Constructors [Obsolete] public GetNumber(Play prompt); [Obsolete] public GetNumber(Play prompt, WebPageRequest nextPage); [Obsolete] public GetNumber(Play prompt, WebPageRequest nextPage, int digitCount); [Obsolete] public GetNumber(Play prompt, WebPageRequest nextPage, char endDigit); public GetNumber(WebPageRequest nextPage, Play prompt = null, int? digitCount = null, char? endDigit = null); // Members public Play Prompt; public int DigitCount; public char EndDigit; public String ValidDigits; public char HelpDigit; public int SecondsTimeout; public int MillisecondsInitialTimeout; public int MillisecondsInterDigitTimeout; [Obsolete] public int SecondsDigitTimeout; public List<Play> OnDigitTimeoutMessages; public List<Play> OnInvalidDigitMessages; public WebPageRequest NextPage; }
Examples:
-
Get a variable length number using the defaults (ending with a '#'):
List<TelephonyAction> actions = new List<TelephonyAction>(); var prompt = Play.SayText("Please enter your number followed by a hash."); var getInputAction = new GetInput(new WebPageRequest("UseNumberPage.aspx"), prompt) { DigitInputEnabled = false }; actions.Add(getInputAction);
Obtain the number entered from the action's next page request:
// Unpack the request var telephonyRequest = new TelephonyRequest(Request); var getNumberResult = (GetNumberResult)telephonyRequest.InstanceInfo.ActionResult; var enteredNumber = getNumberResult.EnteredNumber;
-
Get a 16 digit number using the defaults:
List<TelephonyAction> actions = new List<TelephonyAction>(); var prompt = Play.SayText("Please enter your 16 digit number."); var getNumberAction = new GetNumber(new WebPageRequest("UseNumberPage.aspx"), prompt); getNumberAction.DigitCount = 16; getNumberAction.EndDigit = '\0'; actions.Add(getNumberAction);
Obtain the number entered from the action's next page request:
// Unpack the request var telephonyRequest = new TelephonyRequest(Request); var getNumberResult = (GetNumberResult)telephonyRequest.InstanceInfo.ActionResult; var enteredNumber = getNumberResult.EnteredNumber;
-
Get a 4 digit number containing digits 1-8:
List<TelephonyAction> actions = new List<TelephonyAction>(); var prompt = Play.SayText("Please enter 4 digits between 1 and 8."); var getNumberAction = new GetNumber(new WebPageRequest("UseNumberPage.aspx"), prompt); getNumberAction.DigitCount = 4; getNumberAction.EndDigit = '\0'; getNumberAction.ValidDigits = "12345678"; actions.Add(getNumberAction);
Obtain the number entered from the action's next page request:
// Unpack the request var telephonyRequest = new TelephonyRequest(Request); var getNumberResult = (GetNumberResult)telephonyRequest.InstanceInfo.ActionResult; var enteredNumber = getNumberResult.EnteredNumber;
-
Get a variable length number containing digits 0-9, ending with a '#':
List<TelephonyAction> actions = new List<TelephonyAction>(); var prompt = Play.SayText("Please enter your id followed by a hash."); var getNumberAction = new GetNumber(new WebPageRequest("UseNumberPage.aspx"), prompt); getNumberAction.MillisecondsInterDigitTimeout = 10000;
Set up the message to play if the caller does not enter a number or enters an invalid digit:
var digitTimeoutMessages = new List<Play>(); digitTimeoutMessages.Add(Play.PlayFile("silencemessage1.wav")); digitTimeoutMessages.Add(Play.PlayFile("silencemessage2.wav")); getNumberAction.OnDigitTimeoutMessages = digitTimeoutMessages; var invalidDigitMessages = new List<Play>(); invalidDigitMessages.Add(Play.SayText("Please enter only numeric digits followed by a hash")); var secondMessage = Play.SayText("No really!"); secondMessage.AddText("Please enter only numeric digits followed by a hash"); invalidDigitMessages.Add(secondMessage); getNumberAction.OnInvalidDigitMessages = invalidDigitMessages; actions.Add(getNumberAction);
Obtain the number entered from the action's next page request:
// Unpack the request var telephonyRequest = new TelephonyRequest(Request); var getNumberResult = (GetNumberResult)telephonyRequest.InstanceInfo.ActionResult; var enteredNumber = getNumberResult.EnteredNumber;
-
-
public class GetNumber : TelephonyAction { // Constructors [Obsolete] public GetNumber(Play prompt); [Obsolete] public GetNumber(Play prompt, WebPageRequest nextPage); [Obsolete] public GetNumber(Play prompt, WebPageRequest nextPage, int digitCount); [Obsolete] public GetNumber(Play prompt, WebPageRequest nextPage, char endDigit); public GetNumber(WebPageRequest nextPage, Play prompt = null, int? digitCount = null, char? endDigit = null); // Members public Play Prompt; public int DigitCount; public char EndDigit; public String ValidDigits; public char HelpDigit; public int SecondsTimeout; public int MillisecondsInitialTimeout; public int MillisecondsInterDigitTimeout; [Obsolete] public int SecondsDigitTimeout; public List<Play> OnDigitTimeoutMessages; public List<Play> OnInvalidDigitMessages; public WebPageRequest NextPage; }
Examples:
-
Get a variable length number using the defaults (ending with a '#'):
List<TelephonyAction> actions = new List<TelephonyAction>(); var prompt = Play.SayText("Please enter your number followed by a hash."); var getInputAction = new GetInput(new WebPageRequest("UseNumberPage.aspx"), prompt) { DigitInputEnabled = false }; actions.Add(getInputAction);
Obtain the number entered from the action's next page request:
// Unpack the request var telephonyRequest = new TelephonyRequest(Request); var getNumberResult = (GetNumberResult)telephonyRequest.InstanceInfo.ActionResult; var enteredNumber = getNumberResult.EnteredNumber;
-
Get a 16 digit number using the defaults:
List<TelephonyAction> actions = new List<TelephonyAction>(); var prompt = Play.SayText("Please enter your 16 digit number."); var getNumberAction = new GetNumber(new WebPageRequest("UseNumberPage.aspx"), prompt); getNumberAction.DigitCount = 16; getNumberAction.EndDigit = '\0'; actions.Add(getNumberAction);
Obtain the number entered from the action's next page request:
// Unpack the request var telephonyRequest = new TelephonyRequest(Request); var getNumberResult = (GetNumberResult)telephonyRequest.InstanceInfo.ActionResult; var enteredNumber = getNumberResult.EnteredNumber;
-
Get a 4 digit number containing digits 1-8:
List<TelephonyAction> actions = new List<TelephonyAction>(); var prompt = Play.SayText("Please enter 4 digits between 1 and 8."); var getNumberAction = new GetNumber(new WebPageRequest("UseNumberPage.aspx"), prompt); getNumberAction.DigitCount = 4; getNumberAction.EndDigit = '\0'; getNumberAction.ValidDigits = "12345678"; actions.Add(getNumberAction);
Obtain the number entered from the action's next page request:
// Unpack the request var telephonyRequest = new TelephonyRequest(Request); var getNumberResult = (GetNumberResult)telephonyRequest.InstanceInfo.ActionResult; var enteredNumber = getNumberResult.EnteredNumber;
-
Get a variable length number containing digits 0-9, ending with a '#':
List<TelephonyAction> actions = new List<TelephonyAction>(); var prompt = Play.SayText("Please enter your id followed by a hash."); var getNumberAction = new GetNumber(new WebPageRequest("UseNumberPage.aspx"), prompt); getNumberAction.MillisecondsInterDigitTimeout = 10000;
Set up the message to play if the caller does not enter a number or enters an invalid digit:
var digitTimeoutMessages = new List<Play>(); digitTimeoutMessages.Add(Play.PlayFile("silencemessage1.wav")); digitTimeoutMessages.Add(Play.PlayFile("silencemessage2.wav")); getNumberAction.OnDigitTimeoutMessages = digitTimeoutMessages; var invalidDigitMessages = new List<Play>(); invalidDigitMessages.Add(Play.SayText("Please enter only numeric digits followed by a hash")); var secondMessage = Play.SayText("No really!"); secondMessage.AddText("Please enter only numeric digits followed by a hash"); invalidDigitMessages.Add(secondMessage); getNumberAction.OnInvalidDigitMessages = invalidDigitMessages; actions.Add(getNumberAction);
Obtain the number entered from the action's next page request:
// Unpack the request var telephonyRequest = new TelephonyRequest(Request); var getNumberResult = (GetNumberResult)telephonyRequest.InstanceInfo.ActionResult; var enteredNumber = getNumberResult.EnteredNumber;
-
-
public class GetNumber : TelephonyAction { // Constructors [Obsolete] public GetNumber(Play prompt); [Obsolete] public GetNumber(Play prompt, WebPageRequest nextPage); [Obsolete] public GetNumber(Play prompt, WebPageRequest nextPage, int digitCount); [Obsolete] public GetNumber(Play prompt, WebPageRequest nextPage, char endDigit); public GetNumber(WebPageRequest nextPage, Play prompt = null, int? digitCount = null, char? endDigit = null); // Members public Play Prompt; public int DigitCount; public char EndDigit; public String ValidDigits; public char HelpDigit; public int SecondsTimeout; public int MillisecondsInitialTimeout; public int MillisecondsInterDigitTimeout; [Obsolete] public int SecondsDigitTimeout; public List<Play> OnDigitTimeoutMessages; public List<Play> OnInvalidDigitMessages; public WebPageRequest NextPage; }
Examples:
-
Get a variable length number using the defaults (ending with a '#'):
List<TelephonyAction> actions = new List<TelephonyAction>(); var prompt = Play.SayText("Please enter your number followed by a hash."); var getInputAction = new GetInput(new WebPageRequest("UseNumberPage.aspx"), prompt) { DigitInputEnabled = false }; actions.Add(getInputAction);
Obtain the number entered from the action's next page request:
// Unpack the request var telephonyRequest = await TelephonyRequest.UnpackRequestAsync(Request); var getNumberResult = (GetNumberResult)telephonyRequest.InstanceInfo.ActionResult; var enteredNumber = getNumberResult.EnteredNumber;
-
Get a 16 digit number using the defaults:
List<TelephonyAction> actions = new List<TelephonyAction>(); var prompt = Play.SayText("Please enter your 16 digit number."); var getNumberAction = new GetNumber(new WebPageRequest("UseNumberPage.aspx"), prompt); getNumberAction.DigitCount = 16; getNumberAction.EndDigit = '\0'; actions.Add(getNumberAction);
Obtain the number entered from the action's next page request:
// Unpack the request var telephonyRequest = await TelephonyRequest.UnpackRequestAsync(Request); var getNumberResult = (GetNumberResult)telephonyRequest.InstanceInfo.ActionResult; var enteredNumber = getNumberResult.EnteredNumber;
-
Get a 4 digit number containing digits 1-8:
List<TelephonyAction> actions = new List<TelephonyAction>(); var prompt = Play.SayText("Please enter 4 digits between 1 and 8."); var getNumberAction = new GetNumber(new WebPageRequest("UseNumberPage.aspx"), prompt); getNumberAction.DigitCount = 4; getNumberAction.EndDigit = '\0'; getNumberAction.ValidDigits = "12345678"; actions.Add(getNumberAction);
Obtain the number entered from the action's next page request:
// Unpack the request var telephonyRequest = await TelephonyRequest.UnpackRequestAsync(Request); var getNumberResult = (GetNumberResult)telephonyRequest.InstanceInfo.ActionResult; var enteredNumber = getNumberResult.EnteredNumber;
-
Get a variable length number containing digits 0-9, ending with a '#':
List<TelephonyAction> actions = new List<TelephonyAction>(); var prompt = Play.SayText("Please enter your id followed by a hash."); var getNumberAction = new GetNumber(new WebPageRequest("UseNumberPage.aspx"), prompt); getNumberAction.MillisecondsInterDigitTimeout = 10000;
Set up the message to play if the caller does not enter a number or enters an invalid digit:
var digitTimeoutMessages = new List<Play>(); digitTimeoutMessages.Add(Play.PlayFile("silencemessage1.wav")); digitTimeoutMessages.Add(Play.PlayFile("silencemessage2.wav")); getNumberAction.OnDigitTimeoutMessages = digitTimeoutMessages; var invalidDigitMessages = new List<Play>(); invalidDigitMessages.Add(Play.SayText("Please enter only numeric digits followed by a hash")); var secondMessage = Play.SayText("No really!"); secondMessage.AddText("Please enter only numeric digits followed by a hash"); invalidDigitMessages.Add(secondMessage); getNumberAction.OnInvalidDigitMessages = invalidDigitMessages; actions.Add(getNumberAction);
Obtain the number entered from the action's next page request:
// Unpack the request var telephonyRequest = await TelephonyRequest.UnpackRequestAsync(Request); var getNumberResult = (GetNumberResult)telephonyRequest.InstanceInfo.ActionResult; var enteredNumber = getNumberResult.EnteredNumber;
-
-
-
GetNumber Class
Namespace: Aculab.Cloud.RestAPIWrapper
Assembly: Aculab.Cloud.RestAPIWrapper.dllAn action to prompt the caller to enter a number and wait for it to be entered.
-
Public Class GetNumber Inherits TelephonyAction ' Constructors [Obsolete] Public Sub New (prompt As Play) [Obsolete] Public Sub New (prompt As Play, nextPage As Webpagerequest) [Obsolete] Public Sub New (prompt As Play, nextPage As Webpagerequest, digitCount As Integer) [Obsolete] Public Sub New (prompt As Play, nextPage As Webpagerequest, endDigit As Char) Public Sub New (nextPage As Webpagerequest, Optional prompt As Play = Nothing, Optional digitCount As Integer? = Nothing, Optional endDigit As Char? = Nothing) ' Members Public Property Prompt As Play Public Property DigitCount As Integer Public Property EndDigit As Char Public Property ValidDigits As String Public Property HelpDigit As Char Public Property SecondsTimeout As Integer Public Property MillisecondsInitialTimeout As Integer Public Property MillisecondsInterDigitTimeout As Integer [Obsolete] Public Property SecondsDigitTimeout As Integer Public Property OnDigitTimeoutMessages As List(Of Play) Public Property OnInvalidDigitMessages As List(Of Play) Public Property NextPage As Webpagerequest End Class
Examples:
-
Get a variable length number using the defaults (ending with a '#'):
Dim actions = New List(Of TelephonyAction) Dim prompt = Play.SayText("Please enter your number followed by a hash.") Dim getInputAction = New GetInput(New WebPageRequest("UseNumberPage.aspx"), prompt) getInputAction.DigitInputEnabled = False actions.Add(getInputAction)
Obtain the number entered from the action's next page request:
' Unpack the request Dim telephonyRequest = New TelephonyRequest(Request) Dim getNumberResult As GetNumberResult = telephonyRequest.InstanceInfo.ActionResult Dim enteredNumber = getNumberResult.EnteredNumber
-
Get a 16 digit number using the defaults:
Dim actions = New List(Of TelephonyAction) Dim prompt = Play.SayText("Please enter your 16 digit number.") Dim getNumberAction = New GetNumber(New WebPageRequest("UseNumberPage.aspx"), prompt) getNumberAction.DigitCount = 16 getNumberAction.EndDigit = Chr(0) actions.Add(getNumberAction)
Obtain the number entered from the action's next page request:
' Unpack the request Dim telephonyRequest = New TelephonyRequest(Request) Dim getNumberResult As GetNumberResult = telephonyRequest.InstanceInfo.ActionResult Dim enteredNumber = getNumberResult.EnteredNumber
-
Get a 4 digit number containing digits 1-8:
Dim actions = New List(Of TelephonyAction) Dim prompt = Play.SayText("Please enter 4 digits between 1 and 8.") Dim getNumberAction = New GetNumber(New WebPageRequest("UseNumberPage.aspx"), prompt) getNumberAction.DigitCount = 4 getNumberAction.EndDigit = Chr(0) getNumberAction.ValidDigits = "12345678" actions.Add(getNumberAction)
Obtain the number entered from the action's next page request:
' Unpack the request Dim telephonyRequest = New TelephonyRequest(Request) Dim getNumberResult As GetNumberResult = telephonyRequest.InstanceInfo.ActionResult Dim enteredNumber = getNumberResult.EnteredNumber
-
Get a variable length number containing digits 0-9, ending with a '#':
Dim actions = New List(Of TelephonyAction) Dim prompt = Play.SayText("Please enter your id followed by a hash.") Dim getNumberAction = New GetNumber(New WebPageRequest("UseNumberPage.aspx"), prompt) getNumberAction.MillisecondsInterDigitTimeout = 10000
Set up the message to play if the caller does not enter a number or enters an invalid digit:
Dim digitTimeoutMessages = New List(Of Play) digitTimeoutMessages.Add(Play.PlayFile("silencemessage1.wav")) digitTimeoutMessages.Add(Play.PlayFile("silencemessage2.wav")) getNumberAction.OnDigitTimeoutMessages = digitTimeoutMessages Dim invalidDigitMessages = New List(Of Play) invalidDigitMessages.Add(Play.SayText("Please enter only numeric digits followed by a hash")) Dim secondMessage = Play.SayText("No really!") secondMessage.AddText("Please enter only numeric digits followed by a hash") invalidDigitMessages.Add(secondMessage) getNumberAction.OnInvalidDigitMessages = invalidDigitMessages actions.Add(getNumberAction)
Obtain the number entered from the action's next page request:
' Unpack the request Dim telephonyRequest = New TelephonyRequest(Request) Dim getNumberResult As GetNumberResult = telephonyRequest.InstanceInfo.ActionResult Dim enteredNumber = getNumberResult.EnteredNumber
-
-
Public Class GetNumber Inherits TelephonyAction ' Constructors [Obsolete] Public Sub New (prompt As Play) [Obsolete] Public Sub New (prompt As Play, nextPage As Webpagerequest) [Obsolete] Public Sub New (prompt As Play, nextPage As Webpagerequest, digitCount As Integer) [Obsolete] Public Sub New (prompt As Play, nextPage As Webpagerequest, endDigit As Char) Public Sub New (nextPage As Webpagerequest, Optional prompt As Play = Nothing, Optional digitCount As Integer? = Nothing, Optional endDigit As Char? = Nothing) ' Members Public Property Prompt As Play Public Property DigitCount As Integer Public Property EndDigit As Char Public Property ValidDigits As String Public Property HelpDigit As Char Public Property SecondsTimeout As Integer Public Property MillisecondsInitialTimeout As Integer Public Property MillisecondsInterDigitTimeout As Integer [Obsolete] Public Property SecondsDigitTimeout As Integer Public Property OnDigitTimeoutMessages As List(Of Play) Public Property OnInvalidDigitMessages As List(Of Play) Public Property NextPage As Webpagerequest End Class
Examples:
-
Get a variable length number using the defaults (ending with a '#'):
Dim actions = New List(Of TelephonyAction) Dim prompt = Play.SayText("Please enter your number followed by a hash.") Dim getInputAction = New GetInput(New WebPageRequest("UseNumberPage.aspx"), prompt) getInputAction.DigitInputEnabled = False actions.Add(getInputAction)
Obtain the number entered from the action's next page request:
' Unpack the request Dim telephonyRequest = New TelephonyRequest(Request) Dim getNumberResult As GetNumberResult = telephonyRequest.InstanceInfo.ActionResult Dim enteredNumber = getNumberResult.EnteredNumber
-
Get a 16 digit number using the defaults:
Dim actions = New List(Of TelephonyAction) Dim prompt = Play.SayText("Please enter your 16 digit number.") Dim getNumberAction = New GetNumber(New WebPageRequest("UseNumberPage.aspx"), prompt) getNumberAction.DigitCount = 16 getNumberAction.EndDigit = Chr(0) actions.Add(getNumberAction)
Obtain the number entered from the action's next page request:
' Unpack the request Dim telephonyRequest = New TelephonyRequest(Request) Dim getNumberResult As GetNumberResult = telephonyRequest.InstanceInfo.ActionResult Dim enteredNumber = getNumberResult.EnteredNumber
-
Get a 4 digit number containing digits 1-8:
Dim actions = New List(Of TelephonyAction) Dim prompt = Play.SayText("Please enter 4 digits between 1 and 8.") Dim getNumberAction = New GetNumber(New WebPageRequest("UseNumberPage.aspx"), prompt) getNumberAction.DigitCount = 4 getNumberAction.EndDigit = Chr(0) getNumberAction.ValidDigits = "12345678" actions.Add(getNumberAction)
Obtain the number entered from the action's next page request:
' Unpack the request Dim telephonyRequest = New TelephonyRequest(Request) Dim getNumberResult As GetNumberResult = telephonyRequest.InstanceInfo.ActionResult Dim enteredNumber = getNumberResult.EnteredNumber
-
Get a variable length number containing digits 0-9, ending with a '#':
Dim actions = New List(Of TelephonyAction) Dim prompt = Play.SayText("Please enter your id followed by a hash.") Dim getNumberAction = New GetNumber(New WebPageRequest("UseNumberPage.aspx"), prompt) getNumberAction.MillisecondsInterDigitTimeout = 10000
Set up the message to play if the caller does not enter a number or enters an invalid digit:
Dim digitTimeoutMessages = New List(Of Play) digitTimeoutMessages.Add(Play.PlayFile("silencemessage1.wav")) digitTimeoutMessages.Add(Play.PlayFile("silencemessage2.wav")) getNumberAction.OnDigitTimeoutMessages = digitTimeoutMessages Dim invalidDigitMessages = New List(Of Play) invalidDigitMessages.Add(Play.SayText("Please enter only numeric digits followed by a hash")) Dim secondMessage = Play.SayText("No really!") secondMessage.AddText("Please enter only numeric digits followed by a hash") invalidDigitMessages.Add(secondMessage) getNumberAction.OnInvalidDigitMessages = invalidDigitMessages actions.Add(getNumberAction)
Obtain the number entered from the action's next page request:
' Unpack the request Dim telephonyRequest = New TelephonyRequest(Request) Dim getNumberResult As GetNumberResult = telephonyRequest.InstanceInfo.ActionResult Dim enteredNumber = getNumberResult.EnteredNumber
-
-
-
class GetNumber extends TelephonyAction
Represents a get number action.
Class synopsis:
// Constructors: public GetNumber(WebPageRequest nextPage) public GetNumber(WebPageRequest nextPage, Play prompt) public GetNumber(WebPageRequest nextPage, Play prompt, int digitCount) public GetNumber(WebPageRequest nextPage, Play prompt, char endDigit) // Members: public void setPrompt(Play prompt) public void setDigitCount(int digitCount) public void setEndDigit(char endDigit) public void setHelpDigit(char helpDigit) public void setValidDigits(String validDigits) public void setMilliSecondsInterDigitTimeout(int timeout) public void setMilliSecondsInitialTimeout(int timeout) public void setOnDigitTimeoutMessages(List<Play> messageList) public void setOnInvalidDigitMessages(List<Play> messageList) public JSONObject toJSONObject()
class GetNumberResult extends ActionResult
Represents the result of a get number action.
Members:
// Members: public String getEnteredNumber()
Examples:
-
Get a variable length number using the defaults (ending with a '#'):
List<TelephonyAction> actions = new ArrayList<TelephonyAction>(); Play prompt = Play.sayText("Please enter your number followed by a hash."); actions.add(new GetNumber(new WebPageRequest("UseNumberPage"), prompt));
Obtain the number entered from the action's next page request:
public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException { TelephonyRequest ourRequest = new TelephonyRequest(request); GetNumberResult numberResult = (GetNumberResult)ourRequest.getInstanceInfo().getActionResult(); String enteredNumber = numberResult.getEnteredNumber(); // Your code here... }
-
Get a 16 digit number using the defaults:
List<TelephonyAction> actions = new ArrayList<TelephonyAction>(); Play prompt = Play.sayText("Please enter your 16 digit number."); actions.add(new GetNumber(new WebPageRequest("UseNumberPage"), prompt, 16));
Obtain the number entered from the action's next page request:
public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException { TelephonyRequest ourRequest = new TelephonyRequest(request); GetNumberResult numberResult = (GetNumberResult)ourRequest.getInstanceInfo().getActionResult(); String enteredNumber = numberResult.getEnteredNumber(); // Your code here... }
-
Get a 4 digit number containing digits 1-8:
List<TelephonyAction> actions = new ArrayList<TelephonyAction>(); Play prompt = Play.sayText("Please enter 4 digits between 1 and 8."); GetNumber getNumberAction = new GetNumber(new WebPageRequest("UseNumberPage"), prompt, 4); getNumberAction.setValidDigits("12345678"); actions.add(getNumberAction);
Obtain the number entered from the action's next page request:
public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException { TelephonyRequest ourRequest = new TelephonyRequest(request); GetNumberResult numberResult = (GetNumberResult)ourRequest.getInstanceInfo().getActionResult(); String enteredNumber = numberResult.getEnteredNumber(); // Your code here... }
-
Get a variable length number containing digits 0-9, ending with a '#':
List<TelephonyAction> actions = new ArrayList<TelephonyAction>(); Play prompt = Play.sayText("Please enter your id followed by a hash."); GetNumber getNumberAction = new GetNumber(new WebPageRequest("UseNumberPage"), prompt); getNumberAction.setValidDigits("0123456789"); getNumberAction.setMilliSecondsInterDigitTimeout(10000); // Set up the messages to play if the caller does not // enter a number or enters an invalid digit. List<Play> onDigitTimeoutMessages = new ArrayList<Play>(); onDigitTimeoutMessages.add(Play.sayText("Please enter a number.")); onDigitTimeoutMessages.add(Play.sayText("This is your final chance to enter a number.")); getNumberAction.setOnDigitTimeoutMessages(onDigitTimeoutMessages); List<Play> onInvalidDigitMessages = new ArrayList<Play>(); onInvalidDigitMessages.add(Play.playFile("invalidentry.wav")); getNumberAction.setOnInvalidDigitMessages(onInvalidDigitMessages); actions.add(getNumberAction);
Obtain the number entered from the action's next page request:
public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException { TelephonyRequest ourRequest = new TelephonyRequest(request); GetNumberResult numberResult = (GetNumberResult)ourRequest.getInstanceInfo().getActionResult(); String enteredNumber = numberResult.getEnteredNumber(); // Your code here... }
-
-
class GetNumber
Represents a get_number action.
Class synopsis:
# GetNumber object: GetNumber(next_page) # Instance methods: GetNumber.set_prompt(play_action) GetNumber.set_digit_count(digit_count) GetNumber.set_end_digit(end_digit) GetNumber.set_valid_digits(valid_digits) GetNumber.set_help_digit(help_digit) GetNumber.set_seconds_timeout(timeout) GetNumber.set_milliseconds_inter_digit_timeout(timeout) GetNumber.set_milliseconds_initial_timeout(timeout) GetNumber.set_on_digit_timeout_messages(list_of_play_actions) GetNumber.set_on_invalid_digit_messages(list_of_play_actions)
Get Number Result
The Get Number Result is represented by a dictionary. It is found within the
action result
for thenext page
.Obtaining the Get Number Result dictionary:
my_request = TelephonyRequest(request) action_result = my_request.get_action_result() if action_result.get("action") == "get_number": get_number_result = action_result.get("result")
Examples:
-
Get a variable length number using the defaults (ending with a '#'):
# Create a list of actions that will be passed to the TelephonyResponse constructor list_of_actions = [] get_number_action = GetNumber(WebPage(url='usenumberpage')) get_number_action.set_prompt(Play(text_to_say='Please enter your number followed by a hash.')) list_of_actions.append(get_number_action)
Obtain the number entered from the action's next page request:
my_request = TelephonyRequest(request) action_result = my_request.get_action_result() if action_result.get("action") == "get_number": get_number_result = action_result.get("result") entered_number = get_number_result.get("entered_number") # Your code here...
-
Get a 16 digit number using the defaults:
# Create a list of actions that will be passed to the TelephonyResponse constructor list_of_actions = [] get_number_action = GetNumber(WebPage(url='usenumberpage')) get_number_action.set_prompt(Play(text_to_say='Please enter your 16 digit number.')) get_number_action.set_end_digit('') get_number_action.set_digit_count(16) list_of_actions.append(get_number_action)
Obtain the number entered from the action's next page request:
my_request = TelephonyRequest(request) action_result = my_request.get_action_result() if action_result.get("action") == "get_number": get_number_result = action_result.get("result") entered_number = get_number_result.get("entered_number") # Your code here...
-
Get a 4 digit number containing digits 1-8:
# Create a list of actions that will be passed to the TelephonyResponse constructor list_of_actions = [] get_number_action = GetNumber(WebPage(url='usenumberpage')) get_number_action.set_prompt(Play(text_to_say='Please enter 4 digits between 1 and 8.')) get_number_action.set_digit_count(4) get_number_action.set_end_digit('') get_number_action.set_valid_digits('12345678') list_of_actions.append(get_number_action)
Obtain the number entered from the action's next page request:
my_request = TelephonyRequest(request) action_result = my_request.get_action_result() if action_result.get("action") == "get_number": get_number_result = action_result.get("result") entered_number = get_number_result.get("entered_number") # Your code here...
-
Get a variable length number containing digits 0-9, ending with a '#':
# Create a list of actions that will be passed to the TelephonyResponse constructor list_of_actions = [] list_of_play_actions_on_timeout = [] list_of_play_actions_on_timeout.append(Play(file_to_play='silencemessage1.wav')) list_of_play_actions_on_timeout.append(Play(file_to_play='silencemessage2.wav')) list_of_play_actions_on_invalid = [] list_of_play_actions_on_invalid.append(Play(text_to_say='Please enter only numeric digits followed by a hash')) play_action = Play(text_to_say='No really!') play_action.append_text(text_to_say='Please enter only numeric digits followed by a hash') list_of_play_actions_on_invalid.append(play_action) get_number_action = GetNumber(WebPage(url='usenumberpage')) get_number_action.set_prompt(Play(text_to_say='Please enter your id followed by a hash.')) get_number_action.set_digit_count(4) get_number_action.set_end_digit('#') get_number_action.set_help_digit('*') get_number_action.set_milliseconds_inter_digit_timeout(10000) get_number_action.set_on_digit_timeout_messages(list_of_play_actions_on_timeout) get_number_action.set_on_invalid_digit_messages(list_of_play_actions_on_invalid) list_of_actions.append(get_number_action)
Obtain the number entered from the action's next page request:
my_request = TelephonyRequest(request) action_result = my_request.get_action_result() if action_result.get("action") == "get_number": get_number_result = action_result.get("result") entered_number = get_number_result.get("entered_number") # Your code here...
-
-
The GetNumber class
Introduction
Represents a get number action.
Class synopsis
class GetNumber extends GetNumberBase { /* methods */ public __construct(string|WebPageRequest $next_page, array $opts = null) public self setValidDigits(string $digits) public self setDigitCount(int $count) public self setEndDigit(string $digit) public self setMillisecondsInterDigitTimeout(int $msecs) public self setMillisecondsInitialTimeout(int $msecs) public self setSecondsTimeout(int $secs) /* inherited methods */ public self setPrompt(Play $prompt) public self setHelpDigit(string $digit) public self setOnDigitTimeoutMessages(MessageList $messages) public self setOnInvalidDigitMessages(MessageList $messages) }
The GetNumberResult class
Introduction
Represents the result of a get number action.
Class synopsis
class GetNumberResult extends ActionResult { /* methods */ public string getEnteredNumber() /* inherited methods */ public string getAction() public boolean getInterrupted() }
Examples:
Get a variable length number using the defaults (ending with a '#'):
$prompt = Aculab\TelephonyRestAPI\Play::sayText("Please enter your number followed by a hash."); $getnum = new Aculab\TelephonyRestAPI\GetNumber('usenumberpage'); $getnum->setPrompt($prompt); $response->addAction($getnum);
Obtain the number entered from the action's next page request:
$info = InstanceInfo::getInstanceInfo(); $numberResult = $info->getActionResult(); $enteredNumber = $numberResult->getEnteredNumber();
Get a 16 digit number using the defaults:
$prompt = Aculab\TelephonyRestAPI\Play::sayText("Please enter your 16 digit number."); $getnum = new Aculab\TelephonyRestAPI\GetNumber('usenumberpage'); $getnum->setPrompt($prompt); $getnum->setDigitCount(16); $getnum->setEndDigit(''); $response->addAction($getnum);
Obtain the number entered from the action's next page request:
$info = InstanceInfo::getInstanceInfo(); $numberResult = $info->getActionResult(); $enteredNumber = $numberResult->getEnteredNumber();
Get a 4 digit number containing digits 1-8:
$prompt = Aculab\TelephonyRestAPI\Play::sayText("Please enter 4 digits between 1 and 8."); $getnum = new Aculab\TelephonyRestAPI\GetNumber('usenumberpage'); $getnum->setPrompt($prompt); $getnum->setDigitCount(4); $getnum->setEndDigit(''); $getnum->setValidDigits('12345678'); $response->addAction($getnum);
Obtain the number entered when action's next page is requested:
$info = InstanceInfo::getInstanceInfo(); $numberResult = $info->getActionResult(); $enteredNumber = $numberResult->getEnteredNumber();
Get a variable length number containing digits 0-9, ending with a '#':
$prompt = Aculab\TelephonyRestAPI\Play::sayText("Please enter your id followed by a hash."); $getnum = new Aculab\TelephonyRestAPI\GetNumber('usenumberpage'); $getnum->setPrompt($prompt) ->setMillisecondsInterDigitTimeout(10000); $timeout = new Aculab\TelephonyRestAPI\MessageList(); $timeout->addMessage(Aculab\TelephonyRestAPI\Play::playFile('silencemessage1.wav')); $timeout->addMessage(Aculab\TelephonyRestAPI\Play::playFile('silencemessage2.wav')); $getnum->setOnDigitTimeoutMessages($timeout); $invalid = new Aculab\TelephonyRestAPI\MessageList(); $invalid->addMessage(Aculab\TelephonyRestAPI\Play::sayText('Please enter only numeric digits followed by a hash')); $message = Aculab\TelephonyRestAPI\Play::sayText('No really!'); $message->addText('Please enter only numeric digits followed by a hash'); $invalid->addMessage($message); $getnum->setOnInvalidDigitMessages($invalid); $response->addAction($getnum);
Obtain the number entered from the action's next page request:
$info = InstanceInfo::getInstanceInfo(); $numberResult = $info->getActionResult(); $enteredNumber = $numberResult->getEnteredNumber();