/// <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> /// SmsWhatsUpDataSend /// </summary> /// <param name="tenantId"></param> /// <param name="userId"></param> /// <param name="ProgramCode"></param> /// <param name="orderId"></param> /// <param name="ClientAPIURL"></param> /// <param name="sMSWhtappTemplate"></param> /// <param name="ConString"></param> /// <returns></returns> public static int SmsWhatsUpDataSend(int tenantId, int userId, string ProgramCode, int orderId, string ClientAPIURL, string sMSWhtappTemplate, string ConString, string token) { int result = 0; string Message = ""; DataSet ds = new DataSet(); OrdersSmsWhatsUpDataDetails ordersSmsWhatsUpDataDetails = new OrdersSmsWhatsUpDataDetails(); conn = new MySqlConnection(ConString); try { GetWhatsappMessageDetailsResponse getWhatsappMessageDetailsResponse = new GetWhatsappMessageDetailsResponse(); List <GetWhatsappMessageDetailsResponse> getWhatsappMessageDetailsResponseList = new List <GetWhatsappMessageDetailsResponse>(); string whatsapptemplate = GetWhatsupTemplateName(tenantId, userId, sMSWhtappTemplate); 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, token); //if (!string.IsNullOrEmpty(apiBotResponse.Replace("[]", "").Replace("[", "").Replace("]", ""))) //{ // getWhatsappMessageDetailsResponse = JsonConvert.DeserializeObject<GetWhatsappMessageDetailsResponse>(apiBotResponse.Replace("[", "").Replace("]", "")); //} if (!string.IsNullOrEmpty(apiBotResponse.Replace("[]", "").Replace("[", "").Replace("]", ""))) { getWhatsappMessageDetailsResponseList = JsonConvert.DeserializeObject <List <GetWhatsappMessageDetailsResponse> >(apiBotResponse); } if (getWhatsappMessageDetailsResponseList != null) { if (getWhatsappMessageDetailsResponseList.Count > 0) { getWhatsappMessageDetailsResponse = getWhatsappMessageDetailsResponseList.Where(x => x.TemplateName == whatsapptemplate).FirstOrDefault(); } } if (getWhatsappMessageDetailsResponse != null) { if (getWhatsappMessageDetailsResponse.Remarks != null && getWhatsappMessageDetailsResponse.Remarks != "") { 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(); } MySqlCommand cmd = new MySqlCommand("SP_PHYGetSmsWhatsUpDataDetails", conn) { CommandType = CommandType.StoredProcedure }; cmd.Parameters.AddWithValue("@_TenantID", tenantId); cmd.Parameters.AddWithValue("@_UserID", userId); cmd.Parameters.AddWithValue("@_OrderID", orderId); cmd.Parameters.AddWithValue("@_strpostionNumber", strpostionNumber); cmd.Parameters.AddWithValue("@_strpostionName", strpostionName); cmd.Parameters.AddWithValue("@_sMSWhtappTemplate", sMSWhtappTemplate); MySqlDataAdapter da = new MySqlDataAdapter { SelectCommand = cmd }; da.Fill(ds); if (ds != null && ds.Tables[0] != null) { ordersSmsWhatsUpDataDetails = new OrdersSmsWhatsUpDataDetails() { OderID = ds.Tables[0].Rows[0]["OderID"] == DBNull.Value ? 0 : Convert.ToInt32(ds.Tables[0].Rows[0]["OderID"]), AlertCommunicationviaWhtsup = ds.Tables[0].Rows[0]["AlertCommunicationviaWhtsup"] == DBNull.Value ? false : Convert.ToBoolean(ds.Tables[0].Rows[0]["AlertCommunicationviaWhtsup"]), AlertCommunicationviaSMS = ds.Tables[0].Rows[0]["AlertCommunicationviaSMS"] == DBNull.Value ? false : Convert.ToBoolean(ds.Tables[0].Rows[0]["AlertCommunicationviaSMS"]), SMSSenderName = ds.Tables[0].Rows[0]["SMSSenderName"] == DBNull.Value ? string.Empty : Convert.ToString(ds.Tables[0].Rows[0]["SMSSenderName"]), IsSend = ds.Tables[0].Rows[0]["IsSend"] == DBNull.Value ? false : Convert.ToBoolean(ds.Tables[0].Rows[0]["IsSend"]), MessageText = ds.Tables[0].Rows[0]["MessageText"] == DBNull.Value ? string.Empty : Convert.ToString(ds.Tables[0].Rows[0]["MessageText"]), InvoiceNo = ds.Tables[0].Rows[0]["InvoiceNo"] == DBNull.Value ? string.Empty : Convert.ToString(ds.Tables[0].Rows[0]["InvoiceNo"]), MobileNumber = ds.Tables[0].Rows[0]["MobileNumber"] == DBNull.Value ? string.Empty : Convert.ToString(ds.Tables[0].Rows[0]["MobileNumber"]), AdditionalInfo = ds.Tables[1].Rows[0]["additionalInfo"] == DBNull.Value ? string.Empty : Convert.ToString(ds.Tables[1].Rows[0]["additionalInfo"]), }; // 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 (ordersSmsWhatsUpDataDetails.IsSend) { if (ordersSmsWhatsUpDataDetails.AlertCommunicationviaWhtsup) { try { List <string> additionalList = new List <string>(); if (additionalInfo != null) { additionalList = ordersSmsWhatsUpDataDetails.AdditionalInfo.Split(",").ToList(); } SendFreeTextRequest sendFreeTextRequest = new SendFreeTextRequest { To = ordersSmsWhatsUpDataDetails.MobileNumber.TrimStart('0').Length > 10 ? ordersSmsWhatsUpDataDetails.MobileNumber : "91" + ordersSmsWhatsUpDataDetails.MobileNumber.TrimStart('0'), ProgramCode = ProgramCode, TemplateName = getWhatsappMessageDetailsResponse.TemplateName, AdditionalInfo = additionalList }; string apiReq = JsonConvert.SerializeObject(sendFreeTextRequest); apiResponse = CommonService.SendApiRequest(ClientAPIURL + "api/ChatbotBell/SendCampaign", apiReq, ""); //if (apiResponse.Equals("true")) //{ // UpdateResponseShare(objRequest.CustomerID, "Contacted Via Chatbot"); //} } catch (Exception) { throw; } } else if (ordersSmsWhatsUpDataDetails.AlertCommunicationviaSMS) { Message = ordersSmsWhatsUpDataDetails.MessageText; //else if (sMSWhtappTemplate == "AWBAssigned" & ordersSmsWhatsUpDataDetails.AWBAssigned) //{ // Message = ordersSmsWhatsUpDataDetails.AWBAssignedText; //} //else if (sMSWhtappTemplate == "PickupScheduled" & ordersSmsWhatsUpDataDetails.PickupScheduled) //{ // Message = ordersSmsWhatsUpDataDetails.PickupScheduledText; //} //else if (sMSWhtappTemplate == "Shipped" & ordersSmsWhatsUpDataDetails.Shipped) //{ // Message = ordersSmsWhatsUpDataDetails.ShippedText; //} //else if (sMSWhtappTemplate == "Delivered" & ordersSmsWhatsUpDataDetails.Delivered) //{ // Message = ordersSmsWhatsUpDataDetails.DeliveredText; //} ChatSendSMS chatSendSMS = new ChatSendSMS { MobileNumber = ordersSmsWhatsUpDataDetails.MobileNumber.TrimStart('0').Length > 10 ? ordersSmsWhatsUpDataDetails.MobileNumber : "91" + ordersSmsWhatsUpDataDetails.MobileNumber.TrimStart('0'), SenderId = ordersSmsWhatsUpDataDetails.SMSSenderName, SmsText = Message }; string apiReq = JsonConvert.SerializeObject(chatSendSMS); apiResponse = CommonService.SendApiRequest(ClientAPIURL + "api/ChatbotBell/SendSMS", apiReq, token); 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(); } if (ds != null) { ds.Dispose(); } } 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); }
/// <summary> /// Get Key Insight As ChatBot /// </summary> /// <param name="mobileNumber"></param> /// <param name="programCode"></param> /// <param name="tenantID"></param> /// <param name="userID"></param> /// <returns></returns> public string GetKeyInsightAsChatBot(string mobileNumber, string programCode, string campaignID, int tenantID, int userID, string ClientAPIURL) { string obj = ""; DataSet ds = new DataSet(); 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(); } if (conn != null && conn.State == ConnectionState.Closed) { conn.Open(); } MySqlCommand cmd = new MySqlCommand("SP_HSGetKeyInsightAsChatBot", conn) { CommandType = CommandType.StoredProcedure }; cmd.Parameters.AddWithValue("@_TenantID", tenantID); cmd.Parameters.AddWithValue("@_UserID", userID); cmd.Parameters.AddWithValue("@_ProgramCode", programCode); cmd.Parameters.AddWithValue("@_MobileNumber", mobileNumber); cmd.Parameters.AddWithValue("@_CampaignID", campaignID); cmd.Parameters.AddWithValue("@_strpostionNumber", strpostionNumber); cmd.Parameters.AddWithValue("@_strpostionName", strpostionName); MySqlDataAdapter da = new MySqlDataAdapter { SelectCommand = cmd }; da.Fill(ds); if (ds != null && ds.Tables[0] != null) { obj = ds.Tables[0].Rows[0]["Message"] == DBNull.Value ? String.Empty : Convert.ToString(ds.Tables[0].Rows[0]["Message"]); } } catch (Exception ex) { obj = ""; } return(obj); }