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];
    }
                
    ...
  }
                }