/// <summary> /// 发送图片消息 /// </summary> /// <param name="ToUserName"></param> /// <param name="path"></param> public void SendImg(string ToUserName, string filePath) { Contact ToUser = WechatAPIService.GetContact(ToUserName); API.Message msg = new API.Message() { MsgType = 3, fileName = filePath, IsSend = true, Remote = ToUser, Mime = WechatAPIService.Self, }; Task <SendMsgImgResponse> task = api.SendImgAsync(ToUserName, filePath); task.ContinueWith((obj) => { SendMsgImgResponse res = obj.Result; if (res != null && !string.IsNullOrEmpty(res.MsgID)) { MessageDao MsgDao = DaoMaster.GetSession().GetMessageDao(); msg.MsgId = res.MsgID; MsgDao.InsertMessage(msg, openContact.Seq); } }); }
/// <summary> /// 异步发送图片消息 /// </summary> /// <param name="FromUserName"></param> /// <param name="ToUserName"></param> /// <param name="Content"></param> /// <returns></returns> public async Task <SendMsgImgResponse> SendImgAsync(string ToUserName, string fileName) { string FromUserName = Self.ID; SendMsgImgResponse val = await Task.Run(() => { FileInfo file = new FileInfo(fileName); //上传资源 UploadmediaResponse upload = client.Uploadmedia(FromUserName, ToUserName, "WU_FILE_0", "image/png", 2, 4, file, mPass_ticket, mBaseReq); if (upload != null) { ImgMsg msg = new ImgMsg(); msg.FromUserName = FromUserName; msg.ToUserName = ToUserName; msg.MediaId = upload.MediaId; SendMsgImgResponse rep = client.SendMsgImg(msg, mPass_ticket, mBaseReq); return(rep); } return(null); }); return(val); }