? ? ?上一篇已經(jīng)把所有訊息封裝且都各自有方法處理了,這篇從使用第一步——關(guān)注開始, ?關(guān)注之後進(jìn)行訊息記錄,同時回覆文字訊息給用戶,關(guān)注方法:DoSub,另外新用戶掃描帶參數(shù)的二維碼關(guān)注方法:DoCodeNotSub。
? ? ?
1、使用者追蹤公眾號回傳文字訊息、使用者記錄:
根據(jù)解析的XML反射賦值給予訊息 model,?現(xiàn)在進(jìn)行使用者判斷:
tb_User?mUser?=DALWei.InfoEntities<tb_user>(dbHome,u=>u.OpenId==mSub.FromUserName); ????????????if?(mUser?!=?null) ????????????{ ??????????????????//說明此用戶以前關(guān)注過后來取消了 ????????????} ????????????else ????????????{ ?????????????????//全新的用戶,添加 ????????????}</tb_user>
完整方法代碼如下:
tb_User?mUser?=DALWei.InfoEntities<tb_user>(dbHome,u=>u.OpenId==mSub.FromUserName); ????????????if?(mUser?!=?null) ????????????{ ????????????????if?(mUser.State?==?0) ????????????????{ ????????????????????SText?mStxt?=?new?SText(); ????????????????????mStxt.ToUserName?=?mSub.FromUserName; ????????????????????mStxt.FromUserName?=?mSub.ToUserName; ????????????????????mStxt.CreateTime?=?mSub.CreateTime; ????????????????????mStxt.Content?=?"很抱歉,您已經(jīng)被系統(tǒng)拒絕服務(wù),若有疑問請聯(lián)系我們"; ????????????????????DALWei.SendText(mStxt); ????????????????????return; ????????????????} ????????????????else ????????????????{ ????????????????????mUser.SubTime?=?DateTime.Now; ????????????????????DALWei.UpdateEntity(dbHome,?mUser); ????????????????} ????????????} ????????????else ????????????{ ????????????????mUser?=?new?tb_User(); ????????????????mUser.InId?=?0; ????????????????mUser.OpenId?=?mSub.FromUserName; ????????????????mUser.GroupId?=?0; ????????????????mUser.NickName?=?""; ????????????????mUser.CreateTime?=?System.DateTime.Now; ????????????????mUser.State?=?1; ????????????????mUser.PreFirst?=?""; ????????????????mUser.SubTime?=?DateTime.Now; ????????????????DALWei.AddEntity(dbHome,mUser); ???????????? ????????????}</tb_user>
已經(jīng)存在時修改用戶最後次關(guān)注時間,不存在時添加新用戶;其中在用戶已經(jīng)存在的情況下,需要考慮用戶state=0的情況,也就是使用者被停用的, ?直接回傳文字訊息, 提示已經(jīng)停用。
?
?
?
2、回覆文字訊息
已經(jīng)封裝好的傳送文字訊息模型SText,?賦值並輸出即可:
SText?mStxtA?=?new?SText(); ????????????mStxtA.ToUserName?=?mSub.FromUserName; ????????????mStxtA.FromUserName?=?mSub.ToUserName; ????????????mStxtA.CreateTime?=?mSub.CreateTime; ????????????mStxtA.Content?=ReadXml.Menu(); ????????????Often.ResponseToEnd(DALWei.SendText(mStxtA));
其中,ReadXml.Menu()方法是傳回預(yù)設(shè)的一段字符,當(dāng)做普通文字選單用(?後面會有自訂選單)。
文字如下:
public?static?string??Menu() ????????{ ????????????string?Content?=?""; ????????????Content?+=?"歡迎使用/微笑\n\n"; ????????????Content?+=?"輸入以下序號開始獲取最新信息:\n"; ????????????Content?+=?"1,企業(yè)快報\ue102\n"; ????????????Content?+=?"2,行業(yè)要覽\n"; ????????????Content?+=?"3,行情動態(tài)\n"; ????????????Content?+=?"4,焦點訪談\n"; ????????????Content?+=?"5,下游資訊\n"; ????????????Content?+=?"6,資訊中心\ue135\n"; ????????????Content?+=?"7,采購\ue42f\n"; ????????????Content?+=?"8,市場報告--VIP\ue035專屬\n\n"; ????????????Content?+=?"輸入其他關(guān)鍵字可以搜索\ue114\n"; ????????????Content?+=?"輸入序號@關(guān)鍵字可以在指定類別下搜索,比如?1@馬航\n"; ????????????Content?+=?"輸入?或幫助?可以顯示此菜單"; ????????????return?Content; ????????}
效果:
#更多asp.net開發(fā)微信公眾平臺(4)關(guān)注事件、用戶記錄、回覆文字訊息相關(guān)文章請關(guān)注PHP中文網(wǎng)!
本網(wǎng)站聲明
本文內(nèi)容由網(wǎng)友自願投稿,版權(quán)歸原作者所有。本站不承擔(dān)相應(yīng)的法律責(zé)任。如發(fā)現(xiàn)涉嫌抄襲或侵權(quán)的內(nèi)容,請聯(lián)絡(luò)admin@php.cn

熱AI工具

Undress AI Tool
免費脫衣圖片

Undresser.AI Undress
人工智慧驅(qū)動的應(yīng)用程序,用於創(chuàng)建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章
Grass Wonder Build Guide |烏瑪媽媽漂亮的德比
1 個月前
By Jack chen
<??>:在森林裡99夜 - 所有徽章以及如何解鎖
4 週前
By DDD
烏瑪?shù)姆劢z漂亮的德比橫幅日程(2025年7月)
1 個月前
By Jack chen
Rimworld Odyssey溫度指南和Gravtech
3 週前
By Jack chen
Windows安全是空白或不顯示選項
1 個月前
By 下次還敢

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發(fā)環(huán)境

Dreamweaver CS6
視覺化網(wǎng)頁開發(fā)工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)