public OperateStatus SendTemplateMsg(Account currentAccount, TemplateMsgParams templateMsgParams, IList<TemplateParameter> parameters) { try { string url = SendTemplateMsgUrl + AccessTokenHelper.GetAccessToken(currentAccount); var templateMsg = new TemplateMsg(templateMsgParams, parameters); var param = JsonConvert.SerializeObject(templateMsg); var responseResult = HttpHelper.GetResponseResultByPost(url, param); if (responseResult.Status != ResponseStatus.Success) { return new OperateStatus { ResultSign = ResultSign.Failed, Message = "发送请求异常," + responseResult.ExceptionMessages }; } var result = JsonConvert.DeserializeObject<JObject>(responseResult.ResponseString); var errcode = result.Value<int>("errcode"); if (errcode == 0) { return new OperateStatus { ResultSign = ResultSign.Success }; } return new OperateStatus { ResultSign = ResultSign.Failed, Message = string.Format("发送错误,错误码:{0},错误信息:{1}", errcode, result.Value<string>("errmsg")) }; } catch (Exception ex) { return new OperateStatus { ResultSign = ResultSign.Failed, Message = "发送异常," + ex.Message }; } }
public TemplateMsg(TemplateMsgParams templateMsgParams, IList<TemplateParameter> parameters) { OpenID = templateMsgParams.ToUser; TemplateID = templateMsgParams.TemplateID; Url = templateMsgParams.Url; TopColor = GetTopColor(templateMsgParams.MsgType); Parameters = parameters; }
public ServiceResult TemplateMsg(Guid accountID, TemplateMsgParams templateMsgParams, IList<TemplateParameter> parameters) { SendMsgServiceModel model = new SendMsgServiceModel(); var status = model.TemplateMsg(accountID, templateMsgParams, parameters); return new ServiceResult(status); }
/// <summary> /// 模板消息发送(只支持非企业号) /// </summary> /// <param name="accountID">账号ID</param> /// <param name="templateMsgParams">发送参数</param> /// <param name="parameters">模板参数</param> /// <returns>操作结果</returns> public OperateStatus TemplateMsg(Guid accountID, TemplateMsgParams templateMsgParams, IList<TemplateParameter> parameters) { SendMsgServiceModel model=new SendMsgServiceModel(); return model.TemplateMsg(accountID, templateMsgParams, parameters); }
/// <summary> /// 模板消息发送(只支持非企业号) /// </summary> /// <param name="accountID">账号ID</param> /// <param name="templateMsgParams">发送参数</param> /// <param name="parameters">模板参数</param> /// <returns>操作结果</returns> public OperateStatus TemplateMsg(Guid accountID, TemplateMsgParams templateMsgParams, IList<TemplateParameter> parameters) { AccountServiceModel model = new AccountServiceModel(); var currentAccount = model.GetById(accountID); if (currentAccount == null) { return new OperateStatus { ResultSign = ResultSign.Failed, Message = "账号不存在" }; } var func = FunctionFactory.GetFunctionInstance<ITemplateMsg>(); OperateStatus status = func.SendTemplateMsg(currentAccount, templateMsgParams, parameters); return status; }