35 lines
766 B
Python
35 lines
766 B
Python
from pprint import pprint
|
|
|
|
from django.conf import settings
|
|
from django.utils import timezone
|
|
from telebot import TeleBot
|
|
from djconfig import config
|
|
|
|
from config.celery import app
|
|
|
|
|
|
@app.task()
|
|
def execute_feed(feed_pk):
|
|
from feeds.models import Feed
|
|
from django.db import connections
|
|
|
|
c = connections['default'].cursor()
|
|
print(c.db.__dict__)
|
|
|
|
# config._reload_maybe()
|
|
|
|
try:
|
|
feed = Feed.objects.get(pk=feed_pk)
|
|
|
|
if not feed.lock:
|
|
feed.lock = True
|
|
feed.save()
|
|
|
|
bot = TeleBot(config.feed_bot_token)
|
|
feed.last_id = feed.config.execute(bot, feed.chat_id, feed.last_id)
|
|
feed.last_check = timezone.now()
|
|
feed.save()
|
|
finally:
|
|
feed.lock = False
|
|
feed.save()
|