Как заставить Django сохранять DTMF-ввод Twilio Voice в db.sqlite3?

Я создаю IVR, используя Python (3.9.5) Django (3.2.8) и Twilio Python Helper Library (7.1.0). Мой views.py содержит несколько представлений, которые используют глагол Gather от Twilio для сбора цифр. Как мне сохранить эту информацию в db.sqlite3?

Пример: models.py

class Survey(models.Model):
    question1 = models.CharField(max_length=2)
    question2 = models.CharField(max_length=2)
    question3 = models.CharField(max_length=2)
    caller_id = models.CharField(max_length=12)
    date_time = models.DateTimeField(auto_now_add=True)

Пример: views.py

def question1():
    response = VoiceResponse()
    gather = Gather(input='dtmf')
    gather.say('How many cars do you own?')
    response.redirect('../question2')
    print(response)

def question2():
    response = VoiceResponse()
    gather = Gather(input='dtmf')
    gather.say('How many homes do you own?')
    response.redirect('../question3')
    print(response)

def question3():
    response = VoiceResponse()
    gather = Gather(input='dtmf')
    gather.say('How many boats do you own?')
    response.redirect('../end')
    print(response)

def end():
    response = VoiceResponse()
    response.say('One moment please.')
    response.pause(length=1)
    response.say('Thank you. Your input has been saved.')
    response.hangup()
    print(response)

Как сохранить собранные цифры в соответствующие поля, указанные в models.py? Я хочу сохранить данные только после того, как будут даны ответы на все 3 вопроса. Если звонящий повесит трубку, не ответив на все 3 вопроса, то я не хочу ничего сохранять.

Как сохранить идентификатор звонящего и дату-время в соответствующие файлы, указанные в models.py? Я хочу, чтобы эта информация отображалась в панели администратора.

Помогите пожалуйста и заранее спасибо.

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