Ejemplo n.º 1
0
        public async Task <string> PlaySingleMedia(string accessToken, string deviceId, string mediaUri, string mediaTitle, string mediaArtworkUrl, CancellationToken ct)
        {
            var uri = new Uri($"{this.apiRoot}/players/{deviceId}/play");

            var payload = new PlayableItemModel {
                Uri = mediaUri, Title = mediaTitle, Artwork = mediaArtworkUrl
            };

            var statusCode = await this.restClient.Put(ct, uri, null, Headers(accessToken), payload);

            if (statusCode != HttpStatusCode.OK)
            {
                throw new LinnApiException(statusCode);
            }

            return(DateTime.UtcNow.ToString("o"));
        }
Ejemplo n.º 2
0
        public WhePlayingSingleMediaOnASpecificDevice()
        {
            this.accessToken = Guid.NewGuid().ToString();

            this.deviceId = Guid.NewGuid().ToString();

            this.mediaTitle = "MY_TITLE";

            this.mediaArtworkUrl = "http://localhost/media/linn.jpg";

            this.mediaUrl = "http://localhost/media/linn.flac";

            this.RestClient.Put(
                Arg.Any <CancellationToken>(),
                Arg.Any <Uri>(),
                Arg.Any <Dictionary <string, string> >(),
                Arg.Any <Dictionary <string, string[]> >(),
                Arg.Do <PlayableItemModel>(d => this.payload = d)).Returns(HttpStatusCode.OK);

            this.result = this.Sut.PlaySingleMedia(this.accessToken, this.deviceId, this.mediaUrl, this.mediaTitle, this.mediaArtworkUrl, CancellationToken.None).Result;
        }