Swift:Quickblox跟踪startcall和get错误(调试)

Swift:Quickblox跟踪startcall和get错误(调试),swift,quickblox,Swift,Quickblox,我使用以下代码: var sendQb = "XXX" var sendRoom = "YYY" var w = QBRTCConferenceType.video let newSession = QBRTCClient.instance().createNewSession(withOpponents: [NSNumber.init(value: sendQb)], with: w) var sendUser = [String: String]() sendUser["room"] =

我使用以下代码:

var sendQb = "XXX"
var sendRoom = "YYY"

var w = QBRTCConferenceType.video

let newSession = QBRTCClient.instance().createNewSession(withOpponents: [NSNumber.init(value: sendQb)], with: w)
var sendUser = [String: String]()
sendUser["room"] = "\(sendRoom)"

self.session = newSession
self.session?.startCall(sendUser)
此代码有时有效,有时无效

如何在
startCall()之后跟踪调用

我希望在接受之前从quickblox获取呼叫的结果。比如:

1-用户是否连接到quickblox

2-用户是否连接到其他用户

3-quickblox是否连接到用户


以及更多的Quickblox委托方法(swift 4)

您可以使用Quickblox委托方法来完成

func session(_ session: QBRTCBaseSession, connectedToUser userID: NSNumber) {
    // Called when connection is established with user.
}

func session(_ session: QBRTCSession, hungUpByUser userID: NSNumber, userInfo: [String : String]? = nil) { 
    // Called when user hung up.
}

func session(_ session: QBRTCSession, userDidNotRespond userID: NSNumber) {
    // Called in case when user did not respond to your call within timeout.
    //default value: 45 seconds
}

func session(_ session: QBRTCSession, acceptedByUser userID: NSNumber, userInfo: [String : String]? = nil) {
    // Called when user hung up.
}

func session(_ session: QBRTCSession, rejectedByUser userID: NSNumber, userInfo: [String : String]? = nil) {
    // Called in case when user rejected you call.
}

func session(_ session: QBRTCBaseSession, receivedRemoteVideoTrack videoTrack: QBRTCVideoTrack, fromUser userID: NSNumber) {
    // Called when receivedRemoteVideoTrack
}

func sessionDidClose(_ session: QBRTCSession) {
    // Called when session is closed.
}

func didReceiveNewSession(_ session: QBRTCSession, userInfo: [String : String]? = nil) {
    // Called when someone started a new session with you.
}