


Detaillierte Beispiele für WeChat-Roboterentwicklungs-Tutorials
Tutorial zur Entwicklung öffentlicher WeChat-Plattformen (4) Erste Schritte mit Beispielen: Roboter (mit Quellcode)
Im vorherigen Artikel habe ich das Grundgerüst geschrieben. Hier ist ein einfaches Beispiel Um es zu veranschaulichen, hoffe ich, dass es Ihnen helfen kann, das Rätsel zu lösen.
1. Funktionseinführung
Realisieren Sie die Online-Kundenservice-Roboterfunktion über die öffentliche WeChat-Plattform. Zu den Hauptfunktionen gehören: einfache Konversation, Wetterabfrage und andere Dienste.
Hier stellen wir nur relativ einfache Funktionen zur Verfügung und konzentrieren uns auf die Verwendung dieses Beispiels, um den spezifischen Entwicklungsprozess der öffentlichen Plattform zu veranschaulichen. Es handelt sich lediglich um eine einfache DEMO und kann auf dieser Basis bei Bedarf erweitert werden.
Selbstverständlich werden wir in Zukunft komplexere Anwendungsbeispiele veröffentlichen.
2. Spezifische Implementierung
1. Bereitstellung des Zugriffs auf die Schnittstelle
Ich werde hier nicht auf Details eingehen. Tutorial zur Entwicklung eines öffentlichen WeChat-Kontos (Teil 2) ) Grundlegender Framework-Aufbau
www.cnblogs.com/yank/p/3392394.html
2. Signaturauthentifizierung und -verteilungsanforderung
Ich habe gewonnen Wenn Sie hier nicht auf Details eingehen, lesen Sie das vorherige Kapitel, Tutorial zur Entwicklung eines öffentlichen WeChat-Kontos (2) Grundlegender Framework-Aufbau
class EventHandler : IHandler { /// <summary> /// 请求的xml /// </summary> private string RequestXml { get; set; } /// <summary> /// 构造函数 /// </summary> /// <param name="requestXml"></param> public EventHandler(string requestXml) { this.RequestXml = requestXml; } /// <summary> /// 处理请求 /// </summary> /// <returns></returns> public string HandleRequest() { string response = string.Empty; EventMessage em = EventMessage.LoadFromXml(RequestXml); if (em.Event.Equals("subscribe",StringComparison.OrdinalIgnoreCase)) { //回复欢迎消息 TextMessage tm = new TextMessage(); tm.ToUserName = em.FromUserName; tm.FromUserName = em.ToUserName; tm.CreateTime = Common.GetNowTime(); tm.Content = "欢迎您关注***,我是大哥大,有事就问我,呵呵!\n\n"; response = tm.GenerateContent(); } return response; } }
WeChat ist ursprünglich eine Plattform zur Kommunikation. Dieser Fall kann für Online-Serviceroboter verwendet werden, ähnlich den Kundendienstrobotern von Taobao, bei uns handelt es sich jedoch um die WeChat-Version. Haha
Eigentlich ist es ganz einfach: Rufen Sie die Anfragenachricht ab und ordnen Sie die Antwort anhand der Schlüsselwörter zu. Natürlich gibt es hier möglicherweise noch viel zu tun, z. B. wie intelligentes Matching unterstützt wird, wie Fuzzy-Matching unterstützt wird usw.
/// <summary> /// 文本信息处理类 /// </summary> public class TextHandler : IHandler { /// <summary> /// 请求的XML /// </summary> private string RequestXml { get; set; } /// <summary> /// 构造函数 /// </summary> /// <param name="requestXml">请求的xml</param> public TextHandler(string requestXml) { this.RequestXml = requestXml; } /// <summary> /// 处理请求 /// </summary> /// <returns></returns> public string HandleRequest() { string response = string.Empty; TextMessage tm = TextMessage.LoadFromXml(RequestXml); string content = tm.Content.Trim(); if (string.IsNullOrEmpty(content)) { response = "您什么都没输入,没法帮您啊,%>_<%。"; } else { if (content.StartsWith("tq", StringComparison.OrdinalIgnoreCase)) { string cityName = content.Substring(2).Trim(); response = WeatherHelper.GetWeather(cityName); } else { response = HandleOther(content); } } tm.Content = response; //进行发送者、接收者转换 string temp = tm.ToUserName; tm.ToUserName = tm.FromUserName; tm.FromUserName = temp; response = tm.GenerateContent(); return response; } /// <summary> /// 处理其他消息 /// </summary> /// <param name="tm"></param> /// <returns></returns> private string HandleOther(string requestContent) { string response = string.Empty; if (requestContent.Contains("你好") || requestContent.Contains("您好")) { response = "您也好~"; } else if (requestContent.Contains("傻")) { response = "我不傻!哼~ "; } else if (requestContent.Contains("逼") || requestContent.Contains("操")) { response = "哼,你说脏话! "; } else if (requestContent.Contains("是谁")) { response = "我是大哥大,有什么能帮您的吗?~"; } else if (requestContent.Contains("再见")) { response = "再见!"; } else if (requestContent.Contains("bye")) { response = "Bye!"; } else if (requestContent.Contains("谢谢")) { response = "不客气!嘿嘿"; } else if (requestContent == "h" || requestContent == "H" || requestContent.Contains("帮助")) { response = @"查询天气,输入tq 城市名称\拼音\首字母"; } else { response = "您说的,可惜,我没明白啊,试试其他关键字吧。"; } return response; } }
SMS-Verarbeitung nutzen. Benutzeranfrage, geben Sie einfach Folgendes ein: tq Stadtname/Pinyin/Anfangsbuchstabe, um die Nachricht zu erhalten.
北京 2013年11月6日 星期三 今天:(17℃~4℃)晴北风4-5级转3-4级4-5级转3-4级 24小时穿衣指数:天气冷,建议着棉服、羽绒服、皮夹克加羊毛衫等冬季服装。年老体弱者宜着厚棉衣、冬大衣或厚羽绒服。 明天:(14℃~3℃)晴转多云微风小于3级 48小时穿衣指数:天气冷,建议着棉服、羽绒服、皮夹克加羊毛衫等冬季服装。年老体弱者宜着厚棉衣、冬大衣或厚羽绒服。
Werfen wir einen Blick auf den Quellcode:
class WeatherHelper { /// <summary> /// 城市集合字段 /// </summary> private static Dictionary<string, City> mCities; /// <summary> /// 城市集合 /// </summary> public static Dictionary<string, City> Cities { get { if (mCities == null) { LoadCities(); } return mCities; } } /// <summary> /// 加载城市 /// </summary> private static void LoadCities() { mCities = new Dictionary<string, City>(); mCities.Clear(); mCities.Add("101010100", new City() { Code = "101010100", Name = "北京", PinYin = "beijing", FristLetter = "bj" }); mCities.Add("101020100", new City() { Code = "101020100", Name = "上海", PinYin = "shanghai", FristLetter = "sh" }); mCities.Add("101200101", new City() { Code = "101200101", Name = "武汉", PinYin = "wuhai", FristLetter = "wh" }); } /// <summary> /// 获取城市的天气 /// </summary> /// <param name="name">城市名称、拼音或首字母</param> /// <returns></returns> public static string GetWeather(string name) { string result = string.Empty; string cityCode = string.Empty; //获取城市编码 IEnumerable<string> codes = from item in Cities where item.Value != null && (item.Value.Name.Equals(name, StringComparison.OrdinalIgnoreCase) || item.Value.PinYin.Equals(name, StringComparison.OrdinalIgnoreCase) || item.Value.FristLetter.Equals(name, StringComparison.OrdinalIgnoreCase)) select item.Value.Code; if (codes != null && codes.Count() > 0) { cityCode = codes.First<string>(); } //http请求,获取天气 if (!string.IsNullOrEmpty(cityCode)) { string url = "http://m.weather.com.cn/data/{0}.html"; url = string.Format(url, cityCode); WebRequest request = HttpWebRequest.Create(url); //超时时间为:2秒 request.Timeout = 2000; request.Credentials = CredentialCache.DefaultCredentials; WebResponse response = request.GetResponse(); StreamReader reader = new StreamReader(response.GetResponseStream(), Encoding.UTF8); string weahterInfo = reader.ReadToEnd(); if (string.IsNullOrEmpty(weahterInfo)) { result = "暂时没有取到天气数据,请稍后再试"; } else { XmlDocument doc = JsonConvert.DeserializeXmlNode(weahterInfo); if (doc != null) { XmlNode node = doc.DocumentElement; if (node != null) { StringBuilder builder = new StringBuilder(); builder.Append(node["city"].InnerText).Append("\n"); builder.Append(node["date_y"].InnerText).Append(" ").Append(node["week"].InnerText).Append("\n"); builder.Append("今天:").Append("(").Append(node["temp1"].InnerText).Append(")").Append(node["weather1"].InnerText).Append(node["wind1"].InnerText).Append(node["fl1"].InnerText).Append("\n"); builder.Append("24小时穿衣指数:").Append(node["index_d"].InnerText).Append("\n"); builder.Append("明天:").Append("(").Append(node["temp2"].InnerText).Append(")").Append(node["weather2"].InnerText).Append(node["wind2"].InnerText).Append(node["fl2"].InnerText).Append("\n"); builder.Append("48小时穿衣指数:").Append(node["index48_d"].InnerText).Append("\n"); result = builder.ToString(); } } #region 天气json数据格式 /* { "weatherinfo": { "city": "北京", "city_en": "beijing", "date_y": "2013年11月4日", "date": "", "week": "星期一", "fchh": "11", "cityid": "101010100", "temp1": "17℃~5℃", "temp2": "16℃~5℃", "temp3": "18℃~4℃", "temp4": "17℃~5℃", "temp5": "14℃~6℃", "temp6": "14℃~2℃", "tempF1": "62.6℉~41℉", "tempF2": "60.8℉~41℉", "tempF3": "64.4℉~39.2℉", "tempF4": "62.6℉~41℉", "tempF5": "57.2℉~42.8℉", "tempF6": "57.2℉~35.6℉", "weather1": "晴转多云", "weather2": "多云", "weather3": "多云转晴", "weather4": "晴转多云", "weather5": "多云转阴", "weather6": "阴转晴", "img1": "0", "img2": "1", "img3": "1", "img4": "99", "img5": "1", "img6": "0", "img7": "0", "img8": "1", "img9": "1", "img10": "2", "img11": "2", "img12": "0", "img_single": "0", "img_title1": "晴", "img_title2": "多云", "img_title3": "多云", "img_title4": "多云", "img_title5": "多云", "img_title6": "晴", "img_title7": "晴", "img_title8": "多云", "img_title9": "多云", "img_title10": "阴", "img_title11": "阴", "img_title12": "晴", "img_title_single": "晴", "wind1": "微风", "wind2": "微风", "wind3": "微风", "wind4": "微风", "wind5": "微风", "wind6": "北风4-5级", "fx1": "微风", "fx2": "微风", "fl1": "小于3级", "fl2": "小于3级", "fl3": "小于3级", "fl4": "小于3级", "fl5": "小于3级", "fl6": "4-5级", "index": "较冷", "index_d": "建议着大衣、呢外套加毛衣、卫衣等服装。体弱者宜着厚外套、厚毛衣。因昼夜温差较大,注意增减衣服。", "index48": "冷", "index48_d": "天气冷,建议着棉服、羽绒服、皮夹克加羊毛衫等冬季服装。年老体弱者宜着厚棉衣、冬大衣或厚羽绒服。", "index_uv": "中等", "index48_uv": "弱", "index_xc": "适宜", "index_tr": "适宜", "index_co": "舒适", "st1": "17", "st2": "5", "st3": "17", "st4": "5", "st5": "18", "st6": "6", "index_cl": "适宜", "index_ls": "适宜", "index_ag": "极不易发" } } */ #endregion } } else { result = "没有获取到该城市的天气,请确定输入了正确的城市名称,如\'北京\'或者\'beijing\'或者\'bj\'"; } //返回 return result; } /// <summary> /// 内部类:城市 /// </summary> internal class City { /// <summary> /// 编码 /// </summary> public string Code { get; set; } /// <summary> /// 名称 /// </summary> public string Name { get; set; } /// <summary> /// 拼音 /// </summary> public string PinYin { get; set; } /// <summary> /// 拼音首字母 /// </summary> public string FristLetter { get; set; } } }
Quellcode der WeChat-Plattform herunterladen
2.Quellcode des Alizi-Bestellsystems
Das obige ist der detaillierte Inhalt vonDetaillierte Beispiele für WeChat-Roboterentwicklungs-Tutorials. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen





Der humanoide Roboter Ameca wurde auf die zweite Generation aufgerüstet! Kürzlich erschien auf der World Mobile Communications Conference MWC2024 erneut der weltweit fortschrittlichste Roboter Ameca. Rund um den Veranstaltungsort lockte Ameca zahlreiche Zuschauer an. Mit dem Segen von GPT-4 kann Ameca in Echtzeit auf verschiedene Probleme reagieren. „Lass uns tanzen.“ Auf die Frage, ob sie Gefühle habe, antwortete Ameca mit einer Reihe von Gesichtsausdrücken, die sehr lebensecht aussahen. Erst vor wenigen Tagen stellte EngineeredArts, das britische Robotikunternehmen hinter Ameca, die neuesten Entwicklungsergebnisse des Teams vor. Im Video verfügt der Roboter Ameca über visuelle Fähigkeiten und kann den gesamten Raum und bestimmte Objekte sehen und beschreiben. Das Erstaunlichste ist, dass sie es auch kann

Herausgeber des Machine Power Report: Wu Xin Die heimische Version des humanoiden Roboters + eines großen Modellteams hat zum ersten Mal die Betriebsaufgabe komplexer flexibler Materialien wie das Falten von Kleidung abgeschlossen. Mit der Enthüllung von Figure01, das das multimodale große Modell von OpenAI integriert, haben die damit verbundenen Fortschritte inländischer Kollegen Aufmerksamkeit erregt. Erst gestern veröffentlichte UBTECH, Chinas „größter Bestand an humanoiden Robotern“, die erste Demo des humanoiden Roboters WalkerS, der tief in das große Modell von Baidu Wenxin integriert ist und einige interessante neue Funktionen aufweist. Jetzt sieht WalkerS, gesegnet mit Baidu Wenxins großen Modellfähigkeiten, so aus. Wie Figure01 bewegt sich WalkerS nicht umher, sondern steht hinter einem Schreibtisch, um eine Reihe von Aufgaben zu erledigen. Es kann menschlichen Befehlen folgen und Kleidung falten

Im Bereich der industriellen Automatisierungstechnik gibt es zwei aktuelle Hotspots, die kaum zu ignorieren sind: Künstliche Intelligenz (KI) und Nvidia. Ändern Sie nicht die Bedeutung des ursprünglichen Inhalts, optimieren Sie den Inhalt, schreiben Sie den Inhalt neu, fahren Sie nicht fort: „Darüber hinaus sind beide eng miteinander verbunden, da Nvidia nicht auf seine ursprüngliche Grafikverarbeitungseinheit (GPU) beschränkt ist ) erweitert es seine GPU. Die Technologie erstreckt sich auf den Bereich der digitalen Zwillinge und ist eng mit neuen KI-Technologien verbunden. „Vor kurzem hat NVIDIA eine Zusammenarbeit mit vielen Industrieunternehmen geschlossen, darunter führende Industrieautomatisierungsunternehmen wie Aveva, Rockwell Automation und Siemens und Schneider Electric sowie Teradyne Robotics und seine Unternehmen MiR und Universal Robots. Kürzlich hat Nvidia gesammelt

Diese Woche gab FigureAI, ein Robotikunternehmen, an dem OpenAI, Microsoft, Bezos und Nvidia beteiligt sind, bekannt, dass es fast 700 Millionen US-Dollar an Finanzmitteln erhalten hat und plant, im nächsten Jahr einen humanoiden Roboter zu entwickeln, der selbstständig gehen kann. Und Teslas Optimus Prime hat immer wieder gute Nachrichten erhalten. Niemand zweifelt daran, dass dieses Jahr das Jahr sein wird, in dem humanoide Roboter explodieren. SanctuaryAI, ein in Kanada ansässiges Robotikunternehmen, hat kürzlich einen neuen humanoiden Roboter auf den Markt gebracht: Phoenix. Beamte behaupten, dass es viele Aufgaben autonom und mit der gleichen Geschwindigkeit wie Menschen erledigen kann. Pheonix, der weltweit erste Roboter, der Aufgaben autonom in menschlicher Geschwindigkeit erledigen kann, kann jedes Objekt sanft greifen, bewegen und elegant auf der linken und rechten Seite platzieren. Es kann Objekte autonom identifizieren

Kehr- und Wischroboter gehören in den letzten Jahren zu den beliebtesten Smart-Home-Geräten bei Verbrauchern. Die damit verbundene Bequemlichkeit der Bedienung oder sogar die Notwendigkeit einer Bedienung ermöglicht es faulen Menschen, ihre Hände frei zu haben, was es den Verbrauchern ermöglicht, sich von der täglichen Hausarbeit zu „befreien“ und mehr Zeit mit den Dingen zu verbringen, die sie in getarnter Form genießen. Aufgrund dieser Begeisterung stellen fast alle Haushaltsgerätemarken auf dem Markt ihre eigenen Kehr- und Wischroboter her, was den gesamten Markt für Kehr- und Wischroboter sehr lebendig macht. Allerdings wird die schnelle Expansion des Marktes unweigerlich eine versteckte Gefahr mit sich bringen: Viele Hersteller werden die Taktik des Maschinenmeeres nutzen, um schnell mehr Marktanteile zu erobern, was zu vielen neuen Produkten ohne Upgrade-Punkte führen wird Es handelt sich um „Matroschka“-Modelle. Keine Übertreibung. Allerdings sind das nicht alle Kehr- und Wischroboter

Roboter haben im Handumdrehen gelernt, zu zaubern? Es war zu sehen, dass es zuerst den Wasserlöffel auf dem Tisch aufhob und damit dem Publikum bewies, dass nichts darin war ... Dann nahm es den eiähnlichen Gegenstand in seine Hand und stellte den Wasserlöffel zurück auf den Tisch und begann „einen Zauber zu wirken“... …Gerade als es den Wasserlöffel wieder aufhob, geschah ein Wunder. Das ursprünglich hineingelegte Ei verschwand und das Ding, das heraussprang, verwandelte sich in einen Basketball ... Schauen wir uns noch einmal die fortlaufenden Aktionen an: △ Diese Animation zeigt eine Reihe von Aktionen mit doppelter Geschwindigkeit und läuft nur durch Zuschauen reibungslos ab Das Video kann wiederholt mit 0,5-facher Geschwindigkeit verstanden werden. Schließlich habe ich die Hinweise entdeckt: Wenn meine Handgeschwindigkeit schneller wäre, könnte ich es möglicherweise vor dem Feind verbergen. Einige Internetnutzer beklagten, dass die magischen Fähigkeiten des Roboters sogar noch höher seien als ihre eigenen: Mag war derjenige, der diese Magie für uns ausgeführt hat.

Die folgenden 10 humanoiden Roboter prägen unsere Zukunft: 1. ASIMO: ASIMO wurde von Honda entwickelt und ist einer der bekanntesten humanoiden Roboter. Mit einer Höhe von 1,20 m und einem Gewicht von 50 kg ist ASIMO mit fortschrittlichen Sensoren und künstlichen Intelligenzfunktionen ausgestattet, die es ihm ermöglichen, sich in komplexen Umgebungen zurechtzufinden und mit Menschen zu interagieren. Aufgrund seiner Vielseitigkeit eignet sich ASIMO für eine Vielzahl von Aufgaben, von der Unterstützung von Menschen mit Behinderungen bis hin zur Durchführung von Präsentationen bei Veranstaltungen. 2. Pepper: Pepper wurde von Softbank Robotics entwickelt und möchte ein sozialer Begleiter für Menschen sein. Mit seinem ausdrucksstarken Gesicht und der Fähigkeit, Emotionen zu erkennen, kann Pepper an Gesprächen teilnehmen, im Einzelhandel helfen und sogar pädagogische Unterstützung leisten. Pfeffer

„The Legend of Zelda: Tears of the Kingdom“ wurde zum am schnellsten verkauften Nintendo-Spiel der Geschichte. Zonav Technology brachte nicht nur verschiedene „Zelda Creator“-Community-Inhalte mit, sondern wurde auch zum neuen Ingenieurstudiengang der Vereinigten Staaten von Maryland (UMD). Rewrite: The Legend of Zelda: Tears of the Kingdom ist eines der am schnellsten verkauften Spiele von Nintendo aller Zeiten. Zonav Technology bietet nicht nur umfangreiche Community-Inhalte, sondern ist auch Teil des neuen Ingenieurstudiengangs an der University of Maryland. In diesem Herbst eröffnete Associate Professor Ryan D. Sochol von der University of Maryland einen Kurs mit dem Titel „.
