


Entwicklung der Nachrichtenschnittstelle der ?ffentlichen WeChat-Plattform vom Hello2BizUser-Text bis zum Abonnementereignis
Mar 04, 2017 pm 02:49 PM1. Verarbeitung des alten Hello2BizUser-Ereignisses
Nachdem der Benutzer dem ?ffentlichen WeChat-Plattformkonto folgt, hilft das System dem Benutzer, einen Text von Hello2BizUser zu senden zum ?ffentlichen Konto Im Hintergrundentwicklungsmodus des ?ffentlichen Kontos wird die Willkommensnachricht durch Beurteilen des Wortes Hello2BizUser gesendet.
Das Codebeispiel lautet wie folgt:
if ($keyword == "Hello2BizUser"){ $contentStr = "PHP中文網(wǎng)"; $resultStr = $this->transmitText($object, $contentStr, $funcFlag); return $resultStr; }
?nderungen an der Basisschnittstelle wirken sich auf alle aus. Im Allgemeinen sind solche ?nderungen nicht einfach durchzuführen.
Warum m?chte WeChat dieses Ereignis ?ndern? Der Nachteil dieser Methode besteht darin, dass es keine Willkommensnachricht gibt Die Willkommensnachricht hat keinen Einfluss darauf. Aber in den Programmcodes vieler Leute basieren alle Prozesse direkt auf der Beurteilung von Schlüsselw?rtern. Wir haben zum Beispiel das WeChat-Konto eines Krankenhauses gesehen. Wenn der Benutzer die Registrierungsnummer sendet, wird angezeigt, wie viele Personen davor stehen. Das Hintergrundprogramm macht jedoch keine Unterscheidung und sendet Hello2BizUser als Registrierungsauftrag . Die Registrierungsnummer Hello2BizUser wurde nicht gefunden. Ich wei? nicht, wie viele Personen sich vor mir befinden, was die Benutzer verwirrt. Wenn der Benutzer au?erdem die Initiative ergreift, einen Hello2BizUser zu senden, erh?lt er denselben Inhalt wie die Willkommensnachricht, obwohl nur wenige Benutzer diese Nachricht senden.
Andererseits ist die Umwandlung der Benutzeraufmerksamkeit in Ereignisse f?rderlicher für die Realisierung statistischer Funktionen. Mithilfe dieses Ereignisses k?nnen wir die Anzahl der Follower und Abmelder einfacher ermitteln. Die ursprüngliche Text-Push-Ermittlung von Hello2BizUser ist jedoch m?glicherweise ungenau, da Benutzer sie manuell senden k?nnen, wodurch falsche Follow-Statistiken entstehen.
2. ?Abonnieren“-Ereignisbeurteilung
Abonnieren ist ein neues Ereignis, das wir hinzufügen Beurteilen Sie dieses Ereignis im offiziellen Beispiel und ?ndern Sie es wie folgt:
$postObj = simplexml_load_string($postStr, 'SimpleXMLElement', LIBXML_NOCDATA); $RX_TYPE = trim($postObj->MsgType); switch ($RX_TYPE) { case "text": $resultStr = $this->receiveText($postObj); break; case "event": $resultStr = $this->receiveEvent($postObj); break; default: $resultStr = "unknow msg type: ".$RX_TYPE; break; }
Beurteilen Sie dann das Abonnementereignis in der Ereignisempfangsverarbeitungsfunktion:
private function receiveEvent($object) { $contentStr = ""; switch ($object->Event) { case "subscribe": $contentStr = "您好,歡迎關(guān)注方倍工作室。新感覺(jué),新體驗(yàn)!"; break; } $resultStr = $this->transmitText($object, $contentStr); return $resultStr; }
Damit ist die Verarbeitung des Abonnementereignisses ?Abonnieren“ abgeschlossen.
2. Vollst?ndiger Code
<?php define("TOKEN", "方倍工作室"); $wechatObj = new wechatCallbackapiTest(); $wechatObj->responseMsg(); class wechatCallbackapiTest { public function responseMsg() { $postStr = $GLOBALS["HTTP_RAW_POST_DATA"]; if (!empty($postStr)){ $postObj = simplexml_load_string($postStr, 'SimpleXMLElement', LIBXML_NOCDATA); $RX_TYPE = trim($postObj->MsgType); switch ($RX_TYPE) { case "text": $resultStr = $this->receiveText($postObj); break; case "event": $resultStr = $this->receiveEvent($postObj); break; default: $resultStr = "unknow msg type: ".$RX_TYPE; break; } echo $resultStr; }else { echo ""; exit; } } private function receiveText($object) { $funcFlag = 0; $keyword = trim($object->Content); $resultStr = ""; $cityArray = array(); $contentStr = ""; $needArray = false; $illegal = false; $saytome = false; if ($keyword == "Hello2BizUser"){ $contentStr = "歡迎關(guān)注方倍工作室,這其實(shí)是老的歡迎詞,你關(guān)注時(shí)收不到了"; $resultStr = $this->transmitText($object, $contentStr, $funcFlag); return $resultStr; }else { } } private function receiveEvent($object) { $contentStr = ""; switch ($object->Event) { case "subscribe": $contentStr = "您好,歡迎關(guān)注方倍工作室。新感覺(jué),新體驗(yàn)!"; break; } $resultStr = $this->transmitText($object, $contentStr); return $resultStr; } private function transmitText($object, $content, $flag = 0) { $textTpl = "<xml> <ToUserName><![CDATA[%s]]></ToUserName> <FromUserName><![CDATA[%s]]></FromUserName> <CreateTime>%s</CreateTime> <MsgType><![CDATA[text]]></MsgType> <Content><![CDATA[%s]]></Content> <FuncFlag>%d</FuncFlag> </xml>"; $resultStr = sprintf($textTpl, $object->FromUserName, $object->ToUserName, time(), $content, $flag); return $resultStr; } } ?>
Weitere Nachrichtenschnittstellen für die ?ffentliche WeChat-Plattform werden entwickelt Von Hello2BizUser Text zum Abonnieren der Veranstaltung beachten Sie bitte die chinesische PHP-Website!

Hei?e KI -Werkzeuge

Undress AI Tool
Ausziehbilder kostenlos

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

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

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)