2016-09-14 36 views
6

Używam funkcji API luzu, aby uzyskać pełną listę emotikonów, tak aby po otrzymaniu wiadomości zastąpiłem ikonę :squirrel:.Jak mogę uzyskać pełną listę pustych emotikonów za pośrednictwem interfejsu API?

Metoda https://slack.com/api/emoji.list działa jak czar, ale zwraca tylko 30 ikon. Myślę, że jest to poprawne, ponieważ na stronie dokumentacji (https://api.slack.com/methods/emoji.list) podano:

Ta metoda zawiera niestandardowy emoji dla zespołu.

Wystarczająco Wystarczająco, ale jak mogę uzyskać pełną listę skojarzeń nazwa ikony/nazwa URL?

+0

Obawiam się, że to niemożliwe:/ – qzb

+0

Dzięki @qzb, masz jakikolwiek link wspierający twoją odpowiedź? –

+0

Nie, właśnie założyłem, że jeśli to będzie możliwe, takie punkty końcowe zostaną opisane w dokumentacji. Ponadto punkt końcowy 'https: // slack.com/api/emoji.list' nie obsługuje stronicowania. Jeśli chcesz mieć pewność, powinieneś [skontaktować się bezpośrednio z zespołem ds. Luzu] (https://grandparade.slack.com/help/requests/new), ale wydaje mi się, że już to wiesz. – qzb

Odpowiedz

8

Nie do końca pewien, czy to jest to, czego szukasz, ale jeśli chodzi tylko o obrazach mapowania osłabnąć stylu imiona, jest to całkiem dobry biblioteka:

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

więc, w oparciu o przykładem ich README:

emotikonów z Slack stylu krótkiej nazwy point_up ma wartość hex 261d, a więc można znaleźć tutaj: https://github.com/iamcal/emoji-data/blob/master/img-apple-160/261d.png

(Apple, ponieważ emotikonów domyślny luz są emotikony jabłko)

+0

dodatkowo: niezbyt użyteczne, ale [to] (https://a.slack-edge.com/f360/img/emoji_2016_06_08/sheet_apple_64_indexed_256colors.png) jest rzeczywistym ikonką, którą Slack używa do wyświetlania emoji. –

+1

Hej @ wilhelm-klopp, dzięki za podpowiedź! Tak, to jest bardzo przydatne! Znalazłem JSON ze wszystkimi możliwymi dopasowaniami i używam go do uzyskania wartości Unicode i renderowania ikony jako HTML. Napiszę rozwiązanie, jeśli się uda! –

+0

Warto również zauważyć, że ta biblioteka jest przechowywana przez Slack CTO –

6

końcu udało mi się zdobyć wszystkie ikony i ich używać i pisać tutaj rozwiązanie dla każdego, kto chciałby używać zrobić podobny:

  1. Przede wszystkim, mam luz niestandardowy emotikonów przez this luzu URL

  2. Ponieważ w kroku 1 mamy tylko niestandardowe emotikony, dobrze jest wiedzieć, że luz wykorzystuje standardowe emotikony zdefiniowany w znakach unicode, odwzorowaną poprzez niestandardowe uchwyty, takie jak :smiley: lub :horse:. Dobrą rzeczą jest to, że możemy znaleźć, połączoną przez luźną stronę, a mianowicie link to a JSON object with all the emoji mappings. Ten plik jest OGROMNY, ale ma wszystko, czego potrzebujemy.

  3. W pliku znajdziesz tablicę obiekt javascript jak poniżej:

{ 
 
"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 
 
}

użyłem następujące informacje:

  • skrócone nazwy są nazwy, które są używane w luzu (musisz włączyć smiley do :smiley:)
  • jednolity jest znak Unicode do korzystania (by użyć go bezpośrednio na stronie HTML trzeba dodać &#x więc w tym przypadku będziesz musiał użyć 😃, który jest renderowany & # x1F603;

Dzięki tym informacjom będzie można utworzyć funkcję slack-do-HTML do dekodowania emotikony i wyświetlać je gdziekolwiek chcesz

+0

Dobra robota! Dziękujemy za opublikowanie swojego znaleziska! –