日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

微信公众平台——被动回复用户消息

發(fā)布時間:2023/12/1 编程问答 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 微信公众平台——被动回复用户消息 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

微信公眾平臺——被動回復(fù)用戶消息

開發(fā)模式下的回復(fù)信息基礎(chǔ)接口,可用來向用戶回復(fù)文本消息、圖片消息、語音消息、視頻消息、小視頻消息、地理位置消息、鏈接消息。

1、回復(fù)文本消息

function ReplyText(Msg: TMessage; MsgText: String): RawByteString; varX: IXMLDocument; beginX := NewXMLDocument;tryX.Xml.text := TextMsg;X.Active := true;with X.DocumentElement.ChildNodes dobeginNodes['ToUserName'].NodeValue := Msg.FromUserName;Nodes['FromUserName'].NodeValue := Msg.ToUserName;Nodes['CreateTime'].NodeValue := UnixTime(now);Nodes['MsgType'].NodeValue := 'text';Nodes['Content'].NodeValue := MsgText;end;Result := UTF8Encode(X.Xml.text);finallyX.Active := False;X := nil;end; end;

//設(shè)置AResponseInfo.ContentText 等于返回的結(jié)果,即可自動回復(fù)文本消息

2、回復(fù)圖文消息

TNews = recordTitle: String;Description: String;PicUrl: String;Url: String;end;var MusicSubimg='https://mmbiz.qlogo.cn/mmbiz/cHdclURXy6gmu3ib6UA20b5s2Xy1Ra7cxYMNIuDvFDiaQvX8MZDibgQ1eCOsfvL6zufo7xSzUiaQZUY1KovYWmJ6Hg/0';function NewsMusic: TArray<TNews>; beginSetLength(Result, 2);Result[0].Title := 'QQ音樂巔峰榜·內(nèi)地';Result[0].Description := 'QQ音樂巔峰榜·內(nèi)地';Result[0].PicUrl := MusicSubimg;Result[0].Url := 'http://y.qq.com/#type=toplist&p=top_2';Result[1].Title := 'QQ音樂巔峰榜·港臺';Result[1].Description := 'QQ音樂巔峰榜·港臺';Result[1].PicUrl := MusicSubimg;Result[1].Url := 'http://y.qq.com/#type=toplist&p=top_1'; end;function ReplyNews(M: TMessage; News: TArray<TNews>): RawByteString; varX: IXMLDocument;I: Integer; beginX := NewXMLDocument;tryX.Xml.text := NewsMsg;X.Active := true;with X.DocumentElement.ChildNodes dobeginNodes['ToUserName'].NodeValue := M.FromUserName;Nodes['FromUserName'].NodeValue := M.ToUserName;Nodes['CreateTime'].NodeValue := UnixTime(now);Nodes['MsgType'].NodeValue := 'news';Nodes['ArticleCount'].NodeValue := length(News);with Nodes['Articles'].ChildNodes dobeginwith Nodes['item'].ChildNodes dobeginNodes['Title'].NodeValue := News[0].Title;Nodes['Description'].NodeValue := News[0].Description;Nodes['PicUrl'].NodeValue := News[0].PicUrl;Nodes['Url'].NodeValue := News[0].Url;end;for I := 1 to length(News) - 1 dobeginAdd(First.CloneNode(true));with Nodes['item'].ChildNodes dobeginNodes['Title'].NodeValue := News[I].Title;Nodes['Description'].NodeValue := News[I].Description;Nodes['PicUrl'].NodeValue := News[I].PicUrl;Nodes['Url'].NodeValue := News[I].Url;end;end;end;end;Result := UTF8Encode(X.Xml.text);finallyX.Active := False;X := nil;end; end;

//設(shè)置AResponseInfo.ContentText 等于返回的結(jié)果,即可自動回復(fù)圖文消息

3、回復(fù)模板消息

function PostMethod(HTTP: TIdHTTP; Url: String; Data: UTF8String; Max: Integer): String; varPostData, RespData: TStringStream; beginRespData := TStringStream.Create('');PostData := TStringStream.Create(Data);trytryif HTTP = nil thenExit;HTTP.Post(Url, PostData, RespData);Result := RespData.DataString;HTTP.Request.Referer := Url;exceptDec(Max);if Max = 0 thenbeginResult := '';Exit;end;Result := PostMethod(Url, Data, Max);end;finallyHTTP.Disconnect;FreeAndNil(RespData);FreeAndNil(PostData);end; end;

?

SendTemplateUrl = 'https://api.weixin.qq.com/cgi-bin/message/template/send?access_token=%s';function ReplyTemRecharge(OpenID, AccessToken, First, Remark: String;Money: Integer): TJSONObject; varUrl: string;Data: TJSONObject;temp: RawByteString; beginData := TJSONObject.Create;tryUrl := Format(SendTemplateUrl, [AccessToken]);Data.AddPair('touser', OpenID);Data.AddPair('template_id', 'NH_ctxX4kjW1Jw3q8Cb1y1uBAard9uOMdF5F2Nq9Uwc');Data.AddPair('url', '');Data.AddPair('topcolor', '#FF0000');Data.AddPair('data', TJSONObject.Create);with Data.Values['data'] as TJSONObject dobeginAddPair('first', TJSONObject.Create);with Values['first'] as TJSONObject dobeginAddPair('value', '充值成功');AddPair('color', '#173177');end;AddPair('keyword1', TJSONObject.Create);with Values['keyword1'] as TJSONObject dobeginAddPair('value', format('%d 元',[Money]));AddPair('color', '#173177');end;AddPair('keyword2', TJSONObject.Create);with Values['keyword2'] as TJSONObject dobeginAddPair('value', formatdatetime('yyyy-mm-dd hh:mm:ss', now));AddPair('color', '#173177');end;AddPair('remark', TJSONObject.Create);with Values['remark'] as TJSONObject dobeginAddPair('value', '這只是模板測試,不要當(dāng)真哦^_^');AddPair('color', '#173177');end;end;temp := PostMethod(Url, UTF8Encode(Data.ToString), 1);Result := TJSONObject.ParseJSONValue(temp) as TJSONObject;finallyData.Free;end; end;

轉(zhuǎn)載于:https://www.cnblogs.com/hnxxcxg/p/8987605.html

總結(jié)

以上是生活随笔為你收集整理的微信公众平台——被动回复用户消息的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。