Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- from threading import Lock
- msg_lock = Lock()
- media_group_ignore = set()
- with shelve.open('lineDB') as db:
- app = Client("user", apiId, apiHash)
- @app.on_message(Filters.channel & ~Filters.edited)
- def lineBot(Client, message):
- msg_lock.acquire()
- if msg.media_group_id:
- if msg.media_group_id in media_group_ignore:
- return False
- else:
- media_group = []
- for media in app.iter_history(msg.chat.id, limit=10):
- if msg.media_group_id == media.media_group_id:
- caption = f'{msg.chat.title}\n{media.caption}' if media.caption else msg.chat.title
- if media.photo:
- media_group.append(InputMediaPhoto(media=media.photo.file_id, file_ref=media.photo.file_ref, caption=caption))
- elif media.video:
- media_group.append(InputMediaVideo(media=media.video.file_id, file_ref=media.video.file_ref, caption=caption))
- print('send')
- send(app, msg, msg_id, line, media_group, spam_chan)
- media_group = []
- media_group_ignore.add(msg.media_group_id)
- print(msg.chat.id, msg.message_id, media_group_ignore, msg.media_group_id)
- if len(media_group_ignore) > 20: media_group_ignore.clear()
- else:
- send(app, msg, msg_id, line, msg_txt, spam_chan)
- msg_lock.release()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement