When I try to start composite recording, it returns empty sid resulting in not be able to start the recording. When I try individual recording, it works fine.
Am I missing something?
This is my code:
func startRecording() {
let body : [String : Any] = [
"uid": uid,
"cname": channelName,
"clientRequest": [
"token": token(),
"recordingConfig": [
"maxIdleTime": 30,
"streamMode": "standard",
"streamTypes": 2,
"channelType": 0,
"subscribeUidGroup": 1
],
"storageConfig": [
"secretKey": MyAWS.secretKey,
"vendor": 1,
"bucket": MyAWS.buketName,
"accessKey": MyAWS.accessKey,
"region": 10,
"fileNamePrefix": [
channelName
],
"extensionParams": [
"sse":"kms"
]
]
]
]
AF.request("https://api.agora.io/v1/apps/\(KeyCenter.AppId)/cloud_recording/resourceid/\(resourceId)/mode/mix/start",
method: .post,
parameters: body,
encoding: JSONEncoding.default,
headers: headers)
.authenticate(username: username, password: password)
.responseDecodable(of: CloudRecordingStartedResp.self, completionHandler: { response in
print("cloud_recording.start")
switch response.result {
case .success(let data):
print("resourceId:\(data.resourceId)\nsid:\(data.sid)")
self.sid = data.sid
case .failure(let error):
let str: String? = String(data: response.data!, encoding: .utf8)
print("error:\(error)\ndata:\(str)")
}
})
}
Thank in advance.
streamMode was unnecessary. Deleted, then it worked!