Пожалуйста пришлите смайл который лучше всего описывает ваш стикер
Перейти к содержимому

Пожалуйста пришлите смайл который лучше всего описывает ваш стикер

  • автор:

Стикеры в Telegram

Стикеры — это картинки (наклейки), которыми можно выражать свои эмоции. Это почти как смайлики, только намного круче. Стикеры в Telegram можно использовать совершенно бесплатно.

Где найти новые стикеры для Telegram?

Все самые лучшие стикеры Telegram можно найти в каталоге стикеров. Также можно воспользоваться встроенным ботом Telegram @sticker.

Достаточно набрать в поле ввода сообщения @sticker и выбрать смайл с эмоцией, которая вам нужна. Бот предложит вам несколько наиболее подходящих для данной ситуации стикеров на выбор.

Как создать свой набор стикеров Telegram?

Каждый желающий может создать свой собственный набор стикеров. Для этого необходимо написать боту @stickers и следовать его инструкциям.

  • 1 шаг. Наберите команду /newpack и введите название своего будущего набора. Оно может быть любым.
  • 2 шаг. Теперь приступим к добавлению стикеров. Отправьте боту картинку, затем эмоцию, которая будет ей соответствовать. Всё, ваш первый стикер уже в наборе! Далее повторяйте эту процедуру (картинка-смайлик), пока вам не надоест (или пока не закончатся картинки). Максимальное число стикеров в одном наборе — 120 штук.
  • 3 шаг. Как только вы закончите наполнять свой набор стикеров, отправьте боту команду /publish и введите короткое имя набора (это имя будет содержаться в ссылке, по которой потом все ваши друзья смогут установить себе этот набор). Название должно быть написано латинскими буквами и не должно быть короче четырех знаков.
  • 4 шаг. Всё готово! Теперь бот выдал вам ссылку на ваш собственный набор и вы можете поделиться ей с вашими друзьями или прислать к нам в каталог стикеров.

Может быть такое, что имя, которое вы хотите использовать, уже занято. Тогда бот вам об этом сообщит, и вам придется выбрать другое имя.

Что такое видеостикеры?

Видеостикеры — это видеофайлы, сохранённые в особом формате с поддержкой прозрачности. Подробнее о видеостикерах в специальном разделе.

Что насчёт анимированных стикеров?

Анимированные стикеры создаются в программе Adobe After Effects с помощью специального плагина. Подробнее об этом читайте в отдельной статье.

Бот не хочет принимать мой адрес, что делать?

Адрес набора должен состоять из пяти или более символов и начинаться с буквы. Первую часть адреса ( t.me/addstickers ) вводить не нужно.

Какие требования к формату изображения?

Файл должен быть в формате PNG или *WebP с прозрачным фоном. Изображение должно вписываться в квадрат 512×512 (одна сторона — 512 пикселей, другая — 512 или меньше).

Чтобы ваш стикер одинаково хорошо смотрелся на любом фоне, рекомендуем добавить к изображению белую обводку и тень, как в этом примере.

Как удалить/добавить стикеры в своем наборе?

Для любых операций с вашим набором необходимо обратиться к роботу @stickers.

Для удаления стикера из набора надо отправить роботу команду /delsticker и затем отправить стикер, который вы хотели бы убрать.

Для добавления нового стикера, в уже созданный набор — отправьте роботу команду /addsticker , затем отправьте ему ссылку на ваш набор (в который надо добавить стикер). Ну а дальше по старой схеме, отправляете боту картинку, а затем смайлик.

Также функции робота позволяют посмотреть статистику скачивания вашего набора.

Как полностью удалить набор стикеров Telegram?

Для удаления набора необходимо отправить боту @stickers команду /delpack . Обратите внимание, что после удаления набор останется у тех пользователей, которые его уже установили. Новые пользователи установить его уже не смогут.

Как изменить название набора?

Изменить название набора невозможно. Такую проблему можно решить только, если создать набор заново (уже с нужным именем).

Сколько может быть стикеров в одном наборе?

Максимальное количество стикеров в одном наборе — 120 штук.

Почему перестала работать ссылка на набор стикеров Telegram?

В последнее время участились случаи, когда ссылка на любимый набор неожиданно перестала работать. Скорее всего, этот набор удалили из Telegram по требованию правообладателей (нарушение авторских прав).

Как передать права на просмотр статистики наборов стикеров другому пользователю?

К сожалению, никак. Просматривать статистику, а также производить любые другие действия с набором (удалять или добавлять стикеры) может только создатель набора.

Как сделать приватные стикеры?

Все наборы стикеров в Telegram — публичные. Однако, если не делиться ни с кем ссылкой на ваш набор, то никто посторонний его не увидит.

Как поменять порядок стикеров в наборе?

Для этого необходимо воспользоваться командой /ordersticker в боте @stickers.

Остались вопросы? Задайте их в комментариях и мы вам обязательно ответим.

Как привязать набор стикеров к своей группе?

Привязать набор стикеров можно в настройках группы. Это работает только в группах, где более 200 человек.

Сайт про Telegram на русском (неофициальный).

Здесь собраны приложения на базе MTProto, переведена некоторая документация с официального сайта, а также работает Webogram.

Как создать свой стикерпак для Телеграм в 4 простых шага

Стикер — рандомная картинка, которая используется вместо эмодзи, как правило, в мессенджерах. Чем мне нравится телеграм, так это огромным количеством стикеров, причем их может создать каждый. Есть у вас группа по работе? Пилите стикерпак с рабочими моментами и мемами (у нас такой был). Группа студентов или родственников? Тоже самое. Удобно то, что процесс обновления вашего пака занимает считанные минуты.

Требования к стикеру

  • Квадратная картинка размером 512px с одной стороны (вторая может быть такая же или меньше) в формате PNG с прозрачным фоном

Как делать саму картинку я писать не буду, можете взять файл с образцом стикера и вставить туда свое изображение или текст в фотошопе. Далее сохраните его в формате PNG.

Создаем стикерпак

Для этого пишем телеграм-боту @Stickers и выбираем раздел /newpack

Пишите только с веб-версии или через десктопное приложение. Картинки боту должны отсылаться КАК ФАЙЛ, а не как изображение

Stickers, Bot

1 шаг. Первым делом бот спросит, как назвать ваш стикерпак. Придумаем ему имя, любое, например VC

2 шаг. Далее он предложит загрузить файл вашего стикера. Нажимайте скрепку и прикрепляйте файл с картинкой.

3 шаг. Пришлите боту смайлик, соответствующий данному стикеру.

Вы можете сделать пак с одним стикером или же сотней, дело ваше. Чтобы его опубликовать пошлите боту команду /publish

Далее, бот запросит у вас картинку для заголовка стикерпака. Если ее не присылать и выбрать /skip он будет использовать первую картинку из набора.

4 шаг. Выбрать адрес ссылки для набора. Можно использовать латинские буквы, символы подчеркивания. Я выбрал ссылку selectel_article

Теперь ваш стикерпак доступен для всех пользователей Телеграм

Как добавить стикер в набор?

Пошлите боту команду /addstickers

Он предложит выбрать набор (если у вас их несколько), далее возвращаемся к шагу два и загружаем картинку.

Создатель стикерпака может увидеть по нему подробную статистику: сколько раз устанавливался, удалялся, сколько стикеров было отправлено сегодня. Для этого используются команды боту: /packusagetop и /stats

TelegramBot. Базовый функционал. Стикеры и смайлы. (Часть 3)

Один из вопросов, который часто приходит в личку — как работать со смайлами(эмодзи) и стикерами.

Как с ними работать, какими инструментами пользуюсь я и т.д.

В данной части будут рассмотрены такие вещи: как создать сообщение со стикером, как обработать полученное сообщение со стикером, как найти в тексте сообщения все смайлы(эмодзи), как создать сообщение с использованием смайлов (эмодзи).

Кому интересно, прошу под кат.

По-традиции, начинаем статью со ссылки на исходники по ней 🙂

Весь обсуждаемый в статье код собран в ветке Part3-Stick_and_Emoji.

Стикеры

Одна из вещей, что мне так понравилась в телеграмме, как только он появился — были стикеры. Они классные, удобные, бесплатные. И все это огромное разнообразие стикеров нам, естественно, хочется использовать и в боте. На деле эта процедура очень простая. Чтобы отправить стикер пользователю, нам нужно знать только лишь id стикера и больше ничего.
Обычно для стикеров я создаю себе вот такой класс-помощник, где храню данные о используемых в боте стикерах:

import org.telegram.telegrambots.api.methods.send.SendSticker; public enum Stickers < FUNNY_JIM_CARREY("CAADBQADiQMAAukKyAPZH7wCI2BwFxYE"), ; String stickerId; Stickers(String stickerId) < this.stickerId = stickerId; >public SendSticker getSendSticker(String chatId) < if ("".equals(chatId)) throw new IllegalArgumentException("ChatId cant be null"); SendSticker sendSticker = getSendSticker(); sendSticker.setChatId(chatId); return sendSticker; >public SendSticker getSendSticker() < SendSticker sendSticker = new SendSticker(); sendSticker.setSticker(stickerId); return sendSticker; >> 

Тут все просто. Мы даем стикеру имя, понятное для нас. И с помощью пары методов получаем готовые объект для отправки пользователю.

Для того, чтобы ответить на вопрос: «Где взять ID стикера?», — давайте напишем себе помощника, который эти данные нам и будет сообщать в нашем же боте.

У нас есть базовый функционал, который мы создавали тут:
TelegramBot. Базовый функционал. (Часть 2)
Чтобы наш бот начал как-то обрабатывать принятые стикеры, нам нужно:

  • Определить, что нам прислали стикер
  • Указать, какой именно хендлер ответственнен за обработку сообщений со стикерами
  • Запустить хендлер, который сформирует сообщение пользователю в ответ

В список команд мы добавили команду STICKER

В анализаторе присланного апдейта мы попробуем определить, текстовое ли у нас сообщение или в нем содержится стикер:

 if (message.hasText()) < parsedCommand = parser.getParsedCommand(message.getText()); >else < Sticker sticker = message.getSticker(); if (sticker != null) < parsedCommand = new ParsedCommand(Command.STICKER, sticker.getFileId()); >>

Т.к. сложной обработки присланного сообщения нам делать не нужно, то обработку сообщений, содержащих стикер, мы поручим уже существующему хендлеру, ответственному за обаботку так называемых «системных сообщений»:
MessageReciever.java строка 86

 case START: case HELP: case ID: case STICKER: SystemHandler systemHandler = new SystemHandler(bot); log.info("Handler for command[" + command.toString() + "] is: " + systemHandler); return systemHandler;

Соответственно в SystemHandler нам нужно указать, как обрабатывать поступившую команду STICKER:
SystemHandler.java строка 31

 case STICKER: return "StickerID: " + parsedCommand.getText();

В результате, при отправке нашему боту любой стикер — мы получим в ответ его ID:

Смайлы или эмодзи

Они стандартизировались, почти все устройства и операционные системы их понимают и умеют отображать. Их очень удобно использовать для украшения сообщений. Они лаконично смотрятся на кнопках под сообщениями. Как ни крути — одни плюсы.

Используя одинаковые иконки на кнопках и в тексте сообщения вы позволяете пользователю интуитивно и разобраться в вашем интерфейсе, на загромождая сообщение и кнопки лишним текстом.

Чтобы отобразить эмодзи в сообщении или на кнопке вам нужно знать его Unicode. В интернете полно источников, где можно найти все перечисленные смайлики, где указаны их теги, коды.
Для себя я выбрал такой способ работы с эмодзи: удобнее смайлы смотреть и выбирать в самом телеграмме.

Ну и естественно, по-аналогии со стикерами, давайте напишем себе небольшого помощника, который нам будет показывать нужные коды да еще и так, чтобы мы гарантированно правильно могли их обработать.

В первую очередь добавим в pom.xml вот такую зависимость:

  com.vdurmont emoji-java 3.3.0 

Честно, уже не помню, где она мне попалась, но с тех пор пользуюсь только ей, если мне нужно что-то сделать со смайликами в моем боте.

В библиотеке собрано много разных инструментов:

Любознательным и пытливым будет где развернуться 🙂

Что же нужно, чтобы отправить смайлик с помощью бота? Нужно встроить в текст сообщения Unicode нужного эмодзи.

Да, можно найти ресурсы, которые дают списки юникодов с эмодзи, показывают разные сводные таблицы как выглядят смайлы на разных смартфонах.

Я же хочу вам показать способ, который для меня оказался самым удобным для работы со смайлами.

Сначала рассмотрим как же можно использовать смайлы в самом телеграмме. Вы можете вызвать диалоговое окно, где все смайлы перечислены и добавлять их в сообщение, просто нажимая на их иконки. Так же смайлики можно добавлять в сообщение с помощью тэгов.

Тэги должны быть обрамлены в двоеточние и содержать какой-то уникальный текст, обозначающий нужный смайл.

Если в поле для ввода сообщения начать вводить сообщение, начинающееся с двоеточия — телеграм сам начнет показывать, какие эмодзи содержат вводимый текст тэга:

И когда вы введете правильный тэг смайла и поставите еще одно двоеточие — текст превратится в смайл. Так же тэги отображаются, если на смайлике зажать левую кнопку мыши.

И вот теперь нам на помощь приходит библиотека, зависимость которой мы добавили выше. Она умеет работать с тэгами смайликов. Это удобно в первую очередь для вас, так как теги более читаемы, они несут какой-то смысл.

А мы, зная тэг, можем получить Unicode смайлика вот таким образом:

String emoji_kissing = EmojiParser.parseToUnicode(":kissing:");

Вы можно завести себе отдельный класс, в котором будете хранить смайлы, которые используете в боте. На примере того же планировщика событий, у него в арсенале вот такие смайлы:

import com.vdurmont.emoji.EmojiParser; public enum Icon < PLUS(":heavy_plus_sign:"), MINUS(":heavy_minus_sign:"), CHECK(":white_check_mark:"), NOT(":x:"), DOUBT(":zzz:"), FLAG(":checkered_flag:") private String value; public String get() < return EmojiParser.parseToUnicode(value); >Icon(String value) < this.value = value; >>

И вот так в коде будет выглядеть использование этого класса и конкретного смайлика:

 row.add(new InlineKeyboardButton() .setText(Icon.CHECK.get() + " I'm going")

Это код вот этой кнопки:

Я заметил один нюанс этой библиотеки. Не все смайлы, что есть в телеграмме, библиотека умеет распознавать. Поэтому следите за тем, как выходят новые версии библиотеки.

Ну а чтобы быть точно уверенным, какие смайлы мы можем показать, а какие нет — эту задачу мы и поручим решать нашему помощнику.

Задача: если присланное сообщение не содержит никакой конкретной команды, но содержит в тексте смайлы — вывести эти смайлы на экран пользователю в виде сообщения и указать их аттрибуты(тег и описание).

Добавим в список команд команду TEXT_CONTAIN_EMOJI
Command.java строка 8

public enum Command

В парсере, который определяет, что за команда содержится в нашем сообщении добавим вот такой текст:

 if (result.getCommand() == Command.NONE) < ListemojiContainsInText = EmojiParser.extractEmojis(result.getText()); if (emojiContainsInText.size() > 0) result.setCommand(Command.TEXT_CONTAIN_EMOJI); >

Если мы определили, что сообщение не содержит никакой конкретной команды, но в нем есть смайлы — мы возвращаем, что мы отпарсили команду TEXT_CONTAIN_EMOJI.

Создадим отдельный хендлер, который будет обрабатывать только эту команду:
EmojiHandler.java

import com.example.telegrambot.bot.Bot; import com.example.telegrambot.command.ParsedCommand; import com.vdurmont.emoji.Emoji; import com.vdurmont.emoji.EmojiManager; import com.vdurmont.emoji.EmojiParser; import org.apache.log4j.Logger; import org.telegram.telegrambots.api.objects.Update; import java.util.HashSet; import java.util.Set; public class EmojiHandler extends AbstractHandler < private static final Logger log = Logger.getLogger(EmojiHandler.class); public EmojiHandler(Bot bot) < super(bot); >@Override public String operate(String chatId, ParsedCommand parsedCommand, Update update) < String text = parsedCommand.getText(); StringBuilder result = new StringBuilder(); SetemojisInTextUnique = new HashSet<>(EmojiParser.extractEmojis(text)); if (emojisInTextUnique.size() > 0) result.append("Parsed emojies from message:").append("\n"); for (String emojiUnicode : emojisInTextUnique) < Emoji byUnicode = EmojiManager.getByUnicode(emojiUnicode); log.debug(byUnicode.toString()); String emoji = byUnicode.getUnicode() + " " + byUnicode.getAliases() + " " + byUnicode.getDescription(); result.append(emoji).append("\n"); >return result.toString(); > >

Данный код выделяет из текста сообщения только смайлики, формирует из них сет с уникальными выбирает из их свойств теги и описание и формирует из этого текстовое сообщение.

Результат работы выглядит вот так:

В квадратных скобках мы получаем теги, которые можем использовать для вставки смайликов. Можно увидеть, что к одному смайлику иногда относится более чем 1 тег.

И так же с помощью данного помощника мы можем точно понять, какие смайлики понимает наша библиотека, а какие игнорирует.

Как, например, видно тут:

Смайл с кодом :face_with_monocle: почему-то не детектируется этой библиотекой.

Итак, обработчик у нас есть. Как мы передадим ему задание?

Т.к. мы уже знаем, что текстовое сообщение со смайликами внутри детектируется как команда TEXT_CONTAIN_EMOJI — в MessageReciever нам нужно указать, что за обработку этой команды ответственен отдельный хендлер EmojiHandler.

 case TEXT_CONTAIN_EMOJI: EmojiHandler emojiHandler = new EmojiHandler(bot); log.info("Handler for command[" + command.toString() + "] is: " + emojiHandler); return emojiHandler;

Программируйте в удовольствие и не стейсняйтесь задавать вопросы 🙂

Инструкция: Как сделать собственные стикеры в Telegram

Долгое время смайлы из двоеточий и скобок отвечали за эмоции, которые человек хотел выразить в записи в блоге или в переписке. Недавно широкое распространение получили эмодзи — японские пиктограммы, заменяющие порой слова или целые предложения. Сейчас, в связи с ростом популярности различных мессенджеров, растет и популярность стикеров. Стикеры — это нечто среднее между смайлом и картинкой, взятой из интернета.

Стикеры (с английского можно перевести как «наклейки») в целом играют ту же роль, что смайлы и эмодзи, выражающие действия или чувства. На стикерах часто изображают героев фильмов и мультфильмов, а также исторических фигур, публичных личностей и интернет-мемы с самыми разными персонажами в главной роли.

Еще стикеры хороши тем, что к их созданию могут приложить руку не только дизайнеры и иллюстраторы, но и обычные пользователи. Возможность создания и обмена самодельными стикерами предоставляет мессенджер Telegram, созданный командой основателя «ВКонтакте» Павла Дурова.

Итак, если в голове давно родилась идея для набора «наклеек», то с помощью представленной ниже инструкции ее можно воплотить в жизнь.

Бот поможет

Если уже есть заготовки к картинкам и установлен Telegram (не мобильная, а десктопная версия), нужно написать любое сообщение специальному боту — @Stickers. В ответ он предложит следующий набор команд:

/newpack — создать новый набор стикеров/addsticker — добавить стикер в набор/delsticker — удалить стикер из набора/ordersticker — переставить местами/cancel — отменить предыдущее действие

Выбираем первую команду и отправляем ее боту. Далее он предложит выбрать имя для нового пакета стикеров (просто введите название в строке чата и нажмите клавишу ввода), а следом прислать эмодзи, которое будет соответствовать первому стикеру.

Стоит отметить, что бот устанавливает ограничения на разрешение загружаемых картинок: их ширина должна составлять ровно 512 пикселей, а высота — не превышать этого же значения. Максимальный вес картинки может быть не более 350 килобайт. Изображение для будущего стикера нужно прикрепить через меню File, которое появляется при нажатии на изображение скрепки.

Не стоит переживать, если сразу не будет получаться — на каждом этапе создания стикера бот подскажет, как нужно действовать.

Когда первый стикер будет готов, необходимо выбрать эмодзи для второго стикера и снова загрузить нужную картинку. Повторять эти шаги придется, пока все «наклейки» не будут готовы.

Для того чтобы опубликовать новый набор, отправьте команду /publish. В ответ бот предложит придумать короткое название (с ним могут возникнуть проблемы) ссылки, которую в дальнейшем можно будет отправлять друзьям или публиковать в соцсетях. Разумеется, она будет вести на авторский пакет стикеров.

Как сделать красивую картинку

Создать сам набор стикеров не так сложно, однако у начинающих пользователей могут возникнуть трудности при обработке самих изображений в фоторедакторе. Для простых действий можно использовать Paint. Правда, понадобится сноровка, так как произвольное выделение делается «от руки» — задать значение 512 пикселей по горизонтали (и по вертикали тоже) не получится.

Если удалось вырезать изображение ровно, то затем его следует скопировать на новый документ (скопировать выделенной изображение — Ctrl+C — «Создать» — вставить скопированное изображение — Ctrl+V). Не стоит забывать, что итоговый размер картинки должен составлять 512 пикселей по ширине. Высота может быть меньше.

Если есть доступ к редактору Photoshop, то для вырезания стикеров лучше воспользоваться им. Алгоритм лишь немного сложнее, но на выходе получится аккуратная картинка с нужными параметрами.

Итак, открываем картинку и берем инструмент «Перо» или Pen Tool (скриншот №1, выделен красным). Начинаем выделять изображения, устанавливая точки по контуру. В конце соединяем последнюю точку с первой. Кстати, чем больше точек будет установлено по контуру, тем плавнее будет выглядеть обтравка.

Далее на панели параметров находим вкладку «Контуры» или Paths (скриншот №2, выделен красным), нажимаем правой кнопкой на «Рабочий контур» и на всплывающем меню выбираем «Образовать выделенную область».

После нужно выбрать радиус растушевки. Оптимально — 1-2 пикселя. Галочка «Сглаживание» пусть тоже стоит. «Ок».

После этого можно копировать выделенное изображение (Ctrl+C или в панели «Меню» открыть «Редактирование», потом нажать «Скопировать»), чтобы перенести его на новый холст нужного размера.

Чтобы открыть новый холст, в верхнем меню открываем вкладку «Файл» и выбираем «Новый» (Ctrl+N). В полях «Ширина» и «Высота» задаем 512 пикселей. «Содержимое фона» — «Прозрачный». Жмем «Ок».

Когда откроется новый файл, вставляем из буфера обмена вырезанное изображение. Это можно сделать сочетанием клавиш Ctrl+V либо «Редактирование» — «Вклеить». После этого картинку можно сохранять: «Файл» — «Сохранить для Web» или Alt+Shift+Ctrl+S. Напомним, картинка должна быть в формате .png — его можно установить в настройках в открывшемся окне. Там же можно «поиграться» с уровнем качества, от которого напрямую зависит размер.

Стикеры, которые получились у РГ Digital, доступны по ссылке.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *