Задать вопрос
@dmitriy8720

Приглашения в телеграм группу, надпись как сделать?

Подскажите, как прописать в коде чтобы писало, ну например "Анастасия (id пользователя-34345658) пригласила 10 контактов".

Чтобы эта надпись была в группе.

Желательно на библиотеке pyTelegramBotAPI или Aiogram.

Почитал документацию, как из этого, что нашел и перевел переводчиком и слепить этот код.

Update обновления

Этот объект представляет входящее обновление.
В любом заданном обновлении может присутствовать не более одного из необязательных параметров.

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

inline_query
Новый входящий встроенный запрос

selected_inline_result
ChosenInlineResult
Результат встроенного запроса, который был выбран пользователем и отправлен его собеседнику. Подробную информацию о том, как включить эти обновления для вашего бота, см. в нашей документации по сбору отзывов .

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

result_id
Уникальный идентификатор выбранного результата

query
запрос, который использовался для получения результата

chat_join_request
ChatJoinRequest
Запрос на вступление в чат отправлен. Чтобы получать эти обновления , бот должен иметь права администратора can_invite_users в чате.

ChatJoinRequest
from User Пользователь, отправивший запрос на присоединение
chat Chat Чат, в который был отправлен запрос

#### Обработчик запросов на присоединение к чату
Обрабатывайте запросы на присоединение к чату, используя:
`@bot.chat_join_request_handler() # <- передает объект типа ChatInviteLink в вашу функцию`


Как эти обновления, сколько кто пригласил в группу, мне получить в группе?
Это я получаю в консоле когда, когда добавляю контакт в группу

INFO:aiogram.contrib.middlewares.logging:Received message [ID:cifry] in chat [supergroup:-100cifry]
INFO:aiogram.contrib.middlewares.logging:Process update [ID:25cifry]: [success] (in 200 ms)


Вот так я прописал в файле
@dp.message_handler(content_types=['ChatJoinRequest'])
async def on_user_joined(message: types.Message):
    await bot.chat_join_request(
                      message.chat.id,                                   
                      message.from_user.id)
    await update.message()

@dp.chat_join_request_handler()
async def join(update: types.ChatJoinRequest):
    await update.approve()	

@dp.chat_join_request_handler()
async def echo(message: types.Message):
    await bot.chat_join_request(
                      message.chat.id,                                   
                      message.from_user.id)


Подключил библиотеки
from aiogram.types import chat
from aiogram.types import chat_member
from aiogram.types import chat_permissions
from aiogram.types import ChatInviteLink
from aiogram.types import ChatJoinRequest
from aiogram.tests.types import test_chat_member


В нете нашел такую документацию

Chat Join Request Handler

Обрабатывайте запросы на присоединение к чату, используя: @bot.chat_join_request_handler() # <- передает объект типа ChatInviteLink в вашу функцию

ChatJoinRequest

chat: Chat
Чат, в который был отправлен запрос

from: User
Пользователь, отправивший запрос на присоединение

invite_link: Option
Ссылка приглашения в чат, которая использовалась пользователем для отправки запроса на присоединение
  • Вопрос задан
  • 2792 просмотра
Подписаться 1 Простой Комментировать
Пригласить эксперта
Ответы на вопрос 1
@volkovroma12
Используй массивы или базу данных, чтобы фиксировать каждого приглашенного пользователя. А потом вывод и всё. Л - логика.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы