2016-09-14 42 views
6

我正在使用slack API來獲取表情符號的完整列表,以便當我收到消息時,我將用圖標替換:squirrel:如何通過API獲取鬆散表情符號的完整列表?

方法https://slack.com/api/emoji.list的作品像一個魅力,但只返回30個圖標。我認爲這是正確的,因爲在文檔頁面(https://api.slack.com/methods/emoji.list)他們說:

此方法列出團隊的自定義表情符號。

不夠公平,但是如何獲取關聯圖標名稱/圖標URL的完整列表?

+0

恐怕是不可能的:/ – qzb

+0

感謝@qzb,你有沒有任何支持你答案的鏈接? –

+0

不,我剛纔假設如果可能的話,這些端點將在文檔中描述。另外,https:// slack.com/api/emoji.list端點不支持任何分頁。如果你想確定,你應該[直接聯繫懶隊](https://grandparade.slack.com/help/requests/new),但我想你已經知道了。 – qzb

回答

8

不能完全確定,如果這是你在找什麼,但如果它只是映射圖像懈怠風格的名字,這是一個非常好的圖書館:

https://github.com/iamcal/emoji-data

所以,建立在例如,在他們的自述:

與時差式短名稱point_up通過表情符號具有十六進制值261d,並且因此可以在這裏找到:https://github.com/iamcal/emoji-data/blob/master/img-apple-160/261d.png

(蘋果,因爲默認鬆弛的表情符號是蘋果的表情符號)

+0

另外:不是非常有用,但[this](https://a.slack-edge.com/f360/img/emoji_2016_06_08/sheet_apple_64_indexed_256colors.png)是Slack用來顯示錶情符號的實際精靈。 –

+1

嘿@ wilhelm-klopp,謝謝你的提示!是的,這非常有用!我找到了所有可能匹配的JSON,並使用它來獲取unicode值並將圖標呈現爲HTML。如果解決方案成功,我會發布解決方案! –

+0

另外值得注意的是,這個庫是由Slack首席技術官維護的 –

6

我終於設法讓所有的圖標,並使用它們,我張貼在這裏,就是想使用的任何解決方案做類似:

  1. 首先,我得到了鬆弛定製表情通過this鬆弛URL

  2. 因爲在步驟1中,我們得到的只是定製表情符號,它是知道鬆弛有益使用的Unicode字符定義的標準表情圖案,映射通過像這樣的自定義手柄10或:horse:。好的是,我們可以找到,鏈接通過鬆弛頁面link to a JSON object with all the emoji mappings。這個文件很大,但有我們需要的一切。

  3. 在該文件中,你會發現JavaScript對象數組像下面這樣:

{ 
 
"name":"SMILING FACE WITH OPEN MOUTH", 
 
"unified":"1F603", 
 
"variations":[], 
 
"docomo":"E6F0", 
 
"au":"E471", 
 
"softbank":"E057", 
 
"google":"FE330", 
 
"image":"1f603.png", 
 
"sheet_x":26, 
 
"sheet_y":18," 
 
short_name":"smiley", 
 
"short_names":["smiley"], 
 
"text":":)", 
 
"texts":["=)","=-)"], 
 
"category":"People", 
 
"sort_order":5, 
 
"has_img_apple":true, 
 
"has_img_google":true, 
 
"has_img_twitter":true, 
 
"has_img_emojione":true 
 
}

我用下面的信息:

  • 短名是這是在農閒所使用的名稱(你需要把smiley:smiley:
  • 統一是Unicode字符使用(直接在HTML頁面中使用它,你就需要在這種情況下添加&#x所以你將不得不使用😃這是呈現😃

利用這些信息,你將能夠創造一個鬆弛到HTML的功能,解碼錶情圖案顯示出來,無論你想

+0

幹得好!感謝您發佈您的發現! –

相關問題