Телеграм бот на django

В проекте на django есть сигналы, которые, при выборе работника на какое-либо дело ему начисляется зарплата за количество сделанной работы. Код сигнала выглядит примерно так:

@receiver(pre_save, sender=ClothProductModel) # Декоратор отлова сигнала
def on_cloth_bichuv_employee(sender, instance: ClothProductModel, **kwargs):
    if instance.pk is not None: # Если работника до этого еще не было
        if instance.bichuv_employee is not None: 
            if instance.bichuv_count == 0: # Проверка, что работника не меняли еще раз
                salary = instance.material_taked.material.for_model.price_bichuv * instance.material_taked.count # Вычисление зарплаты работни за сделанное кол-во материала
                instance.bichuv_employee.salary += salary # Прибавка в модель рабюотника его зарплаты
                print(instance.bichuv_employee)
                text = f'''
За бичув {instance} - {instance.material_taked.count} шт по цене {instance.material_taked.material.for_model.price_bichuv} - {salary}
            ''' # Так-же у работника есть поле отчета - за что он получил ЗП
                print(text)

                instance.bichuv_employee.report += text # Добавляю отчет работнику
                instance.bichuv_count += 1 # Прибавляю константу, чтобы еще раз нельзя было получить зарплату при изменении
                instance.bichuv_employee.save() # Сохраняю изменение в базе работника
                instance.save() # Сохраняю модель

Цель вопроса: Мне нужно в этот момент отправить в телеграм-бот начальнику такой же текст из переменной text

По статье я создал команду bot, которая поднимает бота, но не представляю как в сигнал добавить отправку сообщения.

Хочу добиться чего то подобного:

@receiver(pre_save, sender=ClothProductModel) # Декоратор отлова сигнала
def on_cloth_bichuv_employee(sender, instance: ClothProductModel, **kwargs):
    if instance.pk is not None: # Если работника до этого еще не было
        if instance.bichuv_employee is not None: 
            if instance.bichuv_count == 0: # Проверка, что работника не меняли еще раз
                salary = instance.material_taked.material.for_model.price_bichuv * instance.material_taked.count # Вычисление зарплаты работни за сделанное кол-во материала
                instance.bichuv_employee.salary += salary # Прибавка в модель рабюотника его зарплаты
                print(instance.bichuv_employee)
                text = f'''
За бичув {instance} - {instance.material_taked.count} шт по цене {instance.material_taked.material.for_model.price_bichuv} - {salary}
            ''' # Так-же у работника есть поле отчета - за что он получил ЗП
                print(text)


                bot.send_message(settings.BOSS_ID, text)


                instance.bichuv_employee.report += text # Добавляю отчет работнику
                instance.bichuv_count += 1 # Прибавляю константу, чтобы еще раз нельзя было получить зарплату при изменении
                instance.bichuv_employee.save() # Сохраняю изменение в базе работника
                instance.save() # Сохраняю модель

Уже голову сломал. Возможно ли подобное сделать? Или есть какой-то более элегантный вариант?

Вернуться на верх