Я работаю над интеграцией между Django и Chatfuel.
На данный момент бот почти готов, у меня проблемы с последней задачей, у меня есть определенные задачи, и у каждой есть свое время, поэтому за три дня до истечения срока я должен отправить сообщение своему клиенту, напомнив ему / ей, что он/она должны выполнить это задание.
Я мог бы получить messenger_user_id после первого взаимодействия с моим ботом, теперь я знаю, что мне нужно запускать задание cron с частым интервалом, чтобы проверить срок выполнения, и, если он близок, отправить сообщение через Broadcasting API.
Но я не знаю, как достичь этой цели.
models.py
class Tasks(models.Model):
task = models.CharField(max_length=100)
objective = models.TextField()
created_date = models.DateTimeField(
default=timezone.now)
due_date = models.DateTimeField(
default=timezone.now)
def __str__(self):
return self.task
views.py #in here I obtain user's fb id
def save_fb_id(request, username, fb_id):
profile = Profile.objects.get(user__username=username)
if profile.fb_id != fb_id:
profile.fb_id = fb_id
profile.save()
return HttpResponse()
pip install django-celery-beat
без предварительной установки сельдерея? - person Enrique Vargas   schedule 25.01.2018celery
, поэтому вам нужно установитьcelery
, аcelery
зависит от брокера, такого как rabbitmq. Вам также необходимо установить его. См. это: docs.celeryproject.org/en /последнее/приступая к работе/ - person Jahongir Rahmonov   schedule 25.01.2018