RTCPeerConnection失败

时间:2020-06-18 14:30:28

标签: python

我正在使用flask-sockerio尝试建立视频聊天,但出现此错误

DOMException: Failed to execute 'setRemoteDescription' on 'RTCPeerConnection': Failed to set remote answer sdp: Called in wrong state: kStable

这是服务器代码:

from app import app
from app.common import now, timedelta
from app.controllers.battle.common import *
import flask_socketio as socketio
from app.store import store


@app.route('/battle/video')
def video_battle():
    return render_template(
        'battlevideo/pages/index.html.jinja'
    )


users = {}
rooms = {}


@ws.on('join room')
@authenticated_only
def video_battle_connect(room_id):
    app.logger.debug(users)
    room_users_ids = []

    if users.get(room_id):
        if len(users.get(room_id)) == 5:
            ws.emit("room full")
            return
        users[room_id].append(request.sid)
    else:
        users[room_id] = [request.sid]

    rooms[request.sid] = room_id
    for uid in users[room_id]:
        if uid == request.sid:
            room_users_ids.append(uid)

    emit("all users", room_users_ids)


@ws.on('sending signal')
@authenticated_only
def video_battle_send(json):
    emit('user joined', {
        'signal': json['signal'],
        'callerID': json['callerID']
    })


@ws.on('returning signal')
@authenticated_only
def video_battle_send(json):
    emit('user joined', {
        'signal': json['signal'],
        'id': request.sid
    })

0 个答案:

没有答案