Files
2024-11-29 23:10:03 +09:00

29 lines
836 B
Swift

import Foundation
import Logboard
/// 6.21. ANNOUNCE
public struct MoQTAnnounce: MoQTControlMessage {
public let type = MoQTMessageType.announce
public let trackNamespace: [String]
public let subscribeParameters: [MoQTVersionSpecificParameter]
public var payload: Data {
get throws {
var payload = MoQTPayload()
payload.putInt(trackNamespace.count)
for namespace in trackNamespace {
payload.putString(namespace)
}
payload.putInt(subscribeParameters.count)
for parameter in subscribeParameters {
do {
payload.putData(try parameter.payload)
} catch {
logger.info(error)
}
}
return payload.data
}
}
}