Exemplo n.º 1
0
        public DataSet StudioXml(Press3.UserDefinedClasses.HttpParameters httpParameters)
        {
            _ds = new DataSet();
            try
            {
                _cmd             = new SqlCommand();
                _con             = Connection;
                _cmd.CommandText = "InboundIvrCallProcesses";
                _cmd.CommandType = CommandType.StoredProcedure;
                _cmd.Connection  = _con;

                _cmd.Parameters.Add("@CallUUID", SqlDbType.VarChar, 100).Value         = httpParameters.CallUUid;
                _cmd.Parameters.Add("@ToNumber", SqlDbType.VarChar, 20).Value          = httpParameters.ToNumber;
                _cmd.Parameters.Add("@FromNumber", SqlDbType.VarChar, 20).Value        = httpParameters.FromNumber;
                _cmd.Parameters.Add("@CallEvent", SqlDbType.VarChar, 20).Value         = httpParameters.Event;
                _cmd.Parameters.Add("@CallStatus", SqlDbType.VarChar, 20).Value        = httpParameters.CallStatus;
                _cmd.Parameters.Add("@Digits", SqlDbType.VarChar, 20).Value            = httpParameters.Digits;
                _cmd.Parameters.Add("@StartTime", SqlDbType.BigInt).Value              = httpParameters.StartTime;
                _cmd.Parameters.Add("@RingTime", SqlDbType.BigInt).Value               = httpParameters.RingTIme;
                _cmd.Parameters.Add("@EndTime", SqlDbType.BigInt).Value                = httpParameters.EndTime;
                _cmd.Parameters.Add("@RecoedURL", SqlDbType.VarChar, 100).Value        = httpParameters.RecordUrl;
                _cmd.Parameters.Add("@DialBLegUUID", SqlDbType.VarChar, 100).Value     = httpParameters.DialBLegUUID;
                _cmd.Parameters.Add("@EndReason", SqlDbType.VarChar, 50).Value         = httpParameters.EndReason;
                _cmd.Parameters.Add("@SequenceNumber", SqlDbType.BigInt).Value         = httpParameters.SequenceNumber;
                _cmd.Parameters.Add("@HangupDisposition", SqlDbType.VarChar, 20).Value = httpParameters.HangupDisposition;
                _cmd.Parameters.Add("@AccountId", SqlDbType.BigInt).Direction          = ParameterDirection.Output;
                _cmd.Parameters.Add("@Success", SqlDbType.Bit).Direction               = ParameterDirection.Output;
                _cmd.Parameters.Add("@Message", SqlDbType.VarChar, 1000).Direction     = ParameterDirection.Output;
                _cmd.Parameters.Add("@ResponseXML", SqlDbType.Xml).Direction           = ParameterDirection.Output;
                _con.Open();
                _cmd.ExecuteNonQuery();
                _con.Close();
                _ds.Tables.Add(_helper.ConvertOutputParametersToDataTable(_cmd.Parameters));

                //if (Convert.ToBoolean(_cmd.Parameters["@Success"].Value) == true)
                //{
                //    responseXML = "<Response>" + _cmd.Parameters["@ResponseXML"].Value.ToString() + "</Response>";
                //}
                //else
                //{
                //    responseXML = "<Response><Hangup data=" + _cmd.Parameters["@Message"].Value.ToString() + "/></Response>";
                //}
            }
            catch (Exception ex)
            {
                Logger.Error("Error In DataAccessLayer Class-->GetStudioXml , Method --> StudioXml , Error -->" + ex.ToString());
                _ds = null;
                //responseXML = "<Response><Hangup data='Server error in DataAccessLayes -->"+ ex.ToString() + "'/></Response>";
            }
            finally
            {
                _cmd = null;
                if (_con.State == ConnectionState.Open)
                {
                    _con.Dispose();
                }
            }
            return(_ds);
        }
Exemplo n.º 2
0
        public DataSet StudioXml(Press3.UserDefinedClasses.HttpParameters httpParameters)
        {
            Logger.Debug("Getting  studioXml:[StudioCallProcess] Calluuid:" + httpParameters.CallUUid + ",FromNumber:" + httpParameters.FromNumber + ",Tonumber:" + httpParameters.ToNumber);
            _ds = new DataSet();
            _da = new SqlDataAdapter();
            try
            {
                _cmd             = new SqlCommand();
                _con             = Connection;
                _cmd.CommandText = "StudioCallProcess";
                _cmd.CommandType = CommandType.StoredProcedure;
                _cmd.Connection  = _con;

                _cmd.Parameters.Add("@CallUUID", SqlDbType.VarChar, 100).Value         = httpParameters.CallUUid;
                _cmd.Parameters.Add("@ToNumber", SqlDbType.VarChar, 20).Value          = httpParameters.ToNumber;
                _cmd.Parameters.Add("@FromNumber", SqlDbType.VarChar, 20).Value        = httpParameters.FromNumber;
                _cmd.Parameters.Add("@CallEvent", SqlDbType.VarChar, 20).Value         = httpParameters.Event;
                _cmd.Parameters.Add("@CallStatus", SqlDbType.VarChar, 20).Value        = httpParameters.CallStatus;
                _cmd.Parameters.Add("@Digits", SqlDbType.VarChar, 20).Value            = httpParameters.Digits;
                _cmd.Parameters.Add("@StartTime", SqlDbType.BigInt).Value              = httpParameters.StartTime;
                _cmd.Parameters.Add("@RingTime", SqlDbType.BigInt).Value               = httpParameters.RingTIme;
                _cmd.Parameters.Add("@EndTime", SqlDbType.BigInt).Value                = httpParameters.EndTime;
                _cmd.Parameters.Add("@RecoedURL", SqlDbType.VarChar, 100).Value        = httpParameters.RecordUrl;
                _cmd.Parameters.Add("@DialBLegUUID", SqlDbType.VarChar, 100).Value     = httpParameters.DialBLegUUID;
                _cmd.Parameters.Add("@EndReason", SqlDbType.VarChar, 50).Value         = httpParameters.EndReason;
                _cmd.Parameters.Add("@SequenceNumber", SqlDbType.BigInt).Value         = httpParameters.SequenceNumber;
                _cmd.Parameters.Add("@HangupDisposition", SqlDbType.VarChar, 20).Value = httpParameters.HangupDisposition;
                _cmd.Parameters.Add("@EventDateTime", SqlDbType.VarChar, 100).Value    = httpParameters.Eventtimestamp;
                _cmd.Parameters.Add("@AccountId", SqlDbType.BigInt).Direction          = ParameterDirection.Output;
                _cmd.Parameters.Add("@Success", SqlDbType.Bit).Direction               = ParameterDirection.Output;
                _cmd.Parameters.Add("@Message", SqlDbType.VarChar, 1000).Direction     = ParameterDirection.Output;
                _cmd.Parameters.Add("@ResponseXML", SqlDbType.Xml).Direction           = ParameterDirection.Output;
                _da.SelectCommand = _cmd;
                _da.Fill(_ds);
                if (_ds.Tables.Count > 0)
                {
                    _ds.Tables[0].TableName = "GatewayDetails";
                }
                _ds.Tables.Add(_helper.ConvertOutputParametersToDataTable(_cmd.Parameters));
            }
            catch (Exception ex)
            {
                Logger.Error("Error In DataAccessLayer Class-->GetStudioXml , Method --> StudioXml , Error -->" + ex.ToString());
                _ds = null;
                //responseXML = "<Response><Hangup data='Server error in DataAccessLayes -->"+ ex.ToString() + "'/></Response>";
            }
            finally
            {
                _cmd = null;
                if (_con.State == ConnectionState.Open)
                {
                    _con.Dispose();
                }
            }
            return(_ds);
        }
Exemplo n.º 3
0
        public string GetAgentQueueXml(Press3.UserDefinedClasses.HttpParameters httpParameters)
        {
            //event play
            string agentQueueXML = "";

            try
            {
                _cmd             = new SqlCommand();
                _con             = Connection;
                _cmd.CommandText = "ConnectToAgentQueue";
                _cmd.CommandType = CommandType.StoredProcedure;
                _cmd.Connection  = _con;

                _cmd.Parameters.Add("@CallUUID", SqlDbType.VarChar, 100).Value     = httpParameters.CallUUid;
                _cmd.Parameters.Add("@ToNumber", SqlDbType.VarChar, 20).Value      = httpParameters.ToNumber;
                _cmd.Parameters.Add("@FromNumber", SqlDbType.VarChar, 20).Value    = httpParameters.FromNumber;
                _cmd.Parameters.Add("@CallEvent", SqlDbType.VarChar, 20).Value     = httpParameters.Event;
                _cmd.Parameters.Add("@CallStatus", SqlDbType.VarChar, 20).Value    = httpParameters.CallStatus;
                _cmd.Parameters.Add("@SequenceNumber", SqlDbType.BigInt).Value     = httpParameters.SequenceNumber;
                _cmd.Parameters.Add("@Success", SqlDbType.Bit).Direction           = ParameterDirection.Output;
                _cmd.Parameters.Add("@Message", SqlDbType.VarChar, 1000).Direction = ParameterDirection.Output;
                _cmd.Parameters.Add("@ResponseXML", SqlDbType.Xml).Direction       = ParameterDirection.Output;
                _con.Open();
                _cmd.ExecuteNonQuery();
                _con.Close();

                if (Convert.ToBoolean(_cmd.Parameters["@Success"].Value) == true)
                {
                    agentQueueXML = "<Response>" + _cmd.Parameters["@ResponseXML"].Value.ToString() + "</Response>";
                }
                else
                {
                    agentQueueXML = "<Response><Hangup data=" + _cmd.Parameters["@Message"].Value.ToString() + "/></Response>";
                }
            }catch (Exception ex) {
                Logger.Error("Error In DataAccessLayer Class-->GetStudioXml , Method --> GetAgentQueueXml , Error -->" + ex.ToString());
                agentQueueXML = "<Response><Hangup data='Server error in DataAccessLayes -->" + ex.ToString() + "'/></Response>";
            }
            finally
            {
                _cmd = null;
                if (_con.State == ConnectionState.Open)
                {
                    _con.Dispose();
                }
            }

            return(agentQueueXML);
        }
Exemplo n.º 4
0
        public DataSet GetAgentQueueXml(Press3.UserDefinedClasses.HttpParameters httpParameters)
        {
            //event play
            Logger.Debug("Getting Agent QueueXml:[ConnectToAgentQueue_v1] Calluuid:" + httpParameters.CallUUid + ",FromNumber:" + httpParameters.FromNumber + ",Tonumber:" + httpParameters.ToNumber);
            _ds = new DataSet();
            _da = new SqlDataAdapter();
            try
            {
                _cmd             = new SqlCommand();
                _con             = Connection;
                _cmd.CommandText = "ConnectToAgentQueue_v1";
                _cmd.CommandType = CommandType.StoredProcedure;
                _cmd.Connection  = _con;

                _cmd.Parameters.Add("@CallUUID", SqlDbType.VarChar, 100).Value      = httpParameters.CallUUid;
                _cmd.Parameters.Add("@ToNumber", SqlDbType.VarChar, 20).Value       = httpParameters.ToNumber;
                _cmd.Parameters.Add("@FromNumber", SqlDbType.VarChar, 20).Value     = httpParameters.FromNumber;
                _cmd.Parameters.Add("@CallEvent", SqlDbType.VarChar, 20).Value      = httpParameters.Event;
                _cmd.Parameters.Add("@CallStatus", SqlDbType.VarChar, 20).Value     = httpParameters.CallStatus;
                _cmd.Parameters.Add("@SequenceNumber", SqlDbType.BigInt).Value      = httpParameters.SequenceNumber;
                _cmd.Parameters.Add("@EventDateTime", SqlDbType.VarChar, 100).Value = httpParameters.Eventtimestamp;
                _cmd.Parameters.Add("@Success", SqlDbType.Bit).Direction            = ParameterDirection.Output;
                _cmd.Parameters.Add("@Message", SqlDbType.VarChar, 1000).Direction  = ParameterDirection.Output;
                _cmd.Parameters.Add("@ResponseXML", SqlDbType.Xml).Direction        = ParameterDirection.Output;
                _da.SelectCommand = _cmd;
                _da.Fill(_ds);
                if (_ds.Tables.Count > 0)
                {
                    _ds.Tables[0].TableName = "GatewayDetails";
                }
                _ds.Tables.Add(_helper.ConvertOutputParametersToDataTable(_cmd.Parameters));
            }
            catch (Exception ex)
            {
                Logger.Error("Error In DataAccessLayer Class-->GetStudioXml , Method --> GetAgentQueueXml , Error -->" + ex.ToString());
                _ds = null;
            }
            finally
            {
                _cmd = null;
                if (_con.State == ConnectionState.Open)
                {
                    _con.Dispose();
                }
            }

            return(_ds);
        }
Exemplo n.º 5
0
        public string UpdateAgentAnswerState(Press3.UserDefinedClasses.HttpParameters httpParameters)
        {
            string agentAnswerStatusXml = String.Empty;

            try
            {
                _cmd             = new SqlCommand();
                _con             = Connection;
                _cmd.CommandText = "UpdateAgentAnswerStatus";
                _cmd.CommandType = CommandType.StoredProcedure;
                _cmd.Connection  = _con;

                _cmd.Parameters.Add("@CallUUID", SqlDbType.VarChar, 100).Value         = httpParameters.CallUUid;
                _cmd.Parameters.Add("@ToNumber", SqlDbType.VarChar, 20).Value          = httpParameters.ToNumber;
                _cmd.Parameters.Add("@FromNumber", SqlDbType.VarChar, 20).Value        = httpParameters.FromNumber;
                _cmd.Parameters.Add("@CallEvent", SqlDbType.VarChar, 20).Value         = httpParameters.Event;
                _cmd.Parameters.Add("@CallStatus", SqlDbType.VarChar, 20).Value        = httpParameters.CallStatus;
                _cmd.Parameters.Add("@Digits", SqlDbType.VarChar, 20).Value            = httpParameters.Digits;
                _cmd.Parameters.Add("@StartTime", SqlDbType.BigInt).Value              = httpParameters.StartTime;
                _cmd.Parameters.Add("@RingTime", SqlDbType.BigInt).Value               = httpParameters.RingTIme;
                _cmd.Parameters.Add("@EndTime", SqlDbType.BigInt).Value                = httpParameters.EndTime;
                _cmd.Parameters.Add("@RecoedURL", SqlDbType.VarChar, 100).Value        = httpParameters.RecordUrl;
                _cmd.Parameters.Add("@EndReason", SqlDbType.VarChar, 50).Value         = httpParameters.EndReason;
                _cmd.Parameters.Add("@HangupDisposition", SqlDbType.VarChar, 20).Value = httpParameters.HangupDisposition;
                _cmd.Parameters.Add("@Success", SqlDbType.Bit).Direction               = ParameterDirection.Output;
                _cmd.Parameters.Add("@Message", SqlDbType.VarChar, 1000).Direction     = ParameterDirection.Output;
                _cmd.Parameters.Add("@ResponseXML", SqlDbType.Xml).Direction           = ParameterDirection.Output;
                _con.Open();
                _cmd.ExecuteNonQuery();
                _con.Close();
            }catch (Exception ex) {
                Logger.Error("Error In DataAccessLayer Class-->GetStudioXml , Method --> StudioXml , Error -->" + ex.ToString());
                agentAnswerStatusXml = "<Response><Hangup data='Server error in DataAccessLayes -->" + ex.ToString() + "'/></Response>";
            }
            finally
            {
                _cmd = null;
                if (_con.State == ConnectionState.Open)
                {
                    _con.Dispose();
                }
            }

            return(agentAnswerStatusXml);
        }
Exemplo n.º 6
0
        public dynamic UpdateDial(Press3.UserDefinedClasses.HttpParameters parameters)
        {
            _cmd = new SqlCommand();
            _ds  = new DataSet();
            _da  = new SqlDataAdapter();
            try
            {
                _cmd.CommandText = "UpdateOutboundCalls";
                _cmd.CommandType = CommandType.StoredProcedure;
                _cmd.Connection  = Connection;
                _cmd.Parameters.Add("@SequenceNumber", SqlDbType.VarChar, 50).Value = parameters.SequenceNumber;
                _cmd.Parameters.Add("@EventTime", SqlDbType.BigInt).Value           = parameters.Eventtimestamp;
                //Convert.ToDateTime(parameters.EventTime);
                _cmd.Parameters.Add("@DialALegUUID", SqlDbType.VarChar, 64).Value   = parameters.DialALegUUID;
                _cmd.Parameters.Add("@DialBLegUUID", SqlDbType.VarChar, 64).Value   = parameters.DialBLegUUID;
                _cmd.Parameters.Add("@DialBLegStatus", SqlDbType.VarChar, 32).Value = parameters.DialBLegStatus;
                _cmd.Parameters.Add("@DialStartTime", SqlDbType.BigInt).Value       = parameters.StartTime;
                _cmd.Parameters.Add("@DialEndTime", SqlDbType.BigInt).Value         = parameters.EndTime;
                _cmd.Parameters.Add("@CallStatus", SqlDbType.VarChar, 32).Value     = parameters.CallStatus;
                _cmd.Parameters.Add("@Event", SqlDbType.VarChar, 16).Value          = parameters.Event;
                _cmd.Parameters.Add("@FromNumber", SqlDbType.VarChar, 32).Value     = parameters.FromNumber;
                _cmd.Parameters.Add("@ToNumber", SqlDbType.VarChar, 32).Value       = parameters.ToNumber;
                _cmd.Parameters.Add("@RecordUrl", SqlDbType.VarChar, 1024).Value    = parameters.RecordUrl;
                _cmd.Parameters.Add("@Caller", SqlDbType.VarChar, 32).Value         = parameters.Caller;
                _cmd.Parameters.Add("@Callee", SqlDbType.VarChar, 32).Value         = parameters.Callee;
                _cmd.Parameters.Add("@CallUUID", SqlDbType.VarChar, 64).Value       = parameters.CallUUid;
                _cmd.Parameters.Add("@RequestUUID", SqlDbType.VarChar, 100).Value   = parameters.RequestUuid;
                _cmd.Parameters.Add("@Direction", SqlDbType.Bit).Value = parameters.IsOutBound;

                _cmd.Parameters.Add("@Message", SqlDbType.VarChar, 200).Direction = ParameterDirection.Output;
                _cmd.Parameters.Add("@Success", SqlDbType.Bit).Direction          = ParameterDirection.Output;
                _da.SelectCommand = _cmd;
                _da.Fill(_ds);
                if (_ds.Tables.Count > 0)
                {
                    _ds.Tables[0].TableName = "temp";
                }
                _ds.Tables.Add(_helper.ConvertOutputParametersToDataTable(_cmd.Parameters));
            }
            catch (Exception e)
            {
                Logger.Error("Exception while UpdateOutboundCalls :" + e.ToString());
            }
            return(_ds);
        }
Exemplo n.º 7
0
 public DataSet GetCallerIdDetails(Press3.UserDefinedClasses.HttpParameters httpParameters)
 {
     _cmd             = new SqlCommand();
     _con             = Connection;
     _cmd.CommandText = "GetCallerIdDetails";
     _cmd.CommandType = CommandType.StoredProcedure;
     _cmd.Connection  = _con;
     _ds = new DataSet();
     _da = new SqlDataAdapter();
     try
     {
         _cmd.Parameters.Add("@CallUUID", SqlDbType.VarChar, 100).Value     = httpParameters.CallUUid;
         _cmd.Parameters.Add("@ToNumber", SqlDbType.VarChar, 20).Value      = httpParameters.ToNumber;
         _cmd.Parameters.Add("@FromNumber", SqlDbType.VarChar, 20).Value    = httpParameters.FromNumber;
         _cmd.Parameters.Add("@CallEvent", SqlDbType.VarChar, 20).Value     = httpParameters.Event;
         _cmd.Parameters.Add("@EventTime", SqlDbType.BigInt).Value          = Convert.ToInt64(httpParameters.EventTime);
         _cmd.Parameters.Add("@CallStatus", SqlDbType.VarChar, 20).Value    = httpParameters.CallStatus;
         _cmd.Parameters.Add("@Success", SqlDbType.Bit).Direction           = ParameterDirection.Output;
         _cmd.Parameters.Add("@Message", SqlDbType.VarChar, 1000).Direction = ParameterDirection.Output;
         _cmd.Parameters.Add("@SequenceNumber", SqlDbType.BigInt).Direction = ParameterDirection.Output;
         _con.Open();
         _cmd.ExecuteNonQuery();
         _con.Close();
         _ds.Tables.Add(_helper.ConvertOutputParametersToDataTable(_cmd.Parameters));
     }
     catch (Exception ex)
     {
         _ds = null;
         _ds = null;
         Logger.Error("Error In DataAccessLayer Class-->GetStudioXml , Method --> GetCallerIdDetails , Error -->" + ex.ToString());
     }
     finally
     {
         _cmd = null;
         if (_con.State == ConnectionState.Open)
         {
             _con.Dispose();
         }
     }
     return(_ds);
 }
Exemplo n.º 8
0
 public dynamic UpdateOutboundCalls(Press3.UserDefinedClasses.HttpParameters restparameters)
 {
     _cmd = new SqlCommand();
     _ds  = new DataSet();
     _da  = new SqlDataAdapter();
     try
     {
         _cmd.CommandText = "UpdateOutboundCalls";
         _cmd.CommandType = CommandType.StoredProcedure;
         _cmd.Connection  = Connection;
         //_cmd.Parameters.Add("@AgentId", SqlDbType.Int).Value = agentId;
         _cmd.Parameters.Add("@FromNumber", SqlDbType.VarChar, 32).Value        = restparameters.FromNumber;
         _cmd.Parameters.Add("@ToNumber", SqlDbType.VarChar, 32).Value          = restparameters.ToNumber;
         _cmd.Parameters.Add("@CallUUID", SqlDbType.VarChar, 64).Value          = restparameters.CallUUid;
         _cmd.Parameters.Add("@EndTime", SqlDbType.BigInt).Value                = restparameters.EndTime;
         _cmd.Parameters.Add("@EndReason", SqlDbType.VarChar, 30).Value         = restparameters.EndReason;
         _cmd.Parameters.Add("@HangupDisPosition", SqlDbType.VarChar, 30).Value = restparameters.HangupDisposition;
         _cmd.Parameters.Add("@AnswerTime", SqlDbType.BigInt).Value             = restparameters.StartTime;
         _cmd.Parameters.Add("@SequenceNumber", SqlDbType.VarChar, 30).Value    = restparameters.SequenceNumber;
         _cmd.Parameters.Add("@CallStatus", SqlDbType.VarChar, 30).Value        = restparameters.CallStatus;
         _cmd.Parameters.Add("@RingTime", SqlDbType.BigInt).Value               = restparameters.RingTIme;
         _cmd.Parameters.Add("@BillMillSec", SqlDbType.VarChar, 30).Value       = restparameters.BillMillSec;
         _cmd.Parameters.Add("@Event", SqlDbType.VarChar, 30).Value             = restparameters.Event;
         _cmd.Parameters.Add("@EventTime", SqlDbType.VarChar, 30).Value         = restparameters.Eventtimestamp;
         _cmd.Parameters.Add("@Message", SqlDbType.VarChar, 200).Direction      = ParameterDirection.Output;
         _cmd.Parameters.Add("@Success", SqlDbType.Bit).Direction               = ParameterDirection.Output;
         _da.SelectCommand = _cmd;
         _da.Fill(_ds);
         if (_ds.Tables.Count > 0)
         {
             _ds.Tables[0].TableName = "temp";
         }
         _ds.Tables.Add(_helper.ConvertOutputParametersToDataTable(_cmd.Parameters));
     }
     catch (Exception e)
     {
         Logger.Error("Exception while UpdateOutboundCalls :" + e.ToString());
     }
     return(_ds);
 }
Exemplo n.º 9
0
        public DataSet GetCbrQueueXml(Press3.UserDefinedClasses.HttpParameters httpParameters)
        {
            //event play
            Logger.Debug("Getting Call Back Request Xml:[CbrQueue] Calluuid:" + httpParameters.CallUUid + ",FromNumber:" + httpParameters.FromNumber + ",Tonumber:" + httpParameters.ToNumber + ",CBR AgentId:" + httpParameters.CallBackRequestAgentId);
            _ds = new DataSet();
            _da = new SqlDataAdapter();
            try
            {
                _cmd             = new SqlCommand();
                _con             = Connection;
                _cmd.CommandText = "CbrQueue";
                _cmd.CommandType = CommandType.StoredProcedure;
                _cmd.Connection  = _con;

                _cmd.Parameters.Add("@CallUUID", SqlDbType.VarChar, 100).Value            = httpParameters.CallUUid;
                _cmd.Parameters.Add("@ToNumber", SqlDbType.VarChar, 20).Value             = httpParameters.ToNumber;
                _cmd.Parameters.Add("@FromNumber", SqlDbType.VarChar, 20).Value           = httpParameters.FromNumber;
                _cmd.Parameters.Add("@CallEvent", SqlDbType.VarChar, 20).Value            = httpParameters.Event;
                _cmd.Parameters.Add("@CallStatus", SqlDbType.VarChar, 20).Value           = httpParameters.CallStatus;
                _cmd.Parameters.Add("@SequenceNumber", SqlDbType.BigInt).Value            = httpParameters.SequenceNumber;
                _cmd.Parameters.Add("@StartTime", SqlDbType.BigInt).Value                 = httpParameters.StartTime;
                _cmd.Parameters.Add("@EndTime", SqlDbType.BigInt).Value                   = httpParameters.EndTime;
                _cmd.Parameters.Add("@RingTime", SqlDbType.BigInt).Value                  = httpParameters.RingTIme;
                _cmd.Parameters.Add("@EndReason", SqlDbType.VarChar, 100).Value           = httpParameters.EndReason;
                _cmd.Parameters.Add("@EventDateTime", SqlDbType.VarChar, 100).Value       = httpParameters.Eventtimestamp;
                _cmd.Parameters.Add("@IsCallBackRequetCall", SqlDbType.Bit).Value         = httpParameters.IsCallBackRequetCall;
                _cmd.Parameters.Add("@CallBackRequestAgentId", SqlDbType.BigInt).Value    = httpParameters.CallBackRequestAgentId;
                _cmd.Parameters.Add("@HangupDisposition", SqlDbType.VarChar, 10).Value    = httpParameters.HangupDisposition;
                _cmd.Parameters.Add("@CallBackRequestClip", SqlDbType.VarChar, 500).Value = httpParameters.CallBackRequestClip;
                _cmd.Parameters.Add("@ResponseXML", SqlDbType.Xml).Direction              = ParameterDirection.Output;
                _cmd.Parameters.Add("@AgentId", SqlDbType.BigInt).Direction               = ParameterDirection.Output;
                _cmd.Parameters.Add("@Message", SqlDbType.VarChar, 1000).Direction        = ParameterDirection.Output;
                _cmd.Parameters.Add("@Success", SqlDbType.Bit).Direction                  = ParameterDirection.Output;

                /*
                 * @CallUUID VARCHAR(100),
                 *  @ToNumber VARCHAR(20),
                 *  @FromNumber VARCHAR(20),
                 *  @CallEvent VARCHAR(20),
                 *  @CallStatus VARCHAR(20),
                 *  @SequenceNumber BIGINT,
                 *  @Success bit out,
                 *  @StartTime BIGINT,
                 *  @EndTime BIGINT,
                 *  @RingTime BIGINT,
                 *  @EndReason VARCHAR(100),
                 *  @Message VARCHAR(1000) OUT,
                 *  @IsCallBackRequetCall BIT =0,
                 *  @CallBackRequestAgentId INT=0,
                 *  @HangupDisposition VARCHAR(10),
                 *  @CallBackRequestClip VARCHAR(100),
                 *  @ResponseXML xml out,
                 *  @AgentId Numeric =0 Out
                 */
                _da.SelectCommand = _cmd;
                _da.Fill(_ds);
                if (_ds.Tables.Count > 0)
                {
                    _ds.Tables[0].TableName = "GatewayDetails";
                }
                _ds.Tables.Add(_helper.ConvertOutputParametersToDataTable(_cmd.Parameters));
            }
            catch (Exception ex)
            {
                Logger.Error("Error In DataAccessLayer Class-->GetStudioXml , Method --> GetAgentQueueXml , Error -->" + ex.ToString());
                _ds = null;
            }
            finally
            {
                _cmd = null;
                if (_con.State == ConnectionState.Open)
                {
                    _con.Dispose();
                }
            }

            return(_ds);
        }