Dans l'article précédent, tous les messages ont été encapsulés et traités à leur manière. Cet article commence par la première étape d'utilisation - le suivi. Après le suivi, le message sera enregistré et les messages texte seront répondus à l'utilisateur. en même temps. La méthode suivante : DoSub De plus Les nouveaux utilisateurs scannent le code QR avec les paramètres pour suivre la méthode : DoCodeNotSub.
1. L'utilisateur suit le compte officiel et renvoie des messages texte et des enregistrements utilisateur :
Attribuez des valeurs au modèle de message en fonction de la réflexion XML analysée. faire le jugement de l'utilisateur :
tb_User mUser =DALWei.InfoEntities<tb_user>(dbHome,u=>u.OpenId==mSub.FromUserName); if (mUser != null) { //说明此用户以前关注过后来取消了 } else { //全新的用户,添加 }</tb_user>
Le code complet de la méthode est le suivant :
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 = "很抱歉,您已经被系统拒绝服务,若有疑问请联系我们"; 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>
Modifier le dernier temps d'attention de l'utilisateur s'il existe déjà, et ajouter un nouvel utilisateur s'il n'existe pas ; là où l'utilisateur existe déjà, il est nécessaire de considérer la situation de l'état de l'utilisateur = 0, c'est-à-dire que l'utilisateur est désactivé, et de renvoyer directement un message texte, indiquant que l'utilisateur a été désactivé.
2. Répondre au message texte
Le modèle de message texte d'envoi encapsulé SText peut être attribué et émis :
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));
Parmi eux, la méthode ReadXml.Menu() renvoie un segment de caractères par défaut, qui peut être utilisé comme un menu texte normal (il y aura un menu personnalisé plus tard).
Le texte est le suivant :
public static string Menu() { string Content = ""; Content += "欢迎使用/微笑\n\n"; Content += "输入以下序号开始获取最新信息:\n"; Content += "1,企业快报\ue102\n"; Content += "2,行业要览\n"; Content += "3,行情动态\n"; Content += "4,焦点访谈\n"; Content += "5,下游资讯\n"; Content += "6,资讯中心\ue135\n"; Content += "7,采购\ue42f\n"; Content += "8,市场报告--VIP\ue035专属\n\n"; Content += "输入其他关键字可以搜索\ue114\n"; Content += "输入序号@关键字可以在指定类别下搜索,比如 1@马航\n"; Content += "输入?或帮助 可以显示此菜单"; return Content; }
Effet :
Pour plus d'articles liés au développement par asp.net de la plateforme publique WeChat (4) suite aux événements, aux enregistrements d'utilisateurs et à la réponse aux messages texte, veuillez faire attention au site Web PHP chinois !