SAP系統和微信集成的系列教程之二:如何通過微信公眾號消費API

2020-12-15 汪子熙的編程和遊泳

(4) 如何將SAP C4C主數據變化推送給微信公眾號

(5) 如何將SAP UI5應用嵌入到微信公眾號菜單中

(6) 如何通過OAuth2獲取微信用戶信息並顯示在SAP UI5應用中

(7) 使用Redis存儲微信用戶和公眾號的對話記錄

(8) 微信公眾號的地圖集成

(9) 如何將微信用戶發送到微信公眾號的消息保存到SAP C4C系統

(10) 如何在SAP C4C系統直接回復消息給微信公眾號的訂閱者

最近有不少朋友在微信上向我諮詢SAP系統和微信公眾號集成的問題,因此我把當時寫的英文版翻譯成中文,重新發布在我的公眾號上。

需要注意的是,時隔三年,微信公眾號的開發流程可能有所變化,請大家自行鑑別。和微信公眾號集成的系統,我三年前選擇的是SAP Cloud for Customer.

始終牢記我們這個系列的目標是學會如何用微信公眾號同SAP系統(SAP Cloud for Customer,以下簡稱C4C)集成。要實現這個目標,就得通過微信公眾號消費SAP C4C的OData API.

作為學習的第一步,我們首先學習如何在微信公眾號調用普通的API,而非SAP C4C OData API.

假設這樣一個簡單的場景:用戶關注微信公眾號之後,通過微信app給公眾號發送一些文字信息。公眾號收到這些文字信息,會轉發給我們在本系列第一篇文章 微信開發環境的搭建 裡提到的微信消息伺服器。此時微信消息伺服器接收到轉發過來的文字信息後,調用一些具有人工智慧的API,將API的響應通過微信app回復給用戶。

綁定了微信消息伺服器的微信公眾號,在這個場景裡扮演的其實就是一個簡單的聊天機器人的角色。用戶和微信公眾號通過一問一答的方式進行交互。

Jerry還記得上大學的時候,學習《Unix網絡編程》這門專業課,一個練習就是,通過套接字自行實現一對客戶端和伺服器,客戶端發送一個字符串給伺服器,伺服器接收後原封不動地將其返回,即所謂的Echo Server.

在動手實現微信聊天機器人之前,我們先降低難度,實現一個簡單的微信echo服務,即無論用戶發送任何信息給公眾號,都會收到信息本身,再加上"Add by Jerry"的前綴。

本文用到的項目完整原始碼,在我的Github能夠下載。

https://github.com/wangzixi-diablo/wechat-sap-integration

首先在server.js裡,利用nodejs express庫啟動一個web伺服器:

上圖第二行routesEngine的實現,位於index.js裡。微信app收到用戶通過微信app發送的文本消息時,會通過一個HTTP POST請求轉發給微信消息伺服器。微信消息伺服器接收到該請求後,調用第五行的echoService處理:

echoService的實現位於文件echo.js中:首先從變量req包含的HTTP請求中,將用戶輸入的文本信息解析出來(第11行),然後加上"Add by Jerry: "的前綴,並將結果存儲在變量content裡(第13行), 最後調用自己開發的工具方法replyMessage,將加上前綴的文本信息返回給用戶。

上圖第15行的replyMessage工具方法,需要從微信app轉發給微信消息伺服器的HTTP POST請求裡, 解析出發送消息的微信用戶id,然後再將拼接了"Add by Jerry: "前綴的內容發送給該id標識的微信用戶。

replyMessage的實現位於replyMessage.js中:

https://github.com/wangzixi-diablo/wechat-sap-integration/blob/main/jerryapp/tool/replyMessage.js

有了Echo Service的實現經驗之後,再實現微信聊天機器人就沒有什麼難度了。

只需要把index.js裡接收到HTTP Post請求之後的操作,從調用echoService改成調用新的實現,tuningService即可。

調用圖靈API的tuningService函數的實現原始碼:

https://github.com/wangzixi-diablo/wechat-sap-integration/blob/main/jerryapp/service/tuning.js

我2017年的時候使用的圖靈API是如下網站提供的:

http://www.tulin123.com/

申請一個API key, 粘貼到下圖第6行的url裡:

將用戶輸入的文本信息解析出來,存儲到第20行的body變量裡,使用encodeURI處理之後,直接拼接到圖靈API url尾部,然後第27行使用request函數調用圖靈API. 在匿名回調函數裡獲得API的響應,最後調用工具方法replyMessage將響應通過微信消息伺服器發送給微信app.

本系列的下一篇文章,我們會真正開始和SAP系統的集成:每當新的微信用戶關注微信公眾號時,我們會自動為該微信用戶在SAP C4C系統創建一個客戶主數據

感謝閱讀。

本系列的其他文章

(1) 微信開發環境的搭建

(2) 如何通過微信公眾號消費API(本文)

(3) 微信用戶關注公眾號之後,自動在SAP C4C系統創建客戶主數據

(4) 如何將SAP C4C主數據變化推送給微信公眾號

(5) 如何將SAP UI5應用嵌入到微信公眾號菜單中

(6) 如何通過OAuth2獲取微信用戶信息並顯示在SAP UI5應用中

(7) 使用Redis存儲微信用戶和公眾號的對話記錄

(8) 微信公眾號的地圖集成

(9) 如何將微信用戶發送到微信公眾號的消息保存到SAP C4C系統

(10) 如何在SAP C4C系統直接回復消息給微信公眾號的訂閱者

相關焦點

  • SAP系統和微信集成的系列教程之一:微信開發環境的搭建
    本系列的英文版Jerry寫作於2017年,這個教程總共包含十篇文章,發表在SAP社區上:https://blogs.sap.com/2017/12/10/wechat-development-series-1-setup-your-development-environment/
  • 如何查看別人的微信公眾號粉絲數量?預估微信訂閱號粉絲方法
    相信使用微信的朋友一定有關注一些微信公眾號,有些公眾號的內容還是不錯的,人氣也很高。系統迷記得上次剛給大家分享過微信訂閱號的消息展示又要改版,具體詳見對於微信公眾號,作為用戶的我們是無法直接看到某個公眾號的粉絲數量的。不像微博一樣,可以看到對方的粉絲數量。那要是有些小夥伴心裡痒痒想知道自己關注的公眾號有多少粉絲該怎麼辦呢?或者是同行想看對手公眾號的發展情況,該如何做呢?所以系統迷這次就圍繞著這一點,給大家分享下查看別人的微信公眾號粉絲數量的方法。
  • 微信公眾號排版實戰教程03
    微信公眾號排版實戰教程第三篇來了,希望能幫到各位熱愛公眾號文章編輯的微信君,請大家多多支持!!!一個沒有態度的微信君在編輯文本段落時,可能是直接複製的文本,也有可能是鍵盤直接敲打出來的文本。如果你能在段首敲打2個空格(輸入法全形狀態),你可以實現首行縮進。
  • 餐飲如何做好微信公眾號推廣?
    餐飲企業如何做好微信公眾號推廣,那麼首先我們要想清楚一件事,我們為什麼做公眾號,我們想要通過公眾號給用戶提供怎樣的服務或者說是便捷;我們必須要了解微信公眾為我們做什麼接著是思考我們的微信公眾號是餐飲公司自己運營還是找企業代運營,這個是一個很核心的思考問題!
  • 怎樣整理分類微信公眾號圖片素材?詳見操作教程
    本文介紹了微信公眾號整理分類圖片素材的操作教程,還不會操作的朋友們就跟著小編一起去看一看下文,希望能夠幫助到大家。微信系列軟體最新版本下載微信電腦版軟體版本:2.6.2.67 官方版網絡工具立即查看微信軟體版本:6.6.6Android軟體立即查看一、設置分組1、登陸微信公眾號,輸入帳號密碼點擊登陸,然後跳轉到微信公眾號的安全保護頁面,提示需要運營者或者管理員掃碼後方能登陸微信,如果是使用非運營者或管理員微信掃碼
  • 微信公眾號客服系統怎麼接入?在線客服系統使用教程!
    對於企業而言,微信公眾號在用戶獲取和服務方面發揮著重大作用,那麼有沒有好用的公眾號運營工具來輔助粉絲運營呢,不僅僅解決溝通而已,還承擔著私域流量,後續轉化等。公眾號怎麼接入客服系統?哪些亮點功能提示運營/服務效率?
  • 微信公眾號商城系統有哪些功能價值?
    微信擁有其他平臺無可匹敵的用戶流量,能為商家帶來更多的發展機遇。深圳兆信微信公眾號商城系統能為商家打造一體化移動電商平臺,提升企業的盈利能力和運營效率。微信公眾號商城系統是基於微信公眾平臺,集商品管理、會員管理、門店管理和訂單管理與一體的一定電商管理平臺,能夠為企業提供高效的盈利解決方案,實現商城的輕鬆運營管理。
  • 如何通過線上營銷渠道推廣微信公眾號?
    2012年,微信公眾號誕生,到目前為止,已經積累了大量的用戶。 許多企業都看到了公眾中隱藏的巨大商機,紛紛開始了公眾號運營。想要獲得流量紅利,這就需要使用適當的營銷方法來實現推廣的效果。今天,小編就給大家分享一下,如何通過線上營銷渠道推廣微信公眾號。1.知識社區在一些知識分享社區,可以通過發布文章或者發布一些與公眾號相關的問答以引起論壇用戶的興趣,來獲得一定的引流效果。
  • 微信公眾號格子底紋背景設置教程
    很多有名的公眾號都非常喜歡使用格子底紋背景進行排版,看上去就給人一種乾淨小清新的感覺,有一種文藝範兒。在此背景上,只要進行簡單的樣式排版,就會很完美了。那麼這樣的格子底紋背景該如何使用呢?下面就為大家帶來微信公眾號格子底紋背景設置教程,一起來看吧。
  • 怎麼使用微信會員卡管理系統製作微信卡券+教程
    如果能把微信會員卡和優惠券結合做營銷,帶來的流量是驚人的,下面我將告訴大家如果通過第三方平臺製作微信會員卡和優惠券。本教程包含六個部分1,微信普通會員卡製作2,微信會員卡次卡製作3,微信會員卡時長卡製作4,微信優惠券製作(含代金券,折扣券,團購券,禮品券,優惠券,入場券)5,微信卡券如何接入微信小程序
  • 怎麼使用微信會員卡管理系統製作微信卡券+教程
    如果能把微信會員卡和優惠券結合做營銷,帶來的流量是驚人的,下面我將告訴大家如果通過第三方平臺製作微信會員卡和優惠券。本教程包含六個部分1,微信普通會員卡製作2,微信會員卡次卡製作3,微信會員卡時長卡製作4,微信優惠券製作(含代金券,折扣券,團購券,禮品券,優惠券,入場券)5,微信卡券如何接入微信小程序
  • 健康微信公眾號哪家強,「上海十大健康微信公眾號」揭曉
    如今,各類健康微信公眾號已成為市民獲取健康科普知識和醫院便民服務的主渠道。
  • 微信親屬卡怎麼贈送 詳解微信親屬卡開通教程
    剛才小編為大家已經介紹了微信親屬卡是用戶可以通過在微信上給子女、父母等開通或贈送親屬卡,對方消費時由你代付。在使用親屬卡消費時,消費資金將自動從代付方的支付帳戶扣除,代付方可以給親屬卡設置每個月的消費額度上限,每月自動延續,除非手動設置關閉。那麼微信親屬卡怎麼贈送,意思就是說親屬卡如何開通呢?
  • 如何關注微信公眾號?
    大家都知道時下非常流行的聊天工具「微信",它不僅有查找附近人、還有可以語音聊天,還有「搖一搖」、等應用功能,即省錢又時尚。但是它還有一個不為人應用,就是微信公眾號,在這裡可以找到生活類、科技類、小常識、幽默笑話等眾多話題。如何關注微信公眾號呢。
  • 2018微信公眾號的七夕情人節活動如何策劃?
    相信大家都知道,一年一度的七夕情人節馬上快要要到了,在許多公眾號運營者的眼中,這都是一個策劃活動營銷的極佳機會,將圍繞著七夕這個節日來做活動。這時候很多朋友就會問了,微信公眾號七夕情人節活動應該如何策劃呢?不少公眾號運營者都在問這個問題,想知道到底該怎麼去策劃好這次活動。
  • 微信公眾號排版規範及工具推薦
    其實一切美得事物人們都喜歡,而精美的公眾號排版,不僅從閱讀上提升可讀性,而且美觀度能讓人賞心悅目。   那首先就來說說微信公眾號的基本排版設置。   一、基本排版設置   1、字體與行距段落   大部分公眾號運營初級者,都是採用公眾平臺默認版式操作,比如夏至的排版最初是16號字體,單倍行距,聽起來跟word編輯器差不多,這是系統默認值。
  • 如何系統地運營微信公眾號
    手機微信作為大家常見的交友軟體,自2011年建立迄今,其流量達到上億。也因而有很多人剛開始在微信上工作中掙錢,在其中一個方式便是運用微信公眾平臺來獲得經濟效益。如今很多人都是有自身的微信公眾平臺,可是能真實將微信公眾號運營好的人並不是很多。為何有些人能夠經營好,而有些人卻不好?
  • 微信公眾號新手運營指南——四種類別如何選擇
    最近接到很多粉絲的提問,如何申請、如何運營微信公眾號成為了很多人關注的話題,微信公眾號2012年第一次出現到現在也將近五年了,還有那麼多人選擇涉足這個領域,申請微信公眾號來運營,足見這個平臺的魅力。
  • 微信公眾號從菜鳥到高手的進化:客服系統的運用
    作為企業品牌推廣的渠道,微信公眾號一直扮演著非常重要的角色,特別是在移動網際網路,大家都在使用微信的時代。 微信公眾號依靠微信龐大的客戶流量池,擁有大量的客戶資源, 如何充分利用它便成為了關鍵。很多企業也是看重這一點,才開設了企業公眾號,然而在實際運營中卻出現了不少問題。 例如,高峰期用戶諮詢量特別大,由於微信後臺沒有消息提醒,需要不斷刷新消息,客服人員無法在第一時間快速進行回復,便會出現延遲和漏接客戶的現象。如果這些用戶是通過廣告投放等渠道獲得,實際上會白白浪費很多廣告費。
  • 酒店SEO優化,如何讓顧客快捷註冊會員?試試微信公眾號的這功能
    酒店管理鄭叫獸今天給大家分享:通過一定酒店seo的優化後,酒店往往能夠獲得更多的顧客流量。而如何將這些顧客流量轉化為會員,反向促進酒店seo的進一步優化?在影響轉化率的眾多因素中,註冊的便捷性是其中重要的一項,註冊過程越方便,酒店顧客就越容易註冊成為會員。