微信开发系列之十 - 在SAP C4C接收微信发送过来的服务请求回应
文章系列目录
- Wechat development series 1 – setup your development environment
- Wechat development series 2 – development Q&A service using nodejs
- Wechat development series 3 – Trigger C4C Account creation in Wechat app
- Wechat development series 4 – Send C4C Data change notification to Wechat app
- Wechat development series 5 – embedded your UI5 application to Wechat app
- Wechat development series 6 – Retrieve Wechat User info via oAuth2 and display it in UI5 application
- Wechat development series 7 – use Redis to store Wechat conversation history
- Wechat development series 8 – Map integration
- Wechat development series 9 – Create C4C Social Media Message and Service within Wechat app
- Wechat development series 10 – Use Wechat app to receive Service Request reply made from C4C
In previous blog Wechat development series 9 – Create C4C Social Media Message and Service within Wechat app it is already achieved that Wechat user can directly talk to the subscription account in Wechat app and a new Service Request ( and a social media message ) will automatically be created in C4C system under custom channel created for Wechat.
With this message ID 59189 we can find its associated Service Request:
It comes very naturally that once a C4C agent replies this Service Request in the system, the reply will not only appear in C4C UI:
but also directly pushed to end user’s Wechat app:
Implementation detail
(1) Create a new Mashup service with type “REST Service”:
Maintain the following settings:
When the service request is replied in C4C, a json string will be sent to the url configured in this Mashup service ( http://wechatjerry.herokuapp.com/fromc4c ) by a HTTP Post. The json string contains the ID of original social media message created when the end user sent the text to Wechat app in the beginning.
Assign this Mashup service to your custom channel for Wechat created in previous blog.
(2) React to the HTTP Post request in your nodejs server by adding a new route for url /fromc4c, which is configured in your Mashup service done in previous step.
The following logics are done in this module:
(1) get social media message detail based on message ID from payload sent from C4C system
(2) The social media user profile ID is stored as a field of message detail fetched from Step 1.
Get user profile detail data based on its ID.
(3) The ID of Wechat user who has initially sent the text to C4C system is contained in social media
user profile detail data. With this ID available now we can call module postMessageToUser to send
the text maintained in C4C system to user’s Wechat app.
These three steps are done in another three separate modules:
要获取更多Jerry的原创文章,请关注公众号"汪子熙":