diff --git a/apps/macos/Sources/OpenClawProtocol/GatewayModels.swift b/apps/macos/Sources/OpenClawProtocol/GatewayModels.swift index 5e956d2bb37..be2f044524f 100644 --- a/apps/macos/Sources/OpenClawProtocol/GatewayModels.swift +++ b/apps/macos/Sources/OpenClawProtocol/GatewayModels.swift @@ -2389,33 +2389,93 @@ public struct TalkRealtimeSessionParams: Codable, Sendable { } } -public struct TalkRealtimeSessionResult: Codable, Sendable { - public let provider: String - public let clientsecret: String - public let model: String? - public let voice: String? - public let expiresat: Double? +public struct TalkRealtimeRelayAudioParams: Codable, Sendable { + public let relaysessionid: String + public let audiobase64: String + public let timestamp: Double? public init( - provider: String, - clientsecret: String, - model: String?, - voice: String?, - expiresat: Double?) + relaysessionid: String, + audiobase64: String, + timestamp: Double?) { - self.provider = provider - self.clientsecret = clientsecret - self.model = model - self.voice = voice - self.expiresat = expiresat + self.relaysessionid = relaysessionid + self.audiobase64 = audiobase64 + self.timestamp = timestamp } private enum CodingKeys: String, CodingKey { - case provider - case clientsecret = "clientSecret" - case model - case voice - case expiresat = "expiresAt" + case relaysessionid = "relaySessionId" + case audiobase64 = "audioBase64" + case timestamp + } +} + +public struct TalkRealtimeRelayMarkParams: Codable, Sendable { + public let relaysessionid: String + public let markname: String? + + public init( + relaysessionid: String, + markname: String?) + { + self.relaysessionid = relaysessionid + self.markname = markname + } + + private enum CodingKeys: String, CodingKey { + case relaysessionid = "relaySessionId" + case markname = "markName" + } +} + +public struct TalkRealtimeRelayStopParams: Codable, Sendable { + public let relaysessionid: String + + public init( + relaysessionid: String) + { + self.relaysessionid = relaysessionid + } + + private enum CodingKeys: String, CodingKey { + case relaysessionid = "relaySessionId" + } +} + +public struct TalkRealtimeRelayToolResultParams: Codable, Sendable { + public let relaysessionid: String + public let callid: String + public let result: AnyCodable + + public init( + relaysessionid: String, + callid: String, + result: AnyCodable) + { + self.relaysessionid = relaysessionid + self.callid = callid + self.result = result + } + + private enum CodingKeys: String, CodingKey { + case relaysessionid = "relaySessionId" + case callid = "callId" + case result + } +} + +public struct TalkRealtimeRelayOkResult: Codable, Sendable { + public let ok: Bool + + public init( + ok: Bool) + { + self.ok = ok + } + + private enum CodingKeys: String, CodingKey { + case ok } } diff --git a/apps/shared/OpenClawKit/Sources/OpenClawProtocol/GatewayModels.swift b/apps/shared/OpenClawKit/Sources/OpenClawProtocol/GatewayModels.swift index 5e956d2bb37..be2f044524f 100644 --- a/apps/shared/OpenClawKit/Sources/OpenClawProtocol/GatewayModels.swift +++ b/apps/shared/OpenClawKit/Sources/OpenClawProtocol/GatewayModels.swift @@ -2389,33 +2389,93 @@ public struct TalkRealtimeSessionParams: Codable, Sendable { } } -public struct TalkRealtimeSessionResult: Codable, Sendable { - public let provider: String - public let clientsecret: String - public let model: String? - public let voice: String? - public let expiresat: Double? +public struct TalkRealtimeRelayAudioParams: Codable, Sendable { + public let relaysessionid: String + public let audiobase64: String + public let timestamp: Double? public init( - provider: String, - clientsecret: String, - model: String?, - voice: String?, - expiresat: Double?) + relaysessionid: String, + audiobase64: String, + timestamp: Double?) { - self.provider = provider - self.clientsecret = clientsecret - self.model = model - self.voice = voice - self.expiresat = expiresat + self.relaysessionid = relaysessionid + self.audiobase64 = audiobase64 + self.timestamp = timestamp } private enum CodingKeys: String, CodingKey { - case provider - case clientsecret = "clientSecret" - case model - case voice - case expiresat = "expiresAt" + case relaysessionid = "relaySessionId" + case audiobase64 = "audioBase64" + case timestamp + } +} + +public struct TalkRealtimeRelayMarkParams: Codable, Sendable { + public let relaysessionid: String + public let markname: String? + + public init( + relaysessionid: String, + markname: String?) + { + self.relaysessionid = relaysessionid + self.markname = markname + } + + private enum CodingKeys: String, CodingKey { + case relaysessionid = "relaySessionId" + case markname = "markName" + } +} + +public struct TalkRealtimeRelayStopParams: Codable, Sendable { + public let relaysessionid: String + + public init( + relaysessionid: String) + { + self.relaysessionid = relaysessionid + } + + private enum CodingKeys: String, CodingKey { + case relaysessionid = "relaySessionId" + } +} + +public struct TalkRealtimeRelayToolResultParams: Codable, Sendable { + public let relaysessionid: String + public let callid: String + public let result: AnyCodable + + public init( + relaysessionid: String, + callid: String, + result: AnyCodable) + { + self.relaysessionid = relaysessionid + self.callid = callid + self.result = result + } + + private enum CodingKeys: String, CodingKey { + case relaysessionid = "relaySessionId" + case callid = "callId" + case result + } +} + +public struct TalkRealtimeRelayOkResult: Codable, Sendable { + public let ok: Bool + + public init( + ok: Bool) + { + self.ok = ok + } + + private enum CodingKeys: String, CodingKey { + case ok } }