From 9431bf2234db373d92ee732b8c334683ea6cc19c Mon Sep 17 00:00:00 2001 From: Kylmakalle Date: Mon, 19 Jun 2017 01:33:13 +0300 Subject: [PATCH] Small update on notifications --- .gitignore | 3 +++ bot.py | 32 +++++++++++++++----------------- vk_messages.py | 7 +++++-- 3 files changed, 23 insertions(+), 19 deletions(-) diff --git a/.gitignore b/.gitignore index e345e14..7ada594 100644 --- a/.gitignore +++ b/.gitignore @@ -137,3 +137,6 @@ $RECYCLE.BIN/ # Windows shortcuts *.lnk + +# Bot credentials +credentials.py \ No newline at end of file diff --git a/bot.py b/bot.py index fb68ef5..84a6e87 100644 --- a/bot.py +++ b/bot.py @@ -4,12 +4,13 @@ from vk_messages import VkMessage, VkPolling import vk import threading import re +from credentials import token, vk_app_id vk_threads = {} vk_tokens = {} -vk_app_id = "5988748" +bot = telebot.AsyncTeleBot(token) link = 'https://oauth.vk.com/authorize?client_id={}&' \ 'display=page&redirect_uri=https://oauth.vk.com/blank.html&scope=friends,messages' \ @@ -29,7 +30,19 @@ def create_thread(message, vk_token): vk_tokens[str(message.from_user.id)] = vk_token -bot = telebot.AsyncTeleBot('**********') +def check_thread(message): + for th in threading.enumerate(): + if th.getName() == 'vk' + str(message.from_user.id): + return False + return True + + +def stop_thread(message): + for th in threading.enumerate(): + if th.getName() == 'vk' + str(message.from_user.id): + t = vk_threads[str(message.from_user.id)] + t.terminate() + th.join() def extract_unique_code(text): @@ -53,21 +66,6 @@ def info_extractor(info): return info -def check_thread(message): - for th in threading.enumerate(): - if th.getName() == 'vk' + str(message.from_user.id): - return False - return True - - -def stop_thread(message): - for th in threading.enumerate(): - if th.getName() == 'vk' + str(message.from_user.id): - t = vk_threads[str(message.from_user.id)] - t.terminate() - th.join() - - @bot.message_handler(commands=['stop']) def stop_command(message): if not check_thread(message): diff --git a/vk_messages.py b/vk_messages.py index d4bbcc3..9d05dd0 100644 --- a/vk_messages.py +++ b/vk_messages.py @@ -15,7 +15,11 @@ class VkPolling: messages = vk_user.get_new_messages() if messages: for m in messages: - bot.send_message(chat_id, m, parse_mode='HTML') + if m.split('">​')[0][-1]: + bot.send_message(chat_id, m, parse_mode='HTML', disable_notification=True) + else: + bot.send_message(chat_id, m, parse_mode='HTML') + except Exception as e: print('Error: {}'.format(e)) for i in range(35): @@ -42,7 +46,6 @@ class VkMessage: if count == 0: pass else: - print(msgs) messages = msgs[1:] for m in messages: if not m['out'] and m['body']: