/// <summary> /// Update Response Share /// </summary> /// <param name="CustomerID"></param> /// <param name="ResponseName"></param> /// <returns></returns> public int UpdateResponseShare(string CustomerID, string ResponseName) { int result = 0; CampaignStatusResponse obj = new CampaignStatusResponse(); try { if (conn == null) { conn.Open(); } MySqlCommand cmd = new MySqlCommand("SP_HSUpdateResponseShare", conn) { CommandType = CommandType.StoredProcedure }; cmd.Parameters.AddWithValue("@_CustomerID", CustomerID); cmd.Parameters.AddWithValue("@_ResponseName", ResponseName); result = Convert.ToInt32(cmd.ExecuteNonQuery()); } catch (Exception) { throw; } finally { if (conn != null) { conn.Close(); } } return(result); }
public ResponseModel GetCampaignStatusResponse() { CampaignStatusResponse obj = new CampaignStatusResponse(); StoreTaskCaller taskcaller = new StoreTaskCaller(); ResponseModel objResponseModel = new ResponseModel(); int statusCode = 0; string statusMessage = ""; try { string token = Convert.ToString(Request.Headers["X-Authorized-Token"]); Authenticate authenticate = new Authenticate(); authenticate = SecurityService.GetAuthenticateDataFromToken(_radisCacheServerAddress, SecurityService.DecryptStringAES(token)); obj = taskcaller.GetCampaignStatusResponse(new StoreTaskService(_connectionSting), authenticate.TenantId, authenticate.UserMasterID); statusCode = obj.CampaignResponseList.Count == 0 ? (int)EnumMaster.StatusCode.RecordNotFound : (int)EnumMaster.StatusCode.Success; statusMessage = CommonFunction.GetEnumDescription((EnumMaster.StatusCode)statusCode); objResponseModel.Status = true; objResponseModel.StatusCode = statusCode; objResponseModel.Message = statusMessage; objResponseModel.ResponseData = obj; } catch (Exception) { throw; } return(objResponseModel); }
/// <summary> /// Campaign Share Massanger /// </summary> /// <param name="objRequest"></param> /// <param name="TenantID"></param> /// <param name="UserID"></param> /// <returns></returns> public string CampaignShareMassanger(ShareChatbotModel objRequest, int TenantID, int UserID) { DataSet ds = new DataSet(); string Message = ""; CampaignStatusResponse obj = new CampaignStatusResponse(); try { conn.Open(); MySqlCommand cmd = new MySqlCommand("SP_HSCampaignShareMassanger", conn) { CommandType = CommandType.StoredProcedure }; cmd.Parameters.AddWithValue("@_TenantID", TenantID); cmd.Parameters.AddWithValue("@_StoreID", objRequest.StoreID); cmd.Parameters.AddWithValue("@_ProgramCode", objRequest.ProgramCode); cmd.Parameters.AddWithValue("@_CustomerID", objRequest.CustomerID); cmd.Parameters.AddWithValue("@_CustomerMobileNumber", objRequest.CustomerMobileNumber); cmd.Parameters.AddWithValue("@_StoreManagerId", objRequest.StoreManagerId); cmd.Parameters.AddWithValue("@_CampaignScriptID", objRequest.CampaignScriptID); cmd.Parameters.AddWithValue("@_CreatedBy", UserID); //result = Convert.ToInt32(cmd.ExecuteNonQuery()); MySqlDataAdapter da = new MySqlDataAdapter { SelectCommand = cmd }; da.Fill(ds); if (ds != null && ds.Tables[0] != null) { Message = ds.Tables[0].Rows[0]["Message"] == DBNull.Value ? String.Empty : Convert.ToString(ds.Tables[0].Rows[0]["Message"]); } } catch (Exception) { throw; } finally { if (conn != null) { conn.Close(); } } return(Message); }
/// <summary> /// Update Campaign Status Response /// </summary> /// <param name="objRequest"></param> /// <param name="TenantID"></param> /// <param name="UserID"></param> /// <returns></returns> public int UpdateCampaignStatusResponse(CampaignResponseInput objRequest, int TenantID, int UserID) { int result = 0; CampaignStatusResponse obj = new CampaignStatusResponse(); try { conn.Open(); MySqlCommand cmd = new MySqlCommand("SP_HSUpdateCampaignCustomer", conn) { CommandType = CommandType.StoredProcedure }; cmd.Parameters.AddWithValue("@_CampaignCustomerID", objRequest.CampaignCustomerID); cmd.Parameters.AddWithValue("@_ResponseID", objRequest.ResponseID); if (!string.IsNullOrEmpty(objRequest.CallReScheduledTo)) { objRequest.CallReScheduledToDate = Convert.ToDateTime(objRequest.CallReScheduledTo); } cmd.Parameters.AddWithValue("@_CallReScheduledTo", objRequest.CallReScheduledToDate); cmd.Parameters.AddWithValue("@_TenantID", TenantID); cmd.Parameters.AddWithValue("@_UserID", UserID); result = Convert.ToInt32(cmd.ExecuteNonQuery()); } catch (Exception) { throw; } finally { if (conn != null) { conn.Close(); } } return(result); }
/// <summary> /// InsertBroadCastDetails /// </summary> /// <param name="tenantID"></param> /// <param name="userID"></param> /// <param name="programcode"></param> /// <param name="storeCode"></param> /// <param name="campaignCode"></param> /// <param name="channelType"></param> /// <returns></returns> public int InsertBroadCastDetails(int tenantID, int userID, string programcode, string storeCode, string campaignCode, string channelType, string ClientAPIURL) { int result = 0; CampaignStatusResponse obj = new CampaignStatusResponse(); try { string strpostionNumber = ""; string strpostionName = ""; GetWhatsappMessageDetailsResponse getWhatsappMessageDetailsResponse = new GetWhatsappMessageDetailsResponse(); try { if (channelType.Equals("Whatsapp")) { GetWhatsappMessageDetailsModal getWhatsappMessageDetailsModal = new GetWhatsappMessageDetailsModal() { ProgramCode = programcode }; string apiBotReq = JsonConvert.SerializeObject(getWhatsappMessageDetailsModal); string apiBotResponse = CommonService.SendApiRequest(ClientAPIURL + "api/ChatbotBell/GetWhatsappMessageDetails", apiBotReq); if (!string.IsNullOrEmpty(apiBotResponse.Replace("[]", "").Replace("[", "").Replace("]", ""))) { getWhatsappMessageDetailsResponse = JsonConvert.DeserializeObject <GetWhatsappMessageDetailsResponse>(apiBotResponse.Replace("[", "").Replace("]", "")); } if (getWhatsappMessageDetailsResponse != null) { if (getWhatsappMessageDetailsResponse.Remarks != null) { string ObjRemark = getWhatsappMessageDetailsResponse.Remarks.Replace("\r\n", ""); string[] ObjSplitComma = ObjRemark.Split(','); if (ObjSplitComma.Length > 0) { for (int i = 0; i < ObjSplitComma.Length; i++) { strpostionNumber += ObjSplitComma[i].Split('-')[0].Trim().Replace("{", "").Replace("}", "") + ","; strpostionName += ObjSplitComma[i].Split('-')[1].Trim() + ","; } } strpostionNumber = strpostionNumber.TrimEnd(','); strpostionName = strpostionName.TrimEnd(','); } } } } catch (Exception) { getWhatsappMessageDetailsResponse = new GetWhatsappMessageDetailsResponse(); } conn.Open(); MySqlCommand cmd = new MySqlCommand("SP_HSInsertBroadCastDetails", conn) { CommandType = CommandType.StoredProcedure }; cmd.Parameters.AddWithValue("@_Programcode", programcode); cmd.Parameters.AddWithValue("@_StoreCode", storeCode); cmd.Parameters.AddWithValue("@_CampaignCode", campaignCode); cmd.Parameters.AddWithValue("@_ChannelType", channelType); cmd.Parameters.AddWithValue("@_strpostionNumber", strpostionNumber); cmd.Parameters.AddWithValue("@_strpostionName", strpostionName); cmd.Parameters.AddWithValue("@_TemplateName", getWhatsappMessageDetailsResponse.TemplateName); cmd.Parameters.AddWithValue("@_TenantID", tenantID); cmd.Parameters.AddWithValue("@_UserID", userID); result = Convert.ToInt32(cmd.ExecuteNonQuery()); } catch (Exception) { throw; } finally { if (conn != null) { conn.Close(); } } return(result); }
/// <summary> /// Campaign Share SMS /// </summary> /// <param name="objRequest"></param> /// <param name="ClientAPIURL"></param> /// <param name="TenantID"></param> /// <param name="UserID"></param> /// <returns></returns> public int CampaignShareSMS(ShareChatbotModel objRequest, string ClientAPIURL, string SMSsenderId, int TenantID, int UserID) { DataSet ds = new DataSet(); int result = 0; string Message = ""; CampaignStatusResponse obj = new CampaignStatusResponse(); try { conn.Open(); MySqlCommand cmd = new MySqlCommand("SP_HSCampaignShareSMS", conn) { CommandType = CommandType.StoredProcedure }; cmd.Parameters.AddWithValue("@_TenantID", TenantID); cmd.Parameters.AddWithValue("@_StoreID", objRequest.StoreID); cmd.Parameters.AddWithValue("@_ProgramCode", objRequest.ProgramCode); cmd.Parameters.AddWithValue("@_CustomerID", objRequest.CustomerID); cmd.Parameters.AddWithValue("@_CustomerMobileNumber", objRequest.CustomerMobileNumber); cmd.Parameters.AddWithValue("@_StoreManagerId", objRequest.StoreManagerId); cmd.Parameters.AddWithValue("@_CampaignScriptID", objRequest.CampaignScriptID); cmd.Parameters.AddWithValue("@_CreatedBy", UserID); MySqlDataAdapter da = new MySqlDataAdapter { SelectCommand = cmd }; da.Fill(ds); if (ds != null && ds.Tables[0] != null) { Message = ds.Tables[0].Rows[0]["Message"] == DBNull.Value ? String.Empty : Convert.ToString(ds.Tables[0].Rows[0]["Message"]); SMSsenderId = ds.Tables[0].Rows[0]["SmsSenderID"] == DBNull.Value ? String.Empty : Convert.ToString(ds.Tables[0].Rows[0]["SmsSenderID"]); } if (!String.IsNullOrEmpty(Message)) { ChatSendSMS chatSendSMS = new ChatSendSMS { MobileNumber = objRequest.CustomerMobileNumber.TrimStart('0').Length > 10 ? objRequest.CustomerMobileNumber : "91" + objRequest.CustomerMobileNumber.TrimStart('0'), SenderId = SMSsenderId, SmsText = Message }; string apiReq = JsonConvert.SerializeObject(chatSendSMS); apiResponse = CommonService.SendApiRequest(ClientAPIURL + "api/ChatbotBell/SendSMS", apiReq); ChatSendSMSResponse chatSendSMSResponse = new ChatSendSMSResponse(); chatSendSMSResponse = JsonConvert.DeserializeObject <ChatSendSMSResponse>(apiResponse); if (chatSendSMSResponse != null) { result = chatSendSMSResponse.Id; } if (result > 0) { UpdateResponseShare(objRequest.CustomerID, "Contacted Via SMS"); } } } catch (Exception) { throw; } finally { if (conn != null) { conn.Close(); } } return(result); }
/// <summary> /// Campaign Share Chat bot /// </summary> /// <param name="objRequest"></param> /// <param name="ClientAPIURL"></param> /// <param name="TenantID"></param> /// <param name="UserID"></param> /// <returns></returns> public int CampaignShareChatbot(ShareChatbotModel objRequest, string ClientAPIURL, int TenantID, int UserID, string ProgramCode) { DataSet ds = new DataSet(); int result = 0; int resultApi = 0; string Message = ""; CampaignStatusResponse obj = new CampaignStatusResponse(); try { GetWhatsappMessageDetailsResponse getWhatsappMessageDetailsResponse = new GetWhatsappMessageDetailsResponse(); string strpostionNumber = ""; string strpostionName = ""; string additionalInfo = ""; try { GetWhatsappMessageDetailsModal getWhatsappMessageDetailsModal = new GetWhatsappMessageDetailsModal() { ProgramCode = ProgramCode }; string apiBotReq = JsonConvert.SerializeObject(getWhatsappMessageDetailsModal); string apiBotResponse = CommonService.SendApiRequest(ClientAPIURL + "api/ChatbotBell/GetWhatsappMessageDetails", apiBotReq); if (!string.IsNullOrEmpty(apiBotResponse.Replace("[]", "").Replace("[", "").Replace("]", ""))) { getWhatsappMessageDetailsResponse = JsonConvert.DeserializeObject <GetWhatsappMessageDetailsResponse>(apiBotResponse.Replace("[", "").Replace("]", "")); } if (getWhatsappMessageDetailsResponse != null) { if (getWhatsappMessageDetailsResponse.Remarks != null) { string ObjRemark = getWhatsappMessageDetailsResponse.Remarks.Replace("\r\n", ""); string[] ObjSplitComma = ObjRemark.Split(','); if (ObjSplitComma.Length > 0) { for (int i = 0; i < ObjSplitComma.Length; i++) { strpostionNumber += ObjSplitComma[i].Split('-')[0].Trim().Replace("{", "").Replace("}", "") + ","; strpostionName += ObjSplitComma[i].Split('-')[1].Trim() + ","; } } strpostionNumber = strpostionNumber.TrimEnd(','); strpostionName = strpostionName.TrimEnd(','); } } } catch (Exception) { getWhatsappMessageDetailsResponse = new GetWhatsappMessageDetailsResponse(); } conn.Open(); MySqlCommand cmd = new MySqlCommand("SP_HSCampaignShareChatbot", conn) { CommandType = CommandType.StoredProcedure }; cmd.Parameters.AddWithValue("@_TenantID", TenantID); cmd.Parameters.AddWithValue("@_StoreID", objRequest.StoreID); cmd.Parameters.AddWithValue("@_ProgramCode", objRequest.ProgramCode); cmd.Parameters.AddWithValue("@_CustomerID", objRequest.CustomerID); cmd.Parameters.AddWithValue("@_CustomerMobileNumber", objRequest.CustomerMobileNumber); cmd.Parameters.AddWithValue("@_StoreManagerId", objRequest.StoreManagerId); cmd.Parameters.AddWithValue("@_CampaignScriptID", objRequest.CampaignScriptID); cmd.Parameters.AddWithValue("@_CreatedBy", UserID); cmd.Parameters.AddWithValue("@_strpostionNumber", strpostionNumber); cmd.Parameters.AddWithValue("@_strpostionName", strpostionName); //result = Convert.ToInt32(cmd.ExecuteNonQuery()); MySqlDataAdapter da = new MySqlDataAdapter { SelectCommand = cmd }; da.Fill(ds); if (ds != null && ds.Tables[0] != null) { result = ds.Tables[0].Rows[0]["ChatID"] == DBNull.Value ? 0 : Convert.ToInt32(ds.Tables[0].Rows[0]["ChatID"]); Message = ds.Tables[0].Rows[0]["Message"] == DBNull.Value ? String.Empty : Convert.ToString(ds.Tables[0].Rows[0]["Message"]); additionalInfo = ds.Tables[0].Rows[0]["additionalInfo"] == DBNull.Value ? String.Empty : Convert.ToString(ds.Tables[0].Rows[0]["additionalInfo"]); } if (!String.IsNullOrEmpty(Message)) { try { List <string> additionalList = new List <string>(); if (additionalInfo != null) { additionalList = additionalInfo.Split(",").ToList(); } SendFreeTextRequest sendFreeTextRequest = new SendFreeTextRequest { To = objRequest.CustomerMobileNumber.TrimStart('0').Length > 10 ? objRequest.CustomerMobileNumber : "91" + objRequest.CustomerMobileNumber.TrimStart('0'), ProgramCode = ProgramCode, TemplateName = getWhatsappMessageDetailsResponse.TemplateName, AdditionalInfo = additionalList }; string apiReq = JsonConvert.SerializeObject(sendFreeTextRequest); apiResponse = CommonService.SendApiRequest(ClientAPIURL + "api/ChatbotBell/SendCampaign", apiReq); //ChatSendSMSResponse chatSendSMSResponse = new ChatSendSMSResponse(); //chatSendSMSResponse = JsonConvert.DeserializeObject<ChatSendSMSResponse>(apiResponse); //if (chatSendSMSResponse != null) //{ // resultApi = chatSendSMSResponse.Id; //} if (apiResponse.Equals("true")) { UpdateResponseShare(objRequest.CustomerID, "Contacted Via Chatbot"); } } catch (Exception) { } } } catch (Exception) { throw; } finally { if (conn != null) { conn.Close(); } } return(result); }