mirror of
https://github.com/openclaw/openclaw.git
synced 2026-05-06 19:10:58 +00:00
refactor: unify talk session runtime
This commit is contained in:
@@ -2740,387 +2740,7 @@ public struct TalkCatalogResult: Codable, Sendable {
|
||||
}
|
||||
}
|
||||
|
||||
public struct TalkConfigParams: Codable, Sendable {
|
||||
public let includesecrets: Bool?
|
||||
|
||||
public init(
|
||||
includesecrets: Bool?)
|
||||
{
|
||||
self.includesecrets = includesecrets
|
||||
}
|
||||
|
||||
private enum CodingKeys: String, CodingKey {
|
||||
case includesecrets = "includeSecrets"
|
||||
}
|
||||
}
|
||||
|
||||
public struct TalkConfigResult: Codable, Sendable {
|
||||
public let config: [String: AnyCodable]
|
||||
|
||||
public init(
|
||||
config: [String: AnyCodable])
|
||||
{
|
||||
self.config = config
|
||||
}
|
||||
|
||||
private enum CodingKeys: String, CodingKey {
|
||||
case config
|
||||
}
|
||||
}
|
||||
|
||||
public struct TalkHandoffCreateParams: Codable, Sendable {
|
||||
public let sessionkey: String
|
||||
public let sessionid: String?
|
||||
public let channel: String?
|
||||
public let target: String?
|
||||
public let provider: String?
|
||||
public let model: String?
|
||||
public let voice: String?
|
||||
public let mode: AnyCodable?
|
||||
public let transport: AnyCodable?
|
||||
public let brain: AnyCodable?
|
||||
public let ttlms: Int?
|
||||
|
||||
public init(
|
||||
sessionkey: String,
|
||||
sessionid: String?,
|
||||
channel: String?,
|
||||
target: String?,
|
||||
provider: String?,
|
||||
model: String?,
|
||||
voice: String?,
|
||||
mode: AnyCodable?,
|
||||
transport: AnyCodable?,
|
||||
brain: AnyCodable?,
|
||||
ttlms: Int?)
|
||||
{
|
||||
self.sessionkey = sessionkey
|
||||
self.sessionid = sessionid
|
||||
self.channel = channel
|
||||
self.target = target
|
||||
self.provider = provider
|
||||
self.model = model
|
||||
self.voice = voice
|
||||
self.mode = mode
|
||||
self.transport = transport
|
||||
self.brain = brain
|
||||
self.ttlms = ttlms
|
||||
}
|
||||
|
||||
private enum CodingKeys: String, CodingKey {
|
||||
case sessionkey = "sessionKey"
|
||||
case sessionid = "sessionId"
|
||||
case channel
|
||||
case target
|
||||
case provider
|
||||
case model
|
||||
case voice
|
||||
case mode
|
||||
case transport
|
||||
case brain
|
||||
case ttlms = "ttlMs"
|
||||
}
|
||||
}
|
||||
|
||||
public struct TalkHandoffCreateResult: Codable, Sendable {
|
||||
public let id: String
|
||||
public let roomid: String
|
||||
public let roomurl: String
|
||||
public let token: String
|
||||
public let sessionkey: String
|
||||
public let sessionid: String?
|
||||
public let channel: String?
|
||||
public let target: String?
|
||||
public let provider: String?
|
||||
public let model: String?
|
||||
public let voice: String?
|
||||
public let mode: AnyCodable
|
||||
public let transport: AnyCodable
|
||||
public let brain: AnyCodable
|
||||
public let createdat: Double
|
||||
public let expiresat: Double
|
||||
public let room: [String: AnyCodable]
|
||||
|
||||
public init(
|
||||
id: String,
|
||||
roomid: String,
|
||||
roomurl: String,
|
||||
token: String,
|
||||
sessionkey: String,
|
||||
sessionid: String?,
|
||||
channel: String?,
|
||||
target: String?,
|
||||
provider: String?,
|
||||
model: String?,
|
||||
voice: String?,
|
||||
mode: AnyCodable,
|
||||
transport: AnyCodable,
|
||||
brain: AnyCodable,
|
||||
createdat: Double,
|
||||
expiresat: Double,
|
||||
room: [String: AnyCodable])
|
||||
{
|
||||
self.id = id
|
||||
self.roomid = roomid
|
||||
self.roomurl = roomurl
|
||||
self.token = token
|
||||
self.sessionkey = sessionkey
|
||||
self.sessionid = sessionid
|
||||
self.channel = channel
|
||||
self.target = target
|
||||
self.provider = provider
|
||||
self.model = model
|
||||
self.voice = voice
|
||||
self.mode = mode
|
||||
self.transport = transport
|
||||
self.brain = brain
|
||||
self.createdat = createdat
|
||||
self.expiresat = expiresat
|
||||
self.room = room
|
||||
}
|
||||
|
||||
private enum CodingKeys: String, CodingKey {
|
||||
case id
|
||||
case roomid = "roomId"
|
||||
case roomurl = "roomUrl"
|
||||
case token
|
||||
case sessionkey = "sessionKey"
|
||||
case sessionid = "sessionId"
|
||||
case channel
|
||||
case target
|
||||
case provider
|
||||
case model
|
||||
case voice
|
||||
case mode
|
||||
case transport
|
||||
case brain
|
||||
case createdat = "createdAt"
|
||||
case expiresat = "expiresAt"
|
||||
case room
|
||||
}
|
||||
}
|
||||
|
||||
public struct TalkHandoffJoinParams: Codable, Sendable {
|
||||
public let id: String
|
||||
public let token: String
|
||||
|
||||
public init(
|
||||
id: String,
|
||||
token: String)
|
||||
{
|
||||
self.id = id
|
||||
self.token = token
|
||||
}
|
||||
|
||||
private enum CodingKeys: String, CodingKey {
|
||||
case id
|
||||
case token
|
||||
}
|
||||
}
|
||||
|
||||
public struct TalkHandoffJoinResult: Codable, Sendable {
|
||||
public let id: String
|
||||
public let roomid: String
|
||||
public let roomurl: String
|
||||
public let sessionkey: String
|
||||
public let sessionid: String?
|
||||
public let channel: String?
|
||||
public let target: String?
|
||||
public let provider: String?
|
||||
public let model: String?
|
||||
public let voice: String?
|
||||
public let mode: AnyCodable
|
||||
public let transport: AnyCodable
|
||||
public let brain: AnyCodable
|
||||
public let createdat: Double
|
||||
public let expiresat: Double
|
||||
public let room: [String: AnyCodable]
|
||||
|
||||
public init(
|
||||
id: String,
|
||||
roomid: String,
|
||||
roomurl: String,
|
||||
sessionkey: String,
|
||||
sessionid: String?,
|
||||
channel: String?,
|
||||
target: String?,
|
||||
provider: String?,
|
||||
model: String?,
|
||||
voice: String?,
|
||||
mode: AnyCodable,
|
||||
transport: AnyCodable,
|
||||
brain: AnyCodable,
|
||||
createdat: Double,
|
||||
expiresat: Double,
|
||||
room: [String: AnyCodable])
|
||||
{
|
||||
self.id = id
|
||||
self.roomid = roomid
|
||||
self.roomurl = roomurl
|
||||
self.sessionkey = sessionkey
|
||||
self.sessionid = sessionid
|
||||
self.channel = channel
|
||||
self.target = target
|
||||
self.provider = provider
|
||||
self.model = model
|
||||
self.voice = voice
|
||||
self.mode = mode
|
||||
self.transport = transport
|
||||
self.brain = brain
|
||||
self.createdat = createdat
|
||||
self.expiresat = expiresat
|
||||
self.room = room
|
||||
}
|
||||
|
||||
private enum CodingKeys: String, CodingKey {
|
||||
case id
|
||||
case roomid = "roomId"
|
||||
case roomurl = "roomUrl"
|
||||
case sessionkey = "sessionKey"
|
||||
case sessionid = "sessionId"
|
||||
case channel
|
||||
case target
|
||||
case provider
|
||||
case model
|
||||
case voice
|
||||
case mode
|
||||
case transport
|
||||
case brain
|
||||
case createdat = "createdAt"
|
||||
case expiresat = "expiresAt"
|
||||
case room
|
||||
}
|
||||
}
|
||||
|
||||
public struct TalkHandoffRevokeParams: Codable, Sendable {
|
||||
public let id: String
|
||||
|
||||
public init(
|
||||
id: String)
|
||||
{
|
||||
self.id = id
|
||||
}
|
||||
|
||||
private enum CodingKeys: String, CodingKey {
|
||||
case id
|
||||
}
|
||||
}
|
||||
|
||||
public struct TalkHandoffRevokeResult: Codable, Sendable {
|
||||
public let ok: Bool
|
||||
public let revoked: Bool
|
||||
|
||||
public init(
|
||||
ok: Bool,
|
||||
revoked: Bool)
|
||||
{
|
||||
self.ok = ok
|
||||
self.revoked = revoked
|
||||
}
|
||||
|
||||
private enum CodingKeys: String, CodingKey {
|
||||
case ok
|
||||
case revoked
|
||||
}
|
||||
}
|
||||
|
||||
public struct TalkHandoffTurnStartParams: Codable, Sendable {
|
||||
public let id: String
|
||||
public let token: String
|
||||
public let turnid: String?
|
||||
|
||||
public init(
|
||||
id: String,
|
||||
token: String,
|
||||
turnid: String?)
|
||||
{
|
||||
self.id = id
|
||||
self.token = token
|
||||
self.turnid = turnid
|
||||
}
|
||||
|
||||
private enum CodingKeys: String, CodingKey {
|
||||
case id
|
||||
case token
|
||||
case turnid = "turnId"
|
||||
}
|
||||
}
|
||||
|
||||
public struct TalkHandoffTurnEndParams: Codable, Sendable {
|
||||
public let id: String
|
||||
public let token: String
|
||||
public let turnid: String?
|
||||
|
||||
public init(
|
||||
id: String,
|
||||
token: String,
|
||||
turnid: String?)
|
||||
{
|
||||
self.id = id
|
||||
self.token = token
|
||||
self.turnid = turnid
|
||||
}
|
||||
|
||||
private enum CodingKeys: String, CodingKey {
|
||||
case id
|
||||
case token
|
||||
case turnid = "turnId"
|
||||
}
|
||||
}
|
||||
|
||||
public struct TalkHandoffTurnCancelParams: Codable, Sendable {
|
||||
public let id: String
|
||||
public let token: String
|
||||
public let turnid: String?
|
||||
public let reason: String?
|
||||
|
||||
public init(
|
||||
id: String,
|
||||
token: String,
|
||||
turnid: String?,
|
||||
reason: String?)
|
||||
{
|
||||
self.id = id
|
||||
self.token = token
|
||||
self.turnid = turnid
|
||||
self.reason = reason
|
||||
}
|
||||
|
||||
private enum CodingKeys: String, CodingKey {
|
||||
case id
|
||||
case token
|
||||
case turnid = "turnId"
|
||||
case reason
|
||||
}
|
||||
}
|
||||
|
||||
public struct TalkHandoffTurnResult: Codable, Sendable {
|
||||
public let ok: Bool
|
||||
public let record: TalkHandoffJoinResult
|
||||
public let turnid: String
|
||||
public let events: [TalkEvent]
|
||||
|
||||
public init(
|
||||
ok: Bool,
|
||||
record: TalkHandoffJoinResult,
|
||||
turnid: String,
|
||||
events: [TalkEvent])
|
||||
{
|
||||
self.ok = ok
|
||||
self.record = record
|
||||
self.turnid = turnid
|
||||
self.events = events
|
||||
}
|
||||
|
||||
private enum CodingKeys: String, CodingKey {
|
||||
case ok
|
||||
case record
|
||||
case turnid = "turnId"
|
||||
case events
|
||||
}
|
||||
}
|
||||
|
||||
public struct TalkRealtimeSessionParams: Codable, Sendable {
|
||||
public struct TalkClientCreateParams: Codable, Sendable {
|
||||
public let sessionkey: String?
|
||||
public let provider: String?
|
||||
public let model: String?
|
||||
@@ -3158,115 +2778,7 @@ public struct TalkRealtimeSessionParams: Codable, Sendable {
|
||||
}
|
||||
}
|
||||
|
||||
public struct TalkRealtimeRelayAudioParams: Codable, Sendable {
|
||||
public let relaysessionid: String
|
||||
public let audiobase64: String
|
||||
public let timestamp: Double?
|
||||
|
||||
public init(
|
||||
relaysessionid: String,
|
||||
audiobase64: String,
|
||||
timestamp: Double?)
|
||||
{
|
||||
self.relaysessionid = relaysessionid
|
||||
self.audiobase64 = audiobase64
|
||||
self.timestamp = timestamp
|
||||
}
|
||||
|
||||
private enum CodingKeys: String, CodingKey {
|
||||
case relaysessionid = "relaySessionId"
|
||||
case audiobase64 = "audioBase64"
|
||||
case timestamp
|
||||
}
|
||||
}
|
||||
|
||||
public struct TalkRealtimeRelayCancelParams: Codable, Sendable {
|
||||
public let relaysessionid: String
|
||||
public let reason: String?
|
||||
|
||||
public init(
|
||||
relaysessionid: String,
|
||||
reason: String?)
|
||||
{
|
||||
self.relaysessionid = relaysessionid
|
||||
self.reason = reason
|
||||
}
|
||||
|
||||
private enum CodingKeys: String, CodingKey {
|
||||
case relaysessionid = "relaySessionId"
|
||||
case reason
|
||||
}
|
||||
}
|
||||
|
||||
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
|
||||
}
|
||||
}
|
||||
|
||||
public struct TalkRealtimeToolCallParams: Codable, Sendable {
|
||||
public struct TalkClientToolCallParams: Codable, Sendable {
|
||||
public let sessionkey: String
|
||||
public let callid: String
|
||||
public let name: String
|
||||
@@ -3296,7 +2808,7 @@ public struct TalkRealtimeToolCallParams: Codable, Sendable {
|
||||
}
|
||||
}
|
||||
|
||||
public struct TalkRealtimeToolCallResult: Codable, Sendable {
|
||||
public struct TalkClientToolCallResult: Codable, Sendable {
|
||||
public let runid: String
|
||||
public let idempotencykey: String
|
||||
|
||||
@@ -3314,105 +2826,381 @@ public struct TalkRealtimeToolCallResult: Codable, Sendable {
|
||||
}
|
||||
}
|
||||
|
||||
public struct TalkTranscriptionSessionParams: Codable, Sendable {
|
||||
public let provider: String?
|
||||
public struct TalkConfigParams: Codable, Sendable {
|
||||
public let includesecrets: Bool?
|
||||
|
||||
public init(
|
||||
provider: String?)
|
||||
includesecrets: Bool?)
|
||||
{
|
||||
self.provider = provider
|
||||
self.includesecrets = includesecrets
|
||||
}
|
||||
|
||||
private enum CodingKeys: String, CodingKey {
|
||||
case provider
|
||||
case includesecrets = "includeSecrets"
|
||||
}
|
||||
}
|
||||
|
||||
public struct TalkTranscriptionSessionResult: Codable, Sendable {
|
||||
public let provider: String
|
||||
public let mode: String
|
||||
public let transport: String
|
||||
public let transcriptionsessionid: String
|
||||
public let audio: [String: AnyCodable]
|
||||
public let expiresat: Double
|
||||
public struct TalkConfigResult: Codable, Sendable {
|
||||
public let config: [String: AnyCodable]
|
||||
|
||||
public init(
|
||||
provider: String,
|
||||
mode: String,
|
||||
transport: String,
|
||||
transcriptionsessionid: String,
|
||||
audio: [String: AnyCodable],
|
||||
expiresat: Double)
|
||||
config: [String: AnyCodable])
|
||||
{
|
||||
self.provider = provider
|
||||
self.mode = mode
|
||||
self.transport = transport
|
||||
self.transcriptionsessionid = transcriptionsessionid
|
||||
self.audio = audio
|
||||
self.expiresat = expiresat
|
||||
self.config = config
|
||||
}
|
||||
|
||||
private enum CodingKeys: String, CodingKey {
|
||||
case provider
|
||||
case mode
|
||||
case transport
|
||||
case transcriptionsessionid = "transcriptionSessionId"
|
||||
case audio
|
||||
case expiresat = "expiresAt"
|
||||
case config
|
||||
}
|
||||
}
|
||||
|
||||
public struct TalkTranscriptionRelayAudioParams: Codable, Sendable {
|
||||
public let transcriptionsessionid: String
|
||||
public struct TalkSessionAppendAudioParams: Codable, Sendable {
|
||||
public let sessionid: String
|
||||
public let audiobase64: String
|
||||
public let timestamp: Double?
|
||||
|
||||
public init(
|
||||
transcriptionsessionid: String,
|
||||
audiobase64: String)
|
||||
sessionid: String,
|
||||
audiobase64: String,
|
||||
timestamp: Double?)
|
||||
{
|
||||
self.transcriptionsessionid = transcriptionsessionid
|
||||
self.sessionid = sessionid
|
||||
self.audiobase64 = audiobase64
|
||||
self.timestamp = timestamp
|
||||
}
|
||||
|
||||
private enum CodingKeys: String, CodingKey {
|
||||
case transcriptionsessionid = "transcriptionSessionId"
|
||||
case sessionid = "sessionId"
|
||||
case audiobase64 = "audioBase64"
|
||||
case timestamp
|
||||
}
|
||||
}
|
||||
|
||||
public struct TalkTranscriptionRelayCancelParams: Codable, Sendable {
|
||||
public let transcriptionsessionid: String
|
||||
public struct TalkSessionCancelOutputParams: Codable, Sendable {
|
||||
public let sessionid: String
|
||||
public let turnid: String?
|
||||
public let reason: String?
|
||||
|
||||
public init(
|
||||
transcriptionsessionid: String,
|
||||
sessionid: String,
|
||||
turnid: String?,
|
||||
reason: String?)
|
||||
{
|
||||
self.transcriptionsessionid = transcriptionsessionid
|
||||
self.sessionid = sessionid
|
||||
self.turnid = turnid
|
||||
self.reason = reason
|
||||
}
|
||||
|
||||
private enum CodingKeys: String, CodingKey {
|
||||
case transcriptionsessionid = "transcriptionSessionId"
|
||||
case sessionid = "sessionId"
|
||||
case turnid = "turnId"
|
||||
case reason
|
||||
}
|
||||
}
|
||||
|
||||
public struct TalkTranscriptionRelayStopParams: Codable, Sendable {
|
||||
public let transcriptionsessionid: String
|
||||
public struct TalkSessionCancelTurnParams: Codable, Sendable {
|
||||
public let sessionid: String
|
||||
public let turnid: String?
|
||||
public let reason: String?
|
||||
|
||||
public init(
|
||||
transcriptionsessionid: String)
|
||||
sessionid: String,
|
||||
turnid: String?,
|
||||
reason: String?)
|
||||
{
|
||||
self.transcriptionsessionid = transcriptionsessionid
|
||||
self.sessionid = sessionid
|
||||
self.turnid = turnid
|
||||
self.reason = reason
|
||||
}
|
||||
|
||||
private enum CodingKeys: String, CodingKey {
|
||||
case transcriptionsessionid = "transcriptionSessionId"
|
||||
case sessionid = "sessionId"
|
||||
case turnid = "turnId"
|
||||
case reason
|
||||
}
|
||||
}
|
||||
|
||||
public struct TalkTranscriptionRelayOkResult: Codable, Sendable {
|
||||
public struct TalkSessionCreateParams: Codable, Sendable {
|
||||
public let sessionkey: String?
|
||||
public let provider: String?
|
||||
public let model: String?
|
||||
public let voice: String?
|
||||
public let mode: AnyCodable?
|
||||
public let transport: AnyCodable?
|
||||
public let brain: AnyCodable?
|
||||
public let ttlms: Int?
|
||||
|
||||
public init(
|
||||
sessionkey: String?,
|
||||
provider: String?,
|
||||
model: String?,
|
||||
voice: String?,
|
||||
mode: AnyCodable?,
|
||||
transport: AnyCodable?,
|
||||
brain: AnyCodable?,
|
||||
ttlms: Int?)
|
||||
{
|
||||
self.sessionkey = sessionkey
|
||||
self.provider = provider
|
||||
self.model = model
|
||||
self.voice = voice
|
||||
self.mode = mode
|
||||
self.transport = transport
|
||||
self.brain = brain
|
||||
self.ttlms = ttlms
|
||||
}
|
||||
|
||||
private enum CodingKeys: String, CodingKey {
|
||||
case sessionkey = "sessionKey"
|
||||
case provider
|
||||
case model
|
||||
case voice
|
||||
case mode
|
||||
case transport
|
||||
case brain
|
||||
case ttlms = "ttlMs"
|
||||
}
|
||||
}
|
||||
|
||||
public struct TalkSessionCreateResult: Codable, Sendable {
|
||||
public let sessionid: String
|
||||
public let provider: String?
|
||||
public let mode: AnyCodable
|
||||
public let transport: AnyCodable
|
||||
public let brain: AnyCodable
|
||||
public let relaysessionid: String?
|
||||
public let transcriptionsessionid: String?
|
||||
public let handoffid: String?
|
||||
public let roomid: String?
|
||||
public let roomurl: String?
|
||||
public let token: String?
|
||||
public let audio: AnyCodable?
|
||||
public let model: String?
|
||||
public let voice: String?
|
||||
public let expiresat: Double?
|
||||
|
||||
public init(
|
||||
sessionid: String,
|
||||
provider: String?,
|
||||
mode: AnyCodable,
|
||||
transport: AnyCodable,
|
||||
brain: AnyCodable,
|
||||
relaysessionid: String?,
|
||||
transcriptionsessionid: String?,
|
||||
handoffid: String?,
|
||||
roomid: String?,
|
||||
roomurl: String?,
|
||||
token: String?,
|
||||
audio: AnyCodable?,
|
||||
model: String?,
|
||||
voice: String?,
|
||||
expiresat: Double?)
|
||||
{
|
||||
self.sessionid = sessionid
|
||||
self.provider = provider
|
||||
self.mode = mode
|
||||
self.transport = transport
|
||||
self.brain = brain
|
||||
self.relaysessionid = relaysessionid
|
||||
self.transcriptionsessionid = transcriptionsessionid
|
||||
self.handoffid = handoffid
|
||||
self.roomid = roomid
|
||||
self.roomurl = roomurl
|
||||
self.token = token
|
||||
self.audio = audio
|
||||
self.model = model
|
||||
self.voice = voice
|
||||
self.expiresat = expiresat
|
||||
}
|
||||
|
||||
private enum CodingKeys: String, CodingKey {
|
||||
case sessionid = "sessionId"
|
||||
case provider
|
||||
case mode
|
||||
case transport
|
||||
case brain
|
||||
case relaysessionid = "relaySessionId"
|
||||
case transcriptionsessionid = "transcriptionSessionId"
|
||||
case handoffid = "handoffId"
|
||||
case roomid = "roomId"
|
||||
case roomurl = "roomUrl"
|
||||
case token
|
||||
case audio
|
||||
case model
|
||||
case voice
|
||||
case expiresat = "expiresAt"
|
||||
}
|
||||
}
|
||||
|
||||
public struct TalkSessionJoinParams: Codable, Sendable {
|
||||
public let sessionid: String
|
||||
public let token: String
|
||||
|
||||
public init(
|
||||
sessionid: String,
|
||||
token: String)
|
||||
{
|
||||
self.sessionid = sessionid
|
||||
self.token = token
|
||||
}
|
||||
|
||||
private enum CodingKeys: String, CodingKey {
|
||||
case sessionid = "sessionId"
|
||||
case token
|
||||
}
|
||||
}
|
||||
|
||||
public struct TalkSessionJoinResult: Codable, Sendable {
|
||||
public let id: String
|
||||
public let roomid: String
|
||||
public let roomurl: String
|
||||
public let sessionkey: String
|
||||
public let sessionid: String?
|
||||
public let channel: String?
|
||||
public let target: String?
|
||||
public let provider: String?
|
||||
public let model: String?
|
||||
public let voice: String?
|
||||
public let mode: AnyCodable
|
||||
public let transport: AnyCodable
|
||||
public let brain: AnyCodable
|
||||
public let createdat: Double
|
||||
public let expiresat: Double
|
||||
public let room: [String: AnyCodable]
|
||||
|
||||
public init(
|
||||
id: String,
|
||||
roomid: String,
|
||||
roomurl: String,
|
||||
sessionkey: String,
|
||||
sessionid: String?,
|
||||
channel: String?,
|
||||
target: String?,
|
||||
provider: String?,
|
||||
model: String?,
|
||||
voice: String?,
|
||||
mode: AnyCodable,
|
||||
transport: AnyCodable,
|
||||
brain: AnyCodable,
|
||||
createdat: Double,
|
||||
expiresat: Double,
|
||||
room: [String: AnyCodable])
|
||||
{
|
||||
self.id = id
|
||||
self.roomid = roomid
|
||||
self.roomurl = roomurl
|
||||
self.sessionkey = sessionkey
|
||||
self.sessionid = sessionid
|
||||
self.channel = channel
|
||||
self.target = target
|
||||
self.provider = provider
|
||||
self.model = model
|
||||
self.voice = voice
|
||||
self.mode = mode
|
||||
self.transport = transport
|
||||
self.brain = brain
|
||||
self.createdat = createdat
|
||||
self.expiresat = expiresat
|
||||
self.room = room
|
||||
}
|
||||
|
||||
private enum CodingKeys: String, CodingKey {
|
||||
case id
|
||||
case roomid = "roomId"
|
||||
case roomurl = "roomUrl"
|
||||
case sessionkey = "sessionKey"
|
||||
case sessionid = "sessionId"
|
||||
case channel
|
||||
case target
|
||||
case provider
|
||||
case model
|
||||
case voice
|
||||
case mode
|
||||
case transport
|
||||
case brain
|
||||
case createdat = "createdAt"
|
||||
case expiresat = "expiresAt"
|
||||
case room
|
||||
}
|
||||
}
|
||||
|
||||
public struct TalkSessionTurnParams: Codable, Sendable {
|
||||
public let sessionid: String
|
||||
public let turnid: String?
|
||||
|
||||
public init(
|
||||
sessionid: String,
|
||||
turnid: String?)
|
||||
{
|
||||
self.sessionid = sessionid
|
||||
self.turnid = turnid
|
||||
}
|
||||
|
||||
private enum CodingKeys: String, CodingKey {
|
||||
case sessionid = "sessionId"
|
||||
case turnid = "turnId"
|
||||
}
|
||||
}
|
||||
|
||||
public struct TalkSessionTurnResult: Codable, Sendable {
|
||||
public let ok: Bool
|
||||
public let turnid: String?
|
||||
public let events: [TalkEvent]?
|
||||
|
||||
public init(
|
||||
ok: Bool,
|
||||
turnid: String?,
|
||||
events: [TalkEvent]?)
|
||||
{
|
||||
self.ok = ok
|
||||
self.turnid = turnid
|
||||
self.events = events
|
||||
}
|
||||
|
||||
private enum CodingKeys: String, CodingKey {
|
||||
case ok
|
||||
case turnid = "turnId"
|
||||
case events
|
||||
}
|
||||
}
|
||||
|
||||
public struct TalkSessionSubmitToolResultParams: Codable, Sendable {
|
||||
public let sessionid: String
|
||||
public let callid: String
|
||||
public let result: AnyCodable
|
||||
|
||||
public init(
|
||||
sessionid: String,
|
||||
callid: String,
|
||||
result: AnyCodable)
|
||||
{
|
||||
self.sessionid = sessionid
|
||||
self.callid = callid
|
||||
self.result = result
|
||||
}
|
||||
|
||||
private enum CodingKeys: String, CodingKey {
|
||||
case sessionid = "sessionId"
|
||||
case callid = "callId"
|
||||
case result
|
||||
}
|
||||
}
|
||||
|
||||
public struct TalkSessionCloseParams: Codable, Sendable {
|
||||
public let sessionid: String
|
||||
|
||||
public init(
|
||||
sessionid: String)
|
||||
{
|
||||
self.sessionid = sessionid
|
||||
}
|
||||
|
||||
private enum CodingKeys: String, CodingKey {
|
||||
case sessionid = "sessionId"
|
||||
}
|
||||
}
|
||||
|
||||
public struct TalkSessionOkResult: Codable, Sendable {
|
||||
public let ok: Bool
|
||||
|
||||
public init(
|
||||
|
||||
Reference in New Issue
Block a user