Как создать меню в телеграмм
Перейти к содержимому

Как создать меню в телеграмм

Боты: информация для разработчиков

Боты — специальные аккаунты в Telegram, созданные для того, чтобы автоматически обрабатывать и отправлять сообщения. Пользователи могут взаимодействовать с ботами при помощи сообщений, отправляемых через обычные или групповые чаты. Логика бота контролируется при помощи HTTPS запросов к нашему API для ботов.

Общие сведения

Что могут делать боты?

Вот несколько примеров использования ботов:

  • Интеграция с другими сервисами. Например, бот может отправлять комментарии или управлять «умным домом». Или, например, отправлять вам уведомления при совершении каком-то действия или события (Примеры: GitHub Bot, Image Bot).
  • Утилиты и инструменты. Бот может отображать погоду, переводить тексты или предупреждать о предстоящих событиях по вашему запросу (Например: бот опросов).
  • Одно- и многопользовательские игры. Бот может поиграть с вами в шашки или шахматы, проводить викторины и так далее. (Пример: Trivia bot).
  • Социальные сервисы. Бот может находить вам собеседника, основываясь на ваших общих интересах и увлечениях. (Пример: HotOrBot).
  • Все, что вам захочется. Бота можно запрограммировать для чего угодно. Разве что посуду они помыть не смогут.

Как работают боты?

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

Самое интересное в роботах это то, что для их создания вам не нужно изучать низкоуровневые методы работы с MTProto и шифрованием — общение с роботом организовано при помощи обычного HTTPS интерфейса с упрощёнными методами Telegram API. Мы назвали его Bot API.

Рекомендуем также ознакомиться с подробным описанием Bot API.

The Botfather

Как создать бота?

Для этого есть. Бот. Просто напишите пользователю @BotFather и следуйте его инструкциям. Как только вы создали бота и получили свой ключ (токен) авторизации, переходите в раздел документации Bot API, чтобы начать настраивать вашего бота.

Чем бот отличается от обычного аккаунта?

  • У роботов нет статусов «онлайн» и «был в сети», вместо этого отображается надпись «бот».
  • Для ботов выделено ограниченное место на серверах — все сообщения будут удалены по прошествии определённого срока после обработки.
  • Боты не могут сами начать общение с пользователем. Пользователь должен либо добавить робота в группу, либо первым начать с ним диалог. Для этого можно использовать ссылки вида t.me/<bot_username> или поиск по имени пользователя.
  • Имя пользователя у робота должно заканчиваться на «bot» (например, @controllerbot).
  • При добавлении в конференцию, по умолчанию робот не получает всех сообщений (см. режим приватности).
  • Роботы никогда не спят, не едят и не жалуются (если только вы не запрограммируете их на обратное).

Суперспособности

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

Инлайн-режим

Пользователи могут общаться с вашим ботом напрямую из поля ввода сообщения — из любого чата или группы. Для этого нужно всего лишь набрать имя пользователя вашего бота и запрос для поиска. Получив запрос, бот может возвратить какие-либо результаты. Как только пользователь нажмёт на один из них, он сразу же отправится в чат. Таким образом можно запрашивать контент от бота в чатах, группах или каналах.

Введите имя пользователя бота, затем ключевое слово

С помощью ботов пользователи могут играть в HTML5-игры в группах или приватных чатах. Игровая платформа Telegram поможет составить таблицу рекордов и оповещать пользователей об изменении рейтинга.

Новый рекорд в чате Внутриигровой счёт

Под капотом у игр — HTML5, поэтому вы можете создавать игры любой сложности. На данный момент командой Telegram созданы несколько демо-игр:

Клавиатуры

Одна из самых необычных возможностей Bot API — кастомизированные клавиатуры. При передаче сервером ответа есть возможность передать команду на отображение специальной клавиатуры с предустановленными вариантами ответа (см. ReplyKeyboardMarkup). Клиент Telegram, получив сообщение, отобразит пользователю вашу клавиатуру. Нажатие на клавишу сразу же отправит на сервер соответствующую команду. Таким образом можно значительно упростить взаимодействие робота с пользователем. На данный момент для отображения на клавише могут использоваться эмодзи и текст. Вот несколько примеров таких клавиатур:

Клавиатура для бота опросовКлавиатура бота викторин Клавиатура бота-калькулятора. Просто потому что.

За более подробной информацией обращайтесь к описанию метода sendMessage.

Команды

Команды представляют собой более гибкий способ общения с ботом. Рекомендуется следующий синтаксис:

Команда должна начинаться с символа косой черты «/» и не может быть длиннее 32 символов. Команды могут состоять из букв латинского алфавита, цифр и подчёркивания. Несколько примеров:

Сообщения, начинающиеся с косой черты, будут всегда доставляться боту (точно также, как и при ответе на его сообщения и на @упоминания бота в чате). Приложения Telegram будут:

  • Предлагать список поддерживаемых команд с их описанием, когда пользователь введёт символ косой черты «/» (чтобы этот пункт работал, вам необходимо задать описание команд у @BotFather). Нажатие на описание приведёт к отправке этой команды.
  • Показывать кнопку (/) в поле ввода текста во всех чатах с ботами. Нажатие на эту кнопку отобразит список доступных команд.
  • Подсвечивать /команды в сообщениях. При нажатии на такую подсвеченную команду, она будет сразу же отправлена боту.

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

Это происходит автоматически, если вы выбираете команду из списка доступных.

Глобальные команды

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

  • /start — начинает общение с пользователем (например, отправляет приветственное сообщение). В эту команду также можно передавать дополнительные аргументы (см. внешнее связывание).
  • /help — отображает сообщение с помощью по командам. Оно может представлять собой короткое сообщение о вашем боте и список доступных команд.
  • /settings — (по возможности) возвращает список возможных настроек и команды для их изменения.

При попытке начать общение с роботом, пользователь увидит кнопку СТАРТ. На странице профиля бота также будут доступны ссылки Помощь и Настройки.

Пустая история переписки с ботом Профильная страница бота

Режим приватности

Ботов часто добавляют в группы, чтобы получать различную информацию — новости, уведомления и т.д. Однако, при добавлении бота вы наверняка спрашивали себя: «А что если этот маленький засранец пересылает всю групповую переписку куда-то “налево”?» Именно поэтому у роботов есть режимы приватности.

Робот с включенным режимом приватности не будет получать всех сообщений, а только сообщения, удовлетворяющие этим условиям:

  • Сообщения, начинающиеся с символа косой черты «/» (см. раздел Команды)
  • Сообщения, содержащие @упоминание бота
  • Ответы на сообщения бота
  • Служебные сообщения (о добавлении пользователя, смены изображения группы и т.д.)

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

Режим приватности включен по умолчанию во всех ботах. Он может быть выключен — тогда бот начнёт получать все сообщения, как и обычный пользователь. Всем участникам конференции виден текущий статус режима приватности в списке участников группы.

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

Внешнее связывание

Боты имеют механизм внешнего связывания, которые позволяет передать дополнительные параметры при запуске. Например, для передачи авторизационного токена пользователя, чтобы соединить его аккаунт с каким-либо внешним сервисом.

У каждого робота есть ссылка, при помощи которой можно начать с ним диалог — https://t.me/<имя бота> . К этой ссылке можно добавить параметры *start или startgroup со значением длиной до 64 символов. Пример:

Допустимо использование символов A-Z , a-z , 0-9 , _ и — . Мы рекомендуем использовать base64url для кодирования параметров.

Переход по ссылке с параметром start начнет чат с ботом, при этом в поле ввода текста будет отображаться кнопка СТАРТ. При переходе по ссылке с параметром startgroup пользователю будет предложено добавить бота в одну из доступных групп. Как только пользователь подтвердит своё действие (нажмёт на кнопку СТАРТ или выберет группу), бот получит сообщение следующего формата:

В PAYLOAD будет значение параметра start или startgroup , который был передан в ссылке.

Пример реализации внешнего связывания

Предположим, сайт example.com хочет отправлять пользователю уведомления с помощью Telegram-бота. Ниже приведено описание последовательности действий для реализации отправки уведомлений пользователю с ID 123 .

    бота с любым именем, например, @ExampleComBot
  1. Настройте вебхук для входящих сообщений
  2. Сгенерируйте ключ достаточной длины, напр. $memcache_key = ‘TESTKEY’
  3. Запишите значение 123 с ключом $memcache_key в Memcache на 3600 секунд (один час)
  4. Отправьте пользователю ссылку https://t.me/ExampleComBot?start=TESTKEY
  5. Настройте обработчик веб-хуков так, чтобы он запрашивал в Memcached значение входящего параметра каждый раз, когда приходит сообщение, начинающееся со /start . Если ключ существует, записываем chat_id, переданный в веб-хук, в telegram_chat_id для пользователя 123 . Удаляем ключ из Memcache.
  6. Теперь, если мы хотим отправить сообщение пользователю 123 , сначала проверяем telegram_chat_id . Если оно существует, используем метод sendMessage, чтобы отправить пользователю сообщение.

BotFather

BotFather — один бот, чтобы править всеми. При помощи него меняются настройки у существующих ботов и создаются новые.

Создание бота

Напишите команду /newbot , чтобы создать нового робота. BotFather спросит у вас имя нового бота и предложит придумать username.

Имя (name) будет отображаться в контактах и чатах.

Username — короткое имя на латинице, которое используется для упоминаний бота и в ссылках на профиль в telegram.me. Username должен состоять из букв латинского алфавита, подчёркиваний и цифр и быть длиной от 5 до 32 символов. Также имя пользователя обязательно должно заканчиваться на «bot», например: «tetris_bot» или «TetrisBot».

Ключ (токен) это набор символов вида 110201543:AAHdqTcvCH1vGWJxfSeofSAs0K5PALDsaw , который нужен, чтобы получать и отправлять сообщения с помощью Bot API.

Создание токена

Если вы потеряли или утратили доступ к токену, отправьте команду /token , чтобы сгенерировать новый.

Настройки

  • /setname — Изменить имя робота.
  • /setdescription — Изменить описание робота, представляющее собой короткий текст с описанием бота. Пользователи увидят его в самом начале, под заголовком «Что умеет этот робот?».
  • /setabouttext — Изменить информацию о боте, ещё более короткий текст, отображающийся в профиле бота. Ещё, если кто-то поделится вашим ботом, то вместе со ссылкой на него отправится этот текст.
  • /setuserpic — Изменить аватарку бота. Картинки — всегда хорошо.
  • /setcommands — Изменить список команд бота. Каждая команда состоит из собственно командного слова, начинающегося с символа косой черты («/») и короткого описания. Пользователи увидят список команд при вводе символа «/».
  • /setjoingroups — Определяет, можно ли добавлять вашего бота в группы.
  • /setprivacy — Определяет, все ли сообщения видит ваш бот в группах. В выключенном состоянии роботу будут отправляться все сообщения.
  • /deletebot — Удалить бота и его имя пользователя.

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

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

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

Как создать канал в Telegram: пошаговое руководство, советы и лайфхаки

Создать собственный канал может любой пользователь Telegram. Строгих ограничений в тематике или частоте постинга нет. Канал можно использовать вместо блога или перенаправлять в него трафик из социальных сетей. Рассмотрим процесс создания канала в Telegram и его особенности.

Что такое Telegram-канал, чем он отличается от группы

Telegram-канал – аналог блога или сообщества в социальных сетях. Право на публикацию контента есть только у администратора канала. Действительно важных отличий канала от группы всего два:

  1. У канала неограниченное количество участников, в группе – 200 тысяч подписчиков максимум.
  2. В канале посты публикуют только администраторы, в группе – любой ее участник.

Типы Telegram-каналов

Telegram-каналы классифицируются по типу доступа — на публичные и приватные.

Публичный Telegram-канал

Канал с этим статусом отображается в общем поиске. Подписаться на него может любой пользователь мессенджера Telegram. Для публичных каналов доступна короткая ссылка вида https://t.me/названиеканала . При смене типа канала на приватный подобная ссылка автоматически удаляется. Публичные каналы обычно создают для притока аудитории из внешних источников – других социальных сетей, мессенджеров, информационных порталов и т. д.

Приватный Telegram-канал

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

Как создать канал в Телеграмме

Создать канал в Telegram можно как с помощью мобильного устройства, так и с помощью компьютера. Предварительно необходимо установить мессенджер Telegram на необходимое устройство.

Важный момент! На один телефонный номер можно зарегистрировать не более 8 публичных Telegram-каналов.

Создать Телеграмм канал с помощью компьютера

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

Создать Телеграмм канал с помощью компьютера

После этого откроется меню с настройками пользовательского профиля и программы. Нужно кликнуть по кнопке « Создать канал ».

Создать Телеграмм канал с помощью компьютера - 2

Укажите название и краткое описание создаваемого канала.

Укажите тип канала и его имя (не менее 5 символов) для короткой ссылки.

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

Создать Телеграмм канал с помощью мобильного устройства

На Android -устройствах процесс создания Telegram-канала состоит из пяти шагов:

    Тапните по кнопке « Создать чат ».

Создать Телеграмм канал с помощью мобильного устройства

Создать Телеграмм канал с помощью мобильного устройства - 2

Настройки Telegram-канала

Настройки любого Telegram-канала можно условно разделить на основные и дополнительные.

Основные настройки

Сразу после создания Telegram-канала загрузите подходящий аватар. Это позволит созданному каналу выделиться среди множества других. Загрузить аватар можно в окне информации о канале. Для этого наведите курсор на место для аватара и дождитесь появления значка в виде фотоаппарата. Кликните по нему. После этого откроется окно загрузки фотографии.

Основные настройки

Прочие настройки осуществляются в меню управления каналом. Для перехода в него кликните по кнопке в виде трех вертикальных точек и выберите раздел « Управление каналом ».

Основные настройки - 2

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

« Тип канала » – подраздел, в котором администратор канала сможет в любой момент сделать из открытого сообщества закрытое. Здесь же задается короткий адрес Telegram-канала.

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

Дополнительные настройки

Если у Telegram-канала несколько администраторов, можно активировать функцию подписывания сообщений. Читатели будут видеть, кто из администраторов публикует новости.

« Недавние действия » – один из полезных разделов, для тех случаев, когда Telegram-канал ведет сразу несколько администраторов. В нем можно просматривать, какие именно действия совершили пользователи. Например, админ 1 выложил новый пост, а админ 2 изменил название канала. Все это будет отображаться в недавних действиях.

Различные фишки

Вручную форматировать контент для Telegram-каналов – долго и нудно. Упростить этот процесс сможет Controller Bot. Он доступен по адресу https://t.me/ControllerBot . Необходимо добавить канал в данный бот, а затем создать новый бот по отобразившейся инструкции.

Различные фишки

Полученный в результате создания токен нужно будет отправить в Controller Bot . Созданного бота необходимо добавить в администраторы Telegram-канала, и переслать любое сообщение из канала в основной бот. После этого создавать и редактировать посты можно будет в новом боте.

Различные фишки - 2

Бот позволяет добавлять к публикуемому посту реакции, опросы, комментарии, кнопки, предварительный просмотр ссылок.

Также там можно просмотреть статистику за неделю или месяц.

Статистика Telegram-канала

У Telegram-каналов есть два отслеживаемых параметра: количество подписчиков и количество просмотров. Доступ к статистике открывается, когда сообщество набирает более 1000 подписчиков. Если аудитория канала меньше, то собрать статистические данные встроенными инструментами мессенджера Telegram не получится.

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

Статистика Telegram-канала

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

Статистика Telegram-канала - 2

На iOS статистика выглядит немного иначе. В верхней части раздела отображаются сводные данные за неделю. Отключить этот блок нельзя.

В графике « Уведомления » можно увидеть, сколько подписчиков включили или выключили уведомления о новых публикациях и после публикации каких именно постов они это сделали.

В блоке « Источники просмотров » отображаются все источники, из которых были просмотрены посты Telegram-канала за день.

В « Источниках новых подписчиков » информация отображается по аналогичному принципу.

В блоке « Просмотры по часам » отображается информация о том, насколько активно пользователи просматривают посты в разное время суток.

В « Активности » отображается количество репостов и просмотров за 7 дней. Максимум, что может администратор — просмотреть данные за 22 дня. Период настраивается путем перемещения соответствующих ползунков.

В отдельный блок выделена активность в Instant View . Туда добавляется информация по статьям мгновенного просмотра. Если таких материалов на канале нет, то данных там не будет. Информация по недавним постам также отображается в виде отдельного графика. Там отображаются данные по репостам и просмотрам.

Просмотреть статистику конкурирующих Telegram-каналов можно с помощью сервиса Tgstat . Для поиска информации нужно указать наименование интересующего вас канала. В результатах отобразится информация о количестве подписчиков, приросте, охватах, вовлеченности и цитировании канала.

Аналогичным образом можно просмотреть информацию о собственном Telegram-канале, если в нем меньше 1000 подписчиков. Но не все русскоязычные каналы попадают в статистику сервиса Tgstat, поэтому лучше воспользоваться Controller Bot.

Как сделать открытый Telegram-канал закрытым?

Рассмотрим процесс закрытия канала с помощью десктопной версии мессенджера Telegram:

    Кликните по названию канала.

Как сделать открытый Telegram-канал закрытым?

Как сделать открытый Telegram-канал закрытым? - 2

Пожалуйста, оставляйте ваши комментарии по текущей теме материала. Мы очень благодарим вас за ваши комментарии, дизлайки, подписки, лайки, отклики!

Как создать меню в телеграмм

Данный раздел касается только Telegram, VK и Viber.

В ботах Facebook Messenger постоянное меню статично, а для описанного в этом разделе используются «Быстрые ответы», которые настраиваются очень просто и не имеют нюансов в использовании.

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

Это кнопки, которые пользователь бота видит под своим полем ввода текста. Они очень удобны с точки зрения навигации и ответов на вопросы чат-бота. Для мессенджеров Telegram, VK и Viber являются полноценным аналогом функции «Быстрые ответы» в Facebook Messenger.

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

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