2022-04-12 14:28:47 +02:00
|
|
|
//
|
|
|
|
// PlaybackSession.swift
|
|
|
|
// App
|
|
|
|
//
|
|
|
|
// Created by Rasmus Krämer on 12.04.22.
|
|
|
|
//
|
|
|
|
|
|
|
|
import Foundation
|
|
|
|
|
2022-04-14 11:54:53 +02:00
|
|
|
struct PlaybackSession: Decodable {
|
2022-04-12 14:28:47 +02:00
|
|
|
var id: String
|
|
|
|
var userId: String?
|
|
|
|
var libraryItemId: String?
|
|
|
|
var episodeId: String?
|
|
|
|
var mediaType: String
|
|
|
|
// var mediaMetadata: MediaTypeMetadata - It is not implemented in android?
|
|
|
|
var chapters: [Chapter]
|
|
|
|
var displayTitle: String?
|
|
|
|
var displayAuthor: String?
|
|
|
|
var coverPath: String?
|
|
|
|
var duration: Double
|
|
|
|
var playMethod: Int
|
2022-04-14 11:54:53 +02:00
|
|
|
var startedAt: Double?
|
|
|
|
var updatedAt: Double?
|
2022-04-12 14:28:47 +02:00
|
|
|
var timeListening: Double
|
|
|
|
var audioTracks: [AudioTrack]
|
|
|
|
var currentTime: Double
|
|
|
|
// var libraryItem: LibraryItem?
|
|
|
|
// var localLibraryItem: LocalLibraryItem?
|
|
|
|
var serverConnectionConfigId: String?
|
|
|
|
var serverAddress: String?
|
|
|
|
}
|
2022-04-14 11:54:53 +02:00
|
|
|
struct Chapter: Decodable {
|
2022-04-12 14:28:47 +02:00
|
|
|
var id: Int
|
|
|
|
var start: Double
|
|
|
|
var end: Double
|
|
|
|
var title: String?
|
|
|
|
}
|
2022-04-14 11:54:53 +02:00
|
|
|
struct AudioTrack: Decodable {
|
|
|
|
var index: Int?
|
2022-04-12 14:28:47 +02:00
|
|
|
var startOffset: Double
|
|
|
|
var duration: Double
|
|
|
|
var title: String
|
|
|
|
var contentUrl: String
|
|
|
|
var mimeType: String
|
|
|
|
var metadata: FileMetadata?
|
|
|
|
// var isLocal: Bool
|
|
|
|
// var localFileId: String?
|
2022-04-14 11:54:53 +02:00
|
|
|
// var audioProbeResult: AudioProbeResult? Needed for local playback
|
2022-04-12 14:28:47 +02:00
|
|
|
var serverIndex: Int?
|
|
|
|
}
|
2022-04-14 11:54:53 +02:00
|
|
|
struct FileMetadata: Decodable {
|
2022-04-12 14:28:47 +02:00
|
|
|
var filename: String
|
|
|
|
var ext: String
|
|
|
|
var path: String
|
|
|
|
var relPath: String
|
|
|
|
}
|