Неожиданный аргумент ключевого слова incoming allow при попытке создать Twilio Audio ChatRoom

Следуя этому руководству, вы сможете построить приложение для аудиочата с использованием Django, React и Twilio Programmable Voice.

Когда я выполняю GET запрос с помощью fetch для создания чата, я получаю ошибку:

Response {type: 'cors', url: 'http://127.0.0.1:8000/voice_chat/token/Emmanuel', redirected: false, status: 500, ok: false, …}

и на моем сервере:

TypeError: __init__() got an unexpected keyword argument 'incoming_allow'

Это функция fetch в моем фронтенде:

const handleSubmit = e => {
    e.preventDefault();
    const nickname = state.nickname;
    setupTwilio(nickname);
    history.push('/rooms');
}
const setupTwilio = (nickname) => {
    console.log('inside setupTwilio function', nickname)
    fetch(`http://127.0.0.1:8000/voice_chat/token/${nickname}`)
    .then(response => {
        console.log('resp', response)
        })

конечная точка API, с которой я взаимодействую:

path('voice_chat/', include('voice_chat.urls'))

urls.py содержит voice_chat.urls:

urlpatterns = [
    path("rooms", RoomView.as_view(), name="room_list"),
    path("token/<username>", TokenView.as_view(), name="rooms"),
]

Вот мой TokenView:

class TokenView(View):
    def get(self, request, username, *args, **kwargs):
        voice_grant = grants.VoiceGrant(
            outgoing_application_sid=settings.TWIML_APPLICATION_SID,
            incoming_allow=True,
        )
        access_token = AccessToken(
            settings.TWILIO_ACCOUNT_SID,
            settings.TWILIO_API_KEY,
            settings.TWILIO_API_SECRET,
            identity=username
        )
        access_token.add_grant(voice_grant)
        jwt_token = access_token.to_jwt()
        return JsonResponse({"token": jwt_token.decode("utf-8")})
Вернуться на верх