vision-career/vacancies/main/management/commands/generate_recommended_vacancies.py

26 lines
946 B
Python

import asyncio
from django.core.management import BaseCommand
from vacancies.main.models import CustomerCV
from vacancies.main.bot import application
from vacancies.main.vector_store import get_next_vacancy
from telegram import InlineKeyboardButton, InlineKeyboardMarkup
class Command(BaseCommand):
help = "Generates new recommended vacancies"
def handle(self, *args, **options):
asyncio.run(self.ahandle(*args, **options))
async def ahandle(self, *args, **options):
for customer_cv in CustomerCV.objects.all():
if vacancy := get_next_vacancy(customer_cv):
await application.bot.send_message(
chat_id=customer_cv.customer.chat_id,
text=vacancy.content,
reply_markup=InlineKeyboardMarkup([[
InlineKeyboardButton("Откликнуться", url=vacancy.link),
]]),
)