Trendsic Platform Service

<back to all web services

LobbyPlayRequest

The following routes are available for this service:
GET,OPTIONS/v1/lobby/{LocationId}/play
import 'package:servicestack/servicestack.dart';

class LobbyContentItem implements IConvertible
{
    int? LobbyContentId;
    String? Title;
    String? Kind;
    bool? HasMedia;
    String? MediaUrl;
    String? Headline;
    String? Body;
    String? Accent;
    String? Url;
    int? DwellSec;
    DateTime? StartsAt;
    DateTime? EndsAt;
    int? DaysMask;
    int? HourFrom;
    int? HourTo;
    bool? IsThirdParty;
    String? Status;
    bool? AllBranches;
    List<String>? BranchIds = [];
    int? Plays7d;
    bool? OnNow;
    int? SortOrder;
    String? CreatedBy;
    DateTime? UpdatedAt;

    LobbyContentItem({this.LobbyContentId,this.Title,this.Kind,this.HasMedia,this.MediaUrl,this.Headline,this.Body,this.Accent,this.Url,this.DwellSec,this.StartsAt,this.EndsAt,this.DaysMask,this.HourFrom,this.HourTo,this.IsThirdParty,this.Status,this.AllBranches,this.BranchIds,this.Plays7d,this.OnNow,this.SortOrder,this.CreatedBy,this.UpdatedAt});
    LobbyContentItem.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        LobbyContentId = json['LobbyContentId'];
        Title = json['Title'];
        Kind = json['Kind'];
        HasMedia = json['HasMedia'];
        MediaUrl = json['MediaUrl'];
        Headline = json['Headline'];
        Body = json['Body'];
        Accent = json['Accent'];
        Url = json['Url'];
        DwellSec = json['DwellSec'];
        StartsAt = JsonConverters.fromJson(json['StartsAt'],'DateTime',context!);
        EndsAt = JsonConverters.fromJson(json['EndsAt'],'DateTime',context!);
        DaysMask = json['DaysMask'];
        HourFrom = json['HourFrom'];
        HourTo = json['HourTo'];
        IsThirdParty = json['IsThirdParty'];
        Status = json['Status'];
        AllBranches = json['AllBranches'];
        BranchIds = JsonConverters.fromJson(json['BranchIds'],'List<String>',context!);
        Plays7d = json['Plays7d'];
        OnNow = json['OnNow'];
        SortOrder = json['SortOrder'];
        CreatedBy = json['CreatedBy'];
        UpdatedAt = JsonConverters.fromJson(json['UpdatedAt'],'DateTime',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'LobbyContentId': LobbyContentId,
        'Title': Title,
        'Kind': Kind,
        'HasMedia': HasMedia,
        'MediaUrl': MediaUrl,
        'Headline': Headline,
        'Body': Body,
        'Accent': Accent,
        'Url': Url,
        'DwellSec': DwellSec,
        'StartsAt': JsonConverters.toJson(StartsAt,'DateTime',context!),
        'EndsAt': JsonConverters.toJson(EndsAt,'DateTime',context!),
        'DaysMask': DaysMask,
        'HourFrom': HourFrom,
        'HourTo': HourTo,
        'IsThirdParty': IsThirdParty,
        'Status': Status,
        'AllBranches': AllBranches,
        'BranchIds': JsonConverters.toJson(BranchIds,'List<String>',context!),
        'Plays7d': Plays7d,
        'OnNow': OnNow,
        'SortOrder': SortOrder,
        'CreatedBy': CreatedBy,
        'UpdatedAt': JsonConverters.toJson(UpdatedAt,'DateTime',context!)
    };

    getTypeName() => "LobbyContentItem";
    TypeContext? context = _ctx;
}

class LobbyPlayResponse implements IConvertible
{
    ResponseStatus? ResponseStatus;
    List<LobbyContentItem>? Items = [];
    String? ZoneMode;
    int? TakeoverEveryMin;
    int? TakeoverSec;
    bool? IdleScreen;
    DateTime? BranchLocalNow;

    LobbyPlayResponse({this.ResponseStatus,this.Items,this.ZoneMode,this.TakeoverEveryMin,this.TakeoverSec,this.IdleScreen,this.BranchLocalNow});
    LobbyPlayResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        ResponseStatus = JsonConverters.fromJson(json['ResponseStatus'],'ResponseStatus',context!);
        Items = JsonConverters.fromJson(json['Items'],'List<LobbyContentItem>',context!);
        ZoneMode = json['ZoneMode'];
        TakeoverEveryMin = json['TakeoverEveryMin'];
        TakeoverSec = json['TakeoverSec'];
        IdleScreen = json['IdleScreen'];
        BranchLocalNow = JsonConverters.fromJson(json['BranchLocalNow'],'DateTime',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'ResponseStatus': JsonConverters.toJson(ResponseStatus,'ResponseStatus',context!),
        'Items': JsonConverters.toJson(Items,'List<LobbyContentItem>',context!),
        'ZoneMode': ZoneMode,
        'TakeoverEveryMin': TakeoverEveryMin,
        'TakeoverSec': TakeoverSec,
        'IdleScreen': IdleScreen,
        'BranchLocalNow': JsonConverters.toJson(BranchLocalNow,'DateTime',context!)
    };

    getTypeName() => "LobbyPlayResponse";
    TypeContext? context = _ctx;
}

class LobbyPlayRequest implements IConvertible
{
    String? LocationId;

    LobbyPlayRequest({this.LocationId});
    LobbyPlayRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        LocationId = json['LocationId'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'LocationId': LocationId
    };

    getTypeName() => "LobbyPlayRequest";
    TypeContext? context = _ctx;
}

TypeContext _ctx = TypeContext(library: 'api.dev.dynamics.trendsic.com', types: <String, TypeInfo> {
    'LobbyContentItem': TypeInfo(TypeOf.Class, create:() => LobbyContentItem()),
    'LobbyPlayResponse': TypeInfo(TypeOf.Class, create:() => LobbyPlayResponse()),
    'List<LobbyContentItem>': TypeInfo(TypeOf.Class, create:() => <LobbyContentItem>[]),
    'LobbyPlayRequest': TypeInfo(TypeOf.Class, create:() => LobbyPlayRequest()),
});

Dart LobbyPlayRequest DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .csv suffix or ?format=csv

HTTP + CSV

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

GET /v1/lobby/{LocationId}/play HTTP/1.1 
Host: api.dev.dynamics.trendsic.com 
Accept: text/csv
HTTP/1.1 200 OK
Content-Type: text/csv
Content-Length: length

{"ResponseStatus":{"ErrorCode":"String","Message":"String","StackTrace":"String","Errors":[{"ErrorCode":"String","FieldName":"String","Message":"String","Meta":{"String":"String"}}],"Meta":{"String":"String"}},"Items":[{"LobbyContentId":0,"Title":"String","Kind":"String","HasMedia":false,"MediaUrl":"String","Headline":"String","Body":"String","Accent":"String","Url":"String","DwellSec":0,"StartsAt":"0001-01-01T00:00:00.0000000","EndsAt":"0001-01-01T00:00:00.0000000","DaysMask":0,"HourFrom":0,"HourTo":0,"IsThirdParty":false,"Status":"String","AllBranches":false,"BranchIds":["00000000000000000000000000000000"],"Plays7d":0,"OnNow":false,"SortOrder":0,"CreatedBy":"String","UpdatedAt":"0001-01-01T00:00:00.0000000"}],"ZoneMode":"String","TakeoverEveryMin":0,"TakeoverSec":0,"IdleScreen":false,"BranchLocalNow":"0001-01-01T00:00:00.0000000"}