簡體   English   中英

如何在google chat / hangouts上發送帶有nodejs xmpp客戶端的表情符號/表情符號

[英]How to send emojis/emoticons with nodejs xmpp client on google chat/hangouts

我使用node-red xmpp客戶端節點實現了一個Google聊天機器人。 一切正常,但我不知道如何讓我的機器人給我一個笑臉/表情符號/表情符號等。

例如,我想對我的機器人說“嘿,謝謝”,我希望機器人響應是“豎起大拇指”的表情符號,當你輸入“(Y)”時出現的表情符號:

在此輸入圖像描述

但我得到的是文字字符串“(Y)”而不是圖形等價物。 我是否必須以unicode或類似的方式發送它? 我猜測圖形解釋取決於聊天客戶端(我正在通過gmail收件箱頁面中的環聊小部件聊天)。

謝謝!

好吧,我終於明白了。

正如Mathias Bynens的這篇優秀文章中所述 ,“Javascript有一個Unicode問題”。

我建議閱讀這篇文章,但簡而言之,根據你想在javascript中表示的unicode字符,你可能需要實際使用兩個字符 ,這些字符被稱為“兩個代理一半” ,形成真正的字符。 此鏈接也來自同一作者,解釋了根據角色的代碼點計算這兩半的公式。

但是,我發現網站https://codepoints.net列出了所有字符,並為您提供了不同語言的正確表示,其中包括Javascript和JSON。

例如,這是“thumbsup”字符的頁面: https//codepoints.net/U+1F44D

在“表示”下,如果單擊“顯示更多”,您將看到許多不同語言的表示。 對於具有代碼點U+1F44D的thumbsup,javascript表示具有以下兩個代理項: \?\?

因此,如果您將javascript字符串'\?\?'發送到啟用了unicode的客戶端,您應該會看到相應的表情符號。

注意:我最終沒有實現Google聊天機器人(XMPP),而是使用Telegram API實現Telegram機器人,但關鍵概念是相同的。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM