getLiveVideos method
Future<PaginatedVideos>
getLiveVideos([
- VideoFilter filter = const VideoFilter(includes: [Includes.liveInfo], limit: 50, maxUpcomingHours: 48, offset: 0, order: Order.ascending, sort: [VideoSort.availableAt], status: [VideoStatus.live, VideoStatus.upcoming], type: VideoType.stream, paginated: false)
Get a list of live streams
This is somewhat similar to calling getVideos, except this endpoint imposes default values on the query parameters. You can choose to override them by providing your own values.
Implementation
Future<PaginatedVideos> getLiveVideos([
VideoFilter filter = const VideoFilter(
includes: [Includes.liveInfo],
limit: 50,
maxUpcomingHours: 48,
offset: 0,
order: Order.ascending,
sort: [VideoSort.availableAt],
status: [VideoStatus.live, VideoStatus.upcoming],
type: VideoType.stream,
paginated: false,
),
]) async {
final Map<String, dynamic> params = filter.toJson();
final response = await getEndpoint(HolodexEndpoint.live, params: params);
if (filter.paginated) {
// Grab total and return with it
final videoList = PaginatedVideos.fromString(response.body);
return videoList.copyWith(paginated: true);
}
final List<dynamic> list = jsonDecode(response.body);
return PaginatedVideos(
items: list.map((video) => VideoFull.fromJson(video)).toList(),
);
}