 |

27.11.2023, 16:06
|
|
Участник форума
Регистрация: 27.12.2018
Сообщений: 245
С нами:
3883730
Репутация:
83
|
|
ТГ-бот:
Код:
from
telegram
import
Update
,
InlineKeyboardButton
,
InlineKeyboardMarkup
,
ChatMember
from
telegram
.
ext
import
Updater
,
CommandHandler
,
CallbackContext
,
ConversationHandler
,
CallbackQueryHandler
from
telegram
.
ext
import
MessageHandler
,
Filters
import
os
TELEGRAM_TOKEN
=
"Пошелна***"
updater
=
Updater
(
token
=
TELEGRAM_TOKEN
,
use_context
=
True
)
dp
=
updater
.
dispatcher
movie_database
=
{
#Тут будут ссылки
# Conversation states
SUBSCRIBED
,
ENTER_CODE
=
range
(
2
)
def
start
(
update
:
Update
,
context
:
CallbackContext
)
-
>
int
:
user
=
update
.
message
.
from_user
chat_id
,
user_id
,
channel_id
=
update
.
message
.
chat_id
,
user
.
id
,
-
**
**
chat_member
=
context
.
bot
.
get_chat_member
(
chat_id
=
channel_id
,
user_id
=
user_id
)
if
chat_member
.
status
in
[
ChatMember
.
MEMBER
,
ChatMember
.
ADMINISTRATOR
,
ChatMember
.
CREATOR
]
:
# User is already subscribed, prompt for the movie code
update
.
message
.
reply_text
(
"Введите код фильма.\nP.S Коды находятся либо на нашем TikTok аккаунте, либо на подписанном канале"
)
return
ENTER_CODE
else
:
# User is not subscribed, provide a message and request subscription
message_text
=
f"Привет,{user.first_name}! Подпишитесь на наш канал: https://t.me/KEFilmChannel\nТакже хочу напомнить, что бот находится на стадии BETA. Если вы столкнулись с ошибкой, пожалуйста, сообщите по контактам в описании бота!"
update
.
message
.
reply_text
(
message_text
,
disable_web_page_preview
=
True
)
return
SUBSCRIBED
def
handle_code
(
update
:
Update
,
context
:
CallbackContext
)
-
>
int
:
chat_id
,
user_id
,
channel_id
=
update
.
message
.
chat_id
,
update
.
message
.
from_user
.
id
,
-
**
**
**
*
try
:
chat_member
=
context
.
bot
.
get_chat_member
(
chat_id
=
channel_id
,
user_id
=
user_id
)
if
chat_member
.
status
in
[
ChatMember
.
MEMBER
,
ChatMember
.
ADMINISTRATOR
,
ChatMember
.
CREATOR
]
:
movie_code
=
update
.
message
.
text
if
movie_code
in
movie_database
:
movie_info
=
movie_database
[
movie_code
]
update
.
message
.
reply_text
(
f"Приятного просмотра!"
)
update
.
message
.
reply_text
(
f"Название фильма:{movie_info['title']}"
)
keyboard
=
[
[
InlineKeyboardButton
(
"Смотреть"
,
url
=
movie_info
[
'link1'
]
)
,
InlineKeyboardButton
(
"ЗЕРКАЛО"
,
url
=
movie_info
[
'link2'
]
)
]
]
reply_markup
=
InlineKeyboardMarkup
(
keyboard
)
update
.
message
.
reply_text
(
"Выберите ссылку на сайт:"
,
reply_markup
=
reply_markup
)
# Add a message for searching new movies
update
.
message
.
reply_text
(
"Для поиска новых фильмов просто повторно введите код.\nP.S Коды находятся либо на нашем TikTok аккаунте, либо на подписанном канале"
)
else
:
update
.
message
.
reply_text
(
"Фильм с таким кодом не найден. Введите правильный код.\nP.S Коды находятся либо на нашем TikTok аккаунте, либо на подписанном канале"
)
else
:
update
.
message
.
reply_text
(
"Чтобы получить ссылки, подпишитесь на канал: ***** . Не пытайтесь обмануть бота. Подпишись, затем нажми на /start"
,
disable_web_page_preview
=
True
)
except
Exception
as
e
:
# Log the specific exception details
update
.
message
.
reply_text
(
f"Произошла ошибка. Повторите попытку позже. ({e})"
)
return
ENTER_CODE
if
__name__
==
'__main__'
:
dp
.
add_handler
(
CommandHandler
(
'start'
,
start
)
)
dp
.
add_handler
(
MessageHandler
(
Filters
.
text
&
~
Filters
.
command
,
handle_code
)
)
updater
.
start_polling
(
)
updater
.
idle
(
)
Помогите переписать на аиограм последней версии (гпт не умеет)
буду вам благодарен
|
|
|

28.11.2023, 18:06
|
|
Участник форума
Регистрация: 27.12.2018
Сообщений: 245
С нами:
3883730
Репутация:
83
|
|
up
|
|
|

28.11.2023, 20:36
|
|
Участник форума
Регистрация: 22.06.2023
Сообщений: 100
С нами:
1524813
Репутация:
33
|
|
документация?
|
|
|

29.11.2023, 18:03
|
|
Участник форума
Регистрация: 27.12.2018
Сообщений: 245
С нами:
3883730
Репутация:
83
|
|
Сообщение от TravkaCode.lover()
документация?
офф сайт
|
|
|
|
 |
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|