The Voicent C# IVR module contains the following functions:
string CallIvr(string phoneno, string appname, bool selfdelete)
string reqId = CallIvr("123-4567", "reminderApp', 1)Make a call to phone number '123-4567' and use 'reminderApp' on the gateway for call interaction. You can use CallStatus to get the call status and responses, or use CallRemove to remove the call record.
string CallStatus(string reqId, Dictionary<string, string> responses)
string status = CallStatus("11234035434", responses)
----------------
File Voicent.cs:
----------------
using System;
using System.Net;
using System.IO;
namespace Voicent
{
...
public class Voicent
{
...
public string CallIvr(string
phoneno, string appname, bool selfdelete)
{
// call request url
string urlstr = "/ocall/callreqHandler.jsp";
// setting the http post string
string poststr = "info=Simple Text Call " +
phoneno;
poststr += "&phoneno=" + phoneno;
poststr += "&firstocc=10";
poststr += "&selfdelete=";
poststr += (selfdelete ? "1" : "0");
poststr += "&startapp=" + appname;
// Send Call Request
String rcstr = PostToGateway(urlstr, poststr);
return GetRequestID(rcstr);
}
public string CallStatus(string
reqID, Dictionary<string, string> responses)
{
// call status url
string urlstr = "/ocall/callstatusHandler.jsp";
string poststr = "reqid=" + reqID;
// Send Call Request
string rcstr = PostToGateway(urlstr, poststr);
string[] rcarr = rcstr.Split("^");
// call responses is the 9th field
string[] resparr = rcarr[8].Split("|");
for (int i = 0; i < resparr.length; i++) {
// each is a name value pair
string[] nvarr = resparr[i].Split("=");
$responses.Add(nvarr[0], nvarr[1]);
}
// call status is the 3rd field
return rcarr[2];
}
...
}
}