123456789101112131415161718192021222324252627282930313233343536 |
- from threading import Thread
- from time import sleep
- from django.utils import timezone
- from random import choice
- from .models import Review, CustomReply
- from nlu_job.nlu_utils import is_a_name
- def un_replied_reviews_with_no_comment():
- now = timezone.now()
- date = now - timezone.timedelta(days=30)
- reviews = Review.objects.filter(comment=None, reply=None, star_rating=5, update_time__gte=date).order_by('update_time')
- return reviews
- def generate_reply(review):
- replies = CustomReply.objects.filter(reply_category='no_comment')
- reply = choice(replies)
- name = review.reviewer_name
- if is_a_name(name):
- parsable_name = ', '+name.title()
- else:
- parsable_name = ''
- replied_text = reply.reply %parsable_name
- return replied_text
- def task():
- while True:
- reviews = un_replied_reviews_with_no_comment()
- # TODO: reply reviews in background
- sleep(60*60*6)
- thread = Thread(target=task)
- # thread.start()
|