As described before, the PlaceCall.Netiden API is used to place the phone call requested by your user. In this API, the <Status> field indicates whether a call is processed or not.
You should assume that a call is being processed ONLY if the <Status> field returns 1 in the PlaceCall.Netiden API.
You should assume other values different than 1 as an error.
Error codes for this field are:
<CallStatus> |
<CallStatusDescription> |
1 |
Call in process |
59 |
*** Cell Phone Numbers are not allowed (Check the AllowCell input variable)*** |
70 |
*** Missing parameter (Country) *** |
71 |
*** Missing parameter (Phone) *** |
72 |
*** Missing parameter (CallType) *** |
73 |
** Missing parameter (AID) *** |
74 |
*** Missing parameter (UID) *** |
75 |
*** Missing parameter (Language) *** |
76 |
*** PIN length is not = 4 or is not numeric *** |
77 |
*** Phone number is not valid *** |
78 |
*** CallType variable is incorrect (must be 1, 2, 3 or 4 only)*** |
79 |
*** Language is incorrect *** |
80 |
Could not validate your account. Check the (AID) and/or (UID) input parameters |
90 |
Not enough funds to place this call |
94 |
Invalid phone number |
99 |
Failed to connect |
The <Status> field in the RequestStatus.Netiden API:
This field works in the same way that the PlaceCall.Netiden API, but it returns a different set of values:
<CallStatus> |
<CallStatusDescription> |
1 |
Call in process |
10 |
Call successful |
73 |
** Missing parameter (AID) *** |
74 |
*** Missing parameter (UID) *** |
80 |
Could not validate your account. Check the (AID) and/or (UID) input parameters |
81 |
*** Call ID is not valid *** |
82 |
*** CallKey is not valid *** |
83 |
*** CallID and CallKey combination is not valid *** |
90 |
Not enough funds to place this call |
93 |
User hanged up |
94 |
Invalid phone number |
95 |
Call answered. User did not perform any action |
96 |
Pound key confirmation failed |
97 |
User answered the phone. User side timeout |
98 |
Call not answered |
99 |
Failed to connect |
The only value that should be considered as a successful call is 10, which does not imply that the user has been validated, but that the phone call took place normally.
Combining the <Status> field with other fields returned by the RequestStatus.Netiden API
Using CallType=1
If you are using CallType=1 (PIN entered through the website), then you should consider <Status>=10 as a positive call.
This is because we keep the <Status> field equal to 1 until the 4 digits have been played to your user.
Using CallType=2
If you are using CallType=2 (PIN entered through the phone keypad), then you should consider <Status>=10 as a positive call. However, this does not mean that the user has been validated.
When <Status> = 10 for CallType=2, there are three other fields you will need to work with:
<PINmatch>
This field will return only two possible values: True or False.
If this field indicates True for a <CallType>=2 and a <Status>=10, it means that your user has entered the correct PIN number through the telephone keypad.
You should consider this as a successful validation.
If the <PINmatch> field returns False, then the user entered a number different than the one provided in your website.
Another way to validate a user is by retrieving the values of the <PIN> and <PINentered> fields, where PIN is the PIN number you passed to the PlaceCall.Netiden API, and <PINentered> is the PIN number entered by the user through the telephone keypad.
The field <PINentered> is only for information purposes. If the CallType field is different than 2, it will return Null.
Using CallType=3 or CallType=4
When using CallType=3 (Password change confirmation) or CallType=4 (Account access confirmation), the user is requested to press the pound key (#) in order to confirm the action they are performing in your website (3 to change their password, and 4 to access their account).
As it is the case in the other <CallType> values, when <Status> equals 10 you have a positive call. But again, this does not mean that the user confirmed his/her action by pressing the pound key.
To consider a <CallType>=3 or <CallType>=4 a positive validation, you should work with the <PoundPressed> field.
This field can return only two possible values: True or False. If <CallType> is different than 3 or 4, then this field will return Null.
When <CallType> = 3 or <CallType> = 4, and <PoundPressed> = True, this is a positive validation. Otherwise the validation did not take place or, in other words, the user never pressed the pound key to confirm he/she is performing an action in your website.
|