/// <summary> /// 向App推送消息 /// </summary> /// <param name="msg"></param> /// <returns></returns> public ResultDTO SendMobileMessage(MobileMsgDTO msg) { var mobileMessage = new MobileMessageDTO { AppId = msg.AppId.ToString(), BasicContentDTO = new BasicContentDTO { Id = msg.MsgId, Code = msg.ContentCode.ToString(), Content = msg.MsgContent }, ProductType = ProductType.BTP, ProductSecondType = (int)msg.SecondType, UserIds = "[" + string.Join(",", msg.ToUsers.Select(x => "\"" + x + "\"")) + "]", EndTime = DateTime.Now.AddDays(13), MessageType = (MessageType)(int)(msg.MobileMsgType) }; try { MessageCenter.Instance.AddMessage(mobileMessage); } catch (Exception ex) { var errMsg = string.Format("推送消息服务异常。messageDTO:{0}", JsonHelper.JsonSerializer(mobileMessage)); LogHelper.Error(errMsg, ex); return(new ResultDTO { isSuccess = false, ResultCode = 1, Message = errMsg }); } return(new ResultDTO { isSuccess = true, ResultCode = 0, Message = "Success" }); }
public void AddMessage(MobileMessageDTO addMessageDTO) { PublishMobileMessageFacade facade = new PublishMobileMessageFacade(); facade.ContextDTO = AuthorizeHelper.CoinInitAuthorizeInfo(); facade.AddMessage(addMessageDTO); }
void SendMessage(Guid msgId, Guid appId, Guid userId, DateTime?endTime, ShareRedMessageDTO content) { //给邀请人发送系统消息 //调用消息中心发消息 //定义消息内容 MobileMessageDTO messageDTO = new MobileMessageDTO(); messageDTO.MessageType = JAP.BaseApp.MessageCenter.Deploy.Enum.MessageType.BUSI_MSG; messageDTO.AppId = appId.ToString().ToLower(); messageDTO.BasicContentDTO = new BasicContentDTO(); messageDTO.BasicContentDTO.Code = "AdDividend";//"BTPShareRedEnvelope"; messageDTO.ProductType = JAP.BaseApp.MessageCenter.Deploy.Enum.ProductType.BTP; messageDTO.ProductSecondType = 3;//新红包 DataContractJsonSerializer json = new DataContractJsonSerializer(content.GetType()); string szJson = ""; //序列化 using (MemoryStream stream = new MemoryStream()) { json.WriteObject(stream, content); szJson = Encoding.UTF8.GetString(stream.ToArray()); } messageDTO.BasicContentDTO.Content = szJson.Replace("\"", "\\\""); //messageDTO.Content = szJson.Replace("\"", "\\\""); ; if (endTime != null) { messageDTO.EndTime = (DateTime)endTime; } //接收人邀请人Id string strRelation = "["; strRelation += "\"" + userId.ToString() + "\","; strRelation = strRelation.Substring(0, strRelation.Length - 1); strRelation += "]"; messageDTO.UserIds = strRelation; try { Jinher.AMP.BTP.TPS.MessageCenter.Instance.AddMessage(messageDTO); JAP.Common.Loging.LogHelper.Info("红包消息内容:" + userId.ToString() + ":" + ":" + messageDTO.AppId.ToString() + ":" + messageDTO.BasicContentDTO.Content); } catch (Exception ex) { JAP.Common.Loging.LogHelper.Error("Error_LogKey:RedEnvelopesProcessor.SendMessage:BaseApp.MessageCenter.ISV.Facade.PublishMobileMessageFacade.AddMessage", ex); } }
/// <summary> /// 众筹发消息 /// </summary> /// <param name="msgId"></param> /// <param name="appId"></param> /// <param name="endTime"></param> /// <param name="content"></param> public void SendMessage(Guid msgId, Guid appId, DateTime?endTime, CrowdfundingMessageDTO content) { //给邀请人发送系统消息 //调用消息中心发消息 //定义消息内容 MobileMessageDTO messageDTO = new MobileMessageDTO(); messageDTO.MessageType = JAP.BaseApp.MessageCenter.Deploy.Enum.MessageType.BUSI_MSG; messageDTO.AppId = appId.ToString().ToLower(); messageDTO.BasicContentDTO = new BasicContentDTO(); messageDTO.BasicContentDTO.Code = "CfStateChange";//"BTPShareRedEnvelope"; messageDTO.ProductType = JAP.BaseApp.MessageCenter.Deploy.Enum.ProductType.BTP; //messageDTO.ProductSecondType = 3; DataContractJsonSerializer json = new DataContractJsonSerializer(content.GetType()); string szJson = ""; //序列化 using (MemoryStream stream = new MemoryStream()) { json.WriteObject(stream, content); szJson = Encoding.UTF8.GetString(stream.ToArray()); } messageDTO.BasicContentDTO.Content = szJson.Replace("\"", "\\\""); //messageDTO.Content = szJson.Replace("\"", "\\\""); ; if (endTime != null) { messageDTO.EndTime = (DateTime)endTime; } //接收人邀请人Id messageDTO.UserIds = "[]"; PublishMobileMessageFacade facade = new PublishMobileMessageFacade(); try { facade.AddMessage(messageDTO); //LogHelper.Info("众筹状态改变消息内容:" + messageDTO.AppId + ":" + messageDTO.BasicContentDTO.Content); LogHelper.Info(string.Format("众筹状态改变消息内容。messageDTO:{0}", JsonHelper.JsonSerializer(messageDTO))); } catch (Exception ex) { LogHelper.Error(string.Format("发送众筹状态改变消息异常。messageDTO:{0}", JsonHelper.JsonSerializer(messageDTO)), ex); // JAP.Common.Loging.LogHelper.Error("发送众筹状态改变消息异常", ex); } }
public void PublishOrderMessage(string id, string userids, Guid appId, string messages, string contentCode, bool isAfterSales) { MobileMessageDTO messageDTO = new MobileMessageDTO(); messageDTO.AppId = appId.ToString(); messageDTO.BasicContentDTO = new BasicContentDTO(); messageDTO.BasicContentDTO.Id = id; messageDTO.BasicContentDTO.Code = contentCode; messageDTO.BasicContentDTO.Content = messages; messageDTO.ProductType = JAP.BaseApp.MessageCenter.Deploy.Enum.ProductType.BTP; //售后的需要设置成5 if (isAfterSales) { messageDTO.ProductSecondType = 5; } string[] aa = userids.Split(','); messageDTO.UserIds = "["; foreach (var temp in aa) { messageDTO.UserIds += "\"" + temp + "\"" + ","; } messageDTO.UserIds = messageDTO.UserIds.Substring(0, messageDTO.UserIds.Length - 1); messageDTO.UserIds += "]"; messageDTO.EndTime = DateTime.Now.AddDays(13); messageDTO.MessageType = JAP.BaseApp.MessageCenter.Deploy.Enum.MessageType.BUSI_MSG; try { Jinher.AMP.BTP.TPS.MessageCenter.Instance.AddMessage(messageDTO); } catch (Exception ex) { LogHelper.Error(string.Format("推送消息服务异常。messageDTO:{0}", JsonHelper.JsonSerializer(messageDTO)), ex); } //messageDTO.BeginTime = DateTime.Now; //messageDTO.EndTime = DateTime.Now; LogHelper.Info(string.Format("推送消息服务成功。messageDTO:{0}", JsonHelper.JsonSerializer(messageDTO))); }
private static void PublishOrderMessage(string id, string userids, Guid appId, string messages, string contentCode) { MobileMessageDTO messageDTO = new MobileMessageDTO(); messageDTO.AppId = appId.ToString(); messageDTO.BasicContentDTO = new BasicContentDTO(); messageDTO.BasicContentDTO.Id = id; messageDTO.BasicContentDTO.Code = contentCode; messageDTO.BasicContentDTO.Content = messages; messageDTO.ProductType = JAP.BaseApp.MessageCenter.Deploy.Enum.ProductType.BTP; string[] aa = userids.Split(','); messageDTO.UserIds = "["; foreach (var temp in aa) { messageDTO.UserIds += "\"" + temp + "\"" + ","; } messageDTO.UserIds = messageDTO.UserIds.Substring(0, messageDTO.UserIds.Length - 1); messageDTO.UserIds += "]"; messageDTO.EndTime = DateTime.Now.AddDays(13); messageDTO.MessageType = JAP.BaseApp.MessageCenter.Deploy.Enum.MessageType.BUSI_MSG; try { LogHelper.Info(string.Format("推送消息服务参数。messageDTO:{0}", JsonHelper.JsonSerializer(messageDTO))); PublishMobileMessageFacade publishMobileMessageFacade = new PublishMobileMessageFacade(); publishMobileMessageFacade.AddMessage(messageDTO); } catch (Exception ex) { LogHelper.Error(string.Format("推送消息服务异常。messageDTO:{0}", JsonHelper.JsonSerializer(messageDTO)), ex); // LogHelper.Error(string.Format("推送消息服务异常。Message:{0},UserIds:{1},AppId:{2}", messageDTO.BasicContentDTO.Content, userids, appId), ex); } //LogHelper.Info(string.Format("推送消息服务成功。Message:{0},UserIds:{1},AppId:{2}", messageDTO.BasicContentDTO.Content, userids, appId)); LogHelper.Info(string.Format("推送消息服务成功。messageDTO:{0}", JsonHelper.JsonSerializer(messageDTO))); }