Das öffentliche WeChat-Konto folgt der Idee eines Unternehmenskontos und fügt die Funktion der Tag-Verwaltung hinzu. Für Fans, die ihm folgen, kann eine Tag-Verwaltung eingerichtet werden, um eine bequemere Gruppenverwaltungsfunktion zu erreichen. Entwickler können die relevanten Schnittstellen der Benutzer-Tag-Verwaltung verwenden, um öffentliche Konto-Tags zu erstellen, abzufragen, zu ändern, zu löschen und andere Vorgänge durchzuführen, und sie können auch Tags für Benutzer markieren und löschen. In diesem Aufsatz wird hauptsächlich die Verwendung von C# vorgestellt, um die neueren Funktionen öffentlicher Konten zu kapseln und die Verwaltungsfunktion von Tags zu realisieren.
1. Einführung in die Label-Funktion
1) Die Label-Funktion ersetzt die Gruppierungsfunktion und unterstützt die mehrdimensionale Definition von Benutzerattributen
Betreiber können sich anmelden. Klicken Sie im Hintergrund der öffentlichen Plattform im linken Menü auf „Benutzerverwaltung“, um die Benutzer zu verwalten, denen Sie gefolgt sind. Klicken Sie auf das „Tag“-Symbol auf der rechten Seite eines der Benutzer, um ein Häkchen anzuzeigen Kontrollkästchen, um dem Benutzer schnell ein Tag hinzuzufügen, und das Kontrollkästchen „Tag hinzufügen“ wurde in „Unterstützt das direkte Erstellen neuer Tags“ geändert.
Darüber hinaus wurde auch die Tag-Funktionsschnittstelle aktualisiert. Entwickler können die Schnittstelle aufrufen, um Tag- und Benutzeroperationen zu implementieren. Gleichzeitig unterstützen die erweiterte Gruppen-Messaging-Schnittstelle und die personalisierte Menüoberfläche bereits Vorgänge auf Basis von Tags.
2) Optimieren Sie Benutzerkarten, unterstützen Sie die Anzeige von Benutzeravataren und interaktiven Daten in mehreren Szenarien und verbessern Sie die Vertrautheit der Bediener mit Benutzern und die Verwaltungseffizienz
Dieses Problem fügt interaktive Daten wie die Anzahl der Nachrichten, Kommentare und Anerkennungen hinzu, zeigt die Aufmerksamkeitszeit des Benutzers an und unterstützt die Anzeige des Avatar-Bildes des Benutzers, was hilfreich ist, um die Distanz zwischen dem Bediener und dem Benutzer zu verkürzen. Darüber hinaus werden die Szenarien „Wertschätzungsfunktion“ und „Nachrichtenverwaltung“ unterstützt, um Benutzer direkt zu verwalten und so die Verwaltungseffizienz zu verbessern.
2. Kapselung der Tag-Schnittstelle
Die Tag-Schnittstelle ist in zwei Teile unterteilt: Tag-Verwaltung und Benutzerverwaltung. Die Label-Funktion unterstützt derzeit öffentliche Konten, um bis zu drei Labels für Benutzer zu kennzeichnen.
Tag-Verwaltung umfasst:
1) Tags erstellen 2) Von öffentlichen Konten erstellte Tags abrufen 3) Tags bearbeiten 4) Tags löschen 5) Follower unter Tags erhalten Benutzerverwaltung Liste der
-Tags umfasst:
1) Benutzer stapelweise markieren 2) Benutzer stapelweise markieren 3) Liste der Tags für Benutzer abrufen
Das Folgende ist eine relevante Einführung in verschiedene Schnittstellenkapselungen.
Zuerst definieren wir auf herkömmliche Weise die relevanten Schnittstellen und Implementierungsbeziehungen, wie in der folgenden Abbildung dargestellt.
Gemäß der entsprechenden Schnittstellenbeschreibung können wir die Definition der Label-Schnittstelle wie folgt implementieren.
/// <summary> /// 微信标签管理的API接口 /// 开发者可以使用用户标签管理的相关接口,实现对公众号的标签进行创建、查询、修改、删除等操作,也可以对用户进行打标签、取消标签等操作。 /// </summary> public interface ITagApi { /// <summary> /// 创建标签 /// 一个公众号,最多可以创建100个标签。 /// </summary> /// <param name="accessToken">调用接口凭证</param> /// <param name="name">标签名(30个字符以内)</param> /// <returns></returns> TagJson CreateTag(string accessToken, string name); /// <summary> /// 获取公众号已创建的标签 /// </summary> /// <param name="accessToken">调用接口凭证</param> /// <returns></returns> List<TagCountJson> GetTagList(string accessToken); /// <summary> /// 编辑标签 /// </summary> /// <param name="accessToken">调用接口凭证</param> /// <param name="id">标签ID</param> /// <param name="name">标签名称</param> /// <returns></returns> CommonResult UpdateTag(string accessToken, int id, string name); /// <summary> /// 删除标签 /// </summary> /// <param name="accessToken">调用接口凭证</param> /// <param name="id">标签ID</param> /// <returns></returns> CommonResult DeleteTag(string accessToken, int id); /// <summary> /// 获取标签下粉丝列表 /// </summary> /// <param name="accessToken">调用接口凭证</param> /// <param name="id">标签ID</param> /// <param name="name">标签名称</param> /// <returns></returns> GetTagResult GetTag(string accessToken, int id, string next_openid = null); /// <summary> /// 批量为用户打标签 /// 标签功能目前支持公众号为用户打上最多三个标签。 /// </summary> /// <param name="accessToken">调用接口凭证</param> /// <param name="tagid">标签ID</param> /// <param name="openid_list">粉丝列表</param> /// <returns></returns> CommonResult BatchTagging(string accessToken, int tagid, List<string> openid_list); /// <summary> /// 批量为用户取消标签 /// 标签功能目前支持公众号为用户打上最多三个标签。 /// </summary> /// <param name="accessToken">调用接口凭证</param> /// <param name="tagid">标签ID</param> /// <param name="openid_list">粉丝列表</param> /// <returns></returns> CommonResult BatchUntagging(string accessToken, int tagid, List<string> openid_list); /// <summary> /// 获取用户身上的标签列表 /// </summary> /// <param name="accessToken">调用接口凭证</param> /// <param name="openid">用户OpenID</param> /// <returns></returns> List<int> GetIdList(string accessToken, string openid); }
Werfen wir einen Blick auf die offiziellen Definitionsdaten mehrerer Schnittstellen.
1) Schnittstelle zum Erstellen von Tags
Beschreibung der Schnittstellenaufrufanforderung
HTTP-Anfragemethode: POST (bitte https-Protokoll verwenden)
https://api.weixin.qq.com/cgi-bin/tags/create?access_token=ACCESS_TOKEN
POST-Datenformat: JSON
POST-Datenbeispiel:
{ "tag" : { "name" : "广东"//标签名 } }
Rückgabebeschreibung (Beispiel für ein normal zurückgegebenes JSON-Datenpaket)
{ "tag":{ "id":134,//标签id "name":"广东" } }
Auf diese Weise können wir eine Entitätsklasse definieren, die die zurückgegebenen Daten überträgt.
/// <summary> /// 标签信息 /// </summary> public class TagJson { /// <summary> /// 标签id,由微信分配 /// </summary> public int id { get; set; } /// <summary> /// 标签名,UTF8编码 /// </summary> public string name { get; set; } }
Auf diese Weise lautet der vollständige Implementierungscode zum Erstellen von Tags wie folgt
/// <summary> /// 创建标签 /// 一个公众号,最多可以创建100个标签。 /// </summary> /// <param name="accessToken">调用接口凭证</param> /// <param name="name">标签名(30个字符以内)</param> /// <returns></returns> public TagJson CreateTag(string accessToken, string name) { var url = string.Format("https://api.weixin.qq.com/cgi-bin/tags/create?access_token={0}", accessToken); var data = new { tag = new { name = name } }; var postData = data.ToJson(); var result = JsonHelper<TagCreateResult>.ConvertJson(url, postData); return result != null ? result.tag : null; }
2) Rufen Sie die vom offiziellen Konto erstellten Tags ab
Anleitung zur Anforderung von Schnittstellenaufrufen
HTTP-Anforderungsmethode: GET (bitte verwenden Sie das https-Protokoll)
https://api.weixin.qq.com/cgi-bin/tags/get?access_token=ACCESS_TOKEN
Rückgabedatenformat: JSON Beispiel für zurückgegebene Daten:
{ "tags":[{ "id":1, "name":"黑名单", "count":0 //此标签下粉丝数 },{ "id":2, "name":"星标组", "count":0 },{ "id":127, "name":"广东", "count":5 } ] }
Auf diese Weise können wir seinen Rückgabewert als List
/// <summary> /// 标签信息和统计数量 /// </summary> public class TagCountJson : TagJson { /// <summary> /// 此标签下粉丝数 /// </summary> public int count { get; set; } }
Auf diese Weise können wir die entsprechenden Daten durch JSON-Analyse zurückgeben. Die zugehörigen Vorgänge ähneln der obigen Schnittstelle und werden nicht im Detail beschrieben.
Weitere Artikel zur Tag-Verwaltungsfunktion für öffentliche WeChat-Konten, die von C# WeChat entwickelt wurde, finden Sie auf der chinesischen PHP-Website!