public ResponseModel CampaignShareMassanger(ShareChatbotModel objRequest)
        {
            string obj = string.Empty;
            StoreCampaignCaller storecampaigncaller = new StoreCampaignCaller();
            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        = storecampaigncaller.CampaignShareMassanger(new StoreCampaignService(_connectioSting), objRequest, authenticate.TenantId, authenticate.UserMasterID);
                statusCode =
                    obj.Length == 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);
        }
示例#2
0
        /// <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);
        }
示例#3
0
        /// <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);
        }
示例#4
0
        /// <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);
        }
 public int CampaignShareSMS(IStoreCampaign Campaign, ShareChatbotModel objRequest, string ClientAPIURL, string SMSsenderId, int TenantID, int UserID)
 {
     _CampaignRepository = Campaign;
     return(_CampaignRepository.CampaignShareSMS(objRequest, ClientAPIURL, SMSsenderId, TenantID, UserID));
 }
 public string CampaignShareMassanger(IStoreCampaign Campaign, ShareChatbotModel objRequest, int TenantID, int UserID)
 {
     _CampaignRepository = Campaign;
     return(_CampaignRepository.CampaignShareMassanger(objRequest, TenantID, UserID));
 }
 public int CampaignShareChatbot(IStoreCampaign Campaign, ShareChatbotModel objRequest, string ClientAPIURL, int TenantID, int UserID, string ProgramCode)
 {
     _CampaignRepository = Campaign;
     return(_CampaignRepository.CampaignShareChatbot(objRequest, ClientAPIURL, TenantID, UserID, ProgramCode));
 }