微信公衆賬號開發教程第12篇-符號表情的發送(下)

第11篇文章給出了Unified版本的符號表情(emoji表情)代碼表,而且介紹瞭如何在微信公衆賬號開發模式下發送emoji表情,還在文章結尾出,賣了個關子:「小q機器人中使用的一些符號表情,在微信的符號表情選擇欄里根本找不到,而且在上篇文章給出的符號表情代碼表(Unified版)中也沒有,那這些表情是如何發送的呢?」以下面兩張圖所示的符號表情「情侶」和「公共汽車」。java

        

本文主要介紹如下內容:1)如何在微信上使用更多的符號表情(即如何發送在微信符號表情選擇欄中不存在的emoji表情);2)給出SoftBank版符號表情的代碼對照表;3)介紹及演示如何發送SoftBank版本的符號表情。讓你們完全玩轉微信公衆賬號的emoji表情!android

 

如何在微信上使用更多的符號表情微信

咱們先來看下,做爲一個微信用戶,如何向好友或微信公衆賬號發送一些微信符號表情選擇欄中沒有列出的符號表情。例如:小q機器人中使用的「情侶」、「公共汽車」兩個符號表情,若是我想在與朋友微信聊天時使用,該怎麼辦呢?請先看下面的兩張截圖:微信開發

        

能夠看出,當咱們在輸入框中輸入「情侶」的全拼「qinglv」、「公共汽車」的全拼「gonggongqiche」時,輸入法的文本提示列表中就會自動顯示對應的符號表情,怎麼樣,是否是很容易呢?這類表情還有不少,例如:馬桶、廁所、取款機等。測試

說明:筆者使用的是iPhone 4S手機系統自帶的輸入法作的測試,若是你用的是安卓、或者是第三方輸入法,那就另當別論了。編碼

 

Emoji表情代碼表之SoftBank版本spa

上篇文章講過,emoji表情有不少種版本,其中包括Unified、DoCoMo、KDDI、Softbank和Google,而且不一樣版本用於表示同一符號表情的Unicode代碼也不相同。本篇文章,給出SoftBank(日本軟銀集團)版本的emoji表情代碼表(網上通常稱之爲SB Unicode,指的就是它),以下圖所示:.net

 

公衆賬號如何向用戶發送SoftBank版本的符號表情code

在微信公衆賬號開發模式下,發送SoftBank版的符號表情要比發送Unified版的符號表情簡單的多,直接將符號表情對應的SoftBank Unicode值寫在程序代碼中返回給用戶便可,無需作任何處理。xml

下面,我給出一個發送SoftBank版符號表情的示例,代碼以下:

[java]  view plain  copy
 
  1. package org.liufeng.course.service;  
  2.   
  3. import java.util.Date;  
  4. import java.util.Map;  
  5.   
  6. import javax.servlet.http.HttpServletRequest;  
  7.   
  8. import org.liufeng.course.message.resp.TextMessage;  
  9. import org.liufeng.course.util.MessageUtil;  
  10.   
  11. /** 
  12.  * 核心服務類 
  13.  *  
  14.  * @author liufeng 
  15.  * @date 2013-07-21 
  16.  */  
  17. public class CoreService {  
  18.     /** 
  19.      * 處理微信發來的請求 
  20.      *  
  21.      * @param request 
  22.      * @return 
  23.      */  
  24.     public static String processRequest(HttpServletRequest request) {  
  25.         String respMessage = null;  
  26.         try {  
  27.             // xml請求解析  
  28.             Map<String, String> requestMap = MessageUtil.parseXml(request);  
  29.   
  30.             // 發送方賬號(open_id)  
  31.             String fromUserName = requestMap.get("FromUserName");  
  32.             // 公衆賬號  
  33.             String toUserName = requestMap.get("ToUserName");  
  34.   
  35.             // 回覆文本消息  
  36.             TextMessage textMessage = new TextMessage();  
  37.             textMessage.setToUserName(fromUserName);  
  38.             textMessage.setFromUserName(toUserName);  
  39.             textMessage.setCreateTime(new Date().getTime());  
  40.             textMessage.setMsgType(MessageUtil.RESP_MESSAGE_TYPE_TEXT);  
  41.             textMessage.setFuncFlag(0);  
  42.             textMessage.setContent("自行車\ue136 男人\ue138 錢袋\ue12f 情侶\ue428 公共汽車\ue159");  
  43.             respMessage = MessageUtil.textMessageToXml(textMessage);  
  44.         } catch (Exception e) {  
  45.             e.printStackTrace();  
  46.         }  
  47.   
  48.         return respMessage;  
  49.     }  
  50. }  

上面代碼的做用是:無論用戶發送什麼類型的消息,都返回包含5個emoji表情的文本消息。若是不明白CoreService類怎麼回事,請查看本系列教程的第5篇,或者你只須要認真看第42行代碼,就知道怎麼樣把SoftBank版emoji表情代碼放在文本消息的Content中了。最後再來看下運行效果截圖:

說明:每個符號表情都有與之對應的Unified unicode、Softbank unicode代碼,並非說「情侶」、「公共汽車」這類在微信的符號表情欄中找不到的emoji表情只能經過本文的方式發送,只要你拿到與之對應的Unified unicode代碼,同樣可使用上篇文章所講的方法發送這類符號表情。

 

好了,關於微信公衆賬號向用戶發送符號表情的講解就此結束了,相信有些朋友看完教程已經開始在賬號中使用符號表情了。其實,我更但願你們在拷貝我粘出的Unified版、SoftBank版符號表情代碼表的同時,也能去了解下符號表情各類版本、Unicode編碼及增補碼的相關知識,不斷拓展本身的知識面,舉一反三,這樣才能真正地把我講解的知識變成你本身的,才能作到以不變應萬變。

相關文章
相關標籤/搜索