Example #1
0
        public bool Command(string cmd, string parameter)
        {
            HttpWebRequest request;
            var            returnContent = false;

            var uri = @"http://" + _parent.IP + ":" + _parent.Port + "/MCWS/v1/Playback/" + cmd + "?Token=" + _parent.JRiverAuthToken;

            if (!String.IsNullOrEmpty(parameter))
            {
                uri += "&" + parameter;
            }

            _parent.Log("JRiver:  Command [62] ************ " + uri);
            try
            {
                request = (HttpWebRequest)WebRequest.Create(new Uri(uri));
                request.Headers.Add("Token", _parent.JRiverAuthToken);

                request.Method  = "GET";
                request.Timeout = 1000;
                _parent.Log("JRiver COMMAND via MPC : " + cmd);
                _parent.Trace(uri);
                using (var response = (HttpWebResponse)request.GetResponse())
                {
                    using (var stream = response.GetResponseStream())
                    {
                        if (stream != null)
                        {
                            using (var reader = new StreamReader(stream, Encoding.UTF8))
                            {
                                var reqContent = reader.ReadToEnd();
                                //_parent.Trace(reqContent);
                                returnContent = true;
                            }
                        }
                    }
                }
            }
            catch (WebException e)
            {
                _parent.Log("ERROR - JRiver via MPC Command : " + cmd + " - " + e.Message);
                if (e.Status == WebExceptionStatus.Timeout)
                {
                    // _parent.MpcLoaded = false;
                }
            }
            return(returnContent);
        }
Example #2
0
        public bool DownloadImages(ApiImageDownloadInfo apiImageDownloadInfo)
        {
            try
            {
                if (apiImageDownloadInfo == null)
                {
                    return(false);
                }

                bool res = false;

                if (apiImageDownloadInfo.Source.Contains(_parent.IP) || apiImageDownloadInfo.Source.Contains("http"))
                {
                    _parent.Trace("----------DOWNLOAD IMAGES OKAY checking for presence of Server IP Address in source to select DOwnload Method - Server IP Found");
                    res = DownloadRemoteImageFile(apiImageDownloadInfo.Source, apiImageDownloadInfo.Destination);
                }
                else
                {
                    res = Download(apiImageDownloadInfo.Source, apiImageDownloadInfo.Destination);
                }


                if (res)
                {
                    if (apiImageDownloadInfo.ToThumb)
                    {
                        _parent.GenerateThumb(apiImageDownloadInfo.Destination, apiImageDownloadInfo.Destination, apiImageDownloadInfo.MaxHeight);
                    }
                }
                return(res);
            }
            catch (System.Exception ex)
            {
                _parent.Log("Exception in Download Images Caught Should continue " + ex);
                return(false);

                ;
            }
        }
Example #3
0
        public void getallItems(string url)
        {
            _parent.Trace("***** Jriver getallItems: Allitems Count =" + Allitems.Count.ToString());

            // Delete now misnamed allitems
            _parent.Trace("Deleting allItems as rerun...");
            Allitems.Clear();
            return;

            try
            {
                _parent.Trace(System.Environment.NewLine + "getAllItems:  Need to pull the whole Database...." + _parent.IP + System.Environment.NewLine);
                //string NPurl = "http://" + _parent.IP + ":" + _parent.Port + "/MCWS/v1/Files/Search?Action=mpl&ActiveFile=-1&Zone=-1&ZoneType=ID&Token=" + _parent.JRiverAuthToken;
                // http://192.168.1.97:52199/MCWS/v1/Files/Search?Action=mpl&ActiveFile=-1&Zone=-1&ZoneType=ID

                string NPurl = "http://" + _parent.IP + ":" + _parent.Port + url + "&Token=" + _parent.JRiverAuthToken;
                _parent.Trace(" Trying this:" + NPurl + System.Environment.NewLine);

                var request = WebRequest.CreateHttp(NPurl);
                request.Method  = "get";
                request.Timeout = 15000000;
                var response = request.GetResponse();

                if (((HttpWebResponse)response).StatusCode == HttpStatusCode.OK)
                {
                    //public List<Jriver.Api.AllDatabase.MPLItemField> items = new List<Jriver.Api.AllDatabase.MPLItemField>();
                    // Get the stream containing content returned by the server.
                    System.IO.Stream dataStream = response.GetResponseStream();
                    // Open the stream using a StreamReader.
                    XmlSerializer          serializer = new XmlSerializer(typeof(Jriver.Api.AllDatabase.MPL));
                    System.IO.StreamReader reader     = new System.IO.StreamReader(dataStream);
                    var deserialized = (Jriver.Api.AllDatabase.MPL)serializer.Deserialize(reader);

                    foreach (var entry in deserialized.Item)
                    {
                        Dictionary <string, string> newItem = new Dictionary <string, string>();
                        foreach (var Field in entry.Field)
                        {
                            newItem.Add(Field.Name, Field.Text);
                            //   _parent.Trace("*** Adding:" + Field.Name + "  and Value=" + Field.Text);
                        }
                        Allitems.Add(newItem);
                    }
                }
            }
            catch (Exception Ex)
            {
                _parent.Trace(System.Environment.NewLine + "Another getAllitems exception" + Ex);
            }
        }
Example #4
0
        public List <string> GetMovieIcons(Jriver.Api.getFileInfo.MPL Movieitem)
        {
            List <string> MovieIcons = new List <string>();

            _parent.Trace("MovieIcons Generating List:");
            // Make sure not null;

            MovieIcons.Add("");

            try
            {
                //Container
                if (Movieitem != null)
                {
                    var Compression = getFieldValue(Movieitem, "Compression");

                    if (Compression != null && Compression != "")
                    {
                        var video      = Compression.Split(' ');
                        var videoCodec = video[3].Remove(video[3].Length - 1).ToUpper();
                        var audioCodec = video[5].Remove(video[5].Length - 1).ToUpper();

                        videoCodec = "codec" + videoCodec;

                        MovieIcons.Add(videoCodec);
                        MovieIcons.Add(audioCodec);
                        _parent.Trace("MovieIcons Adding:" + videoCodec);
                        _parent.Trace("MovieIcons Adding:" + audioCodec);
                    }


                    var Channels = getFieldValue(Movieitem, "Channels");

                    if (Channels != "0" && !string.IsNullOrWhiteSpace(Channels) && Channels != "")
                    {
                        MovieIcons.Add("Channels" + Channels.ToString());
                        _parent.Trace("MovieIcons Adding Channels:" + Channels.ToString());
                    }

                    var fileType = getFieldValue(Movieitem, "File Type");
                    MovieIcons.Add(fileType);
                    _parent.Trace("MovieIcons Adding FileType:" + fileType);

                    var getVideoHeight = getFieldValue(Movieitem, "Height");

                    if (getVideoHeight != null && getVideoHeight != "")
                    {
                        var VideoHeight = Convert.ToInt32(getVideoHeight);
                        _parent.Trace("MovieIcons VideoHeight Converted:" + VideoHeight);
                        if (VideoHeight > 1200)
                        {
                            MovieIcons.Add("4K");
                            _parent.Trace("MoviesIcons Adding 4K");
                        }
                        else if (VideoHeight >= 790)
                        {
                            MovieIcons.Add("1080p");
                            _parent.Trace("MoviesIcons Adding 1080p");
                        }
                        else if (VideoHeight >= 700)
                        {
                            MovieIcons.Add("720p");
                            _parent.Trace("MoviesIcons Adding 720p");
                        }
                        else if (VideoHeight >= 400)
                        {
                            MovieIcons.Add("480P");
                            _parent.Trace("MoviesIcons Adding 480p");
                        }
                        else
                        {
                            MovieIcons.Add("SD");
                            _parent.Trace("MoviesIcons Adding SD");
                        }
                    }

                    var aspect = getFieldValue(Movieitem, "Aspect Ratio");
                    if (aspect != "" && aspect != null)
                    {
                        MovieIcons.Add(aspect);
                        _parent.Trace("MovieIcons Adding Aspect:" + aspect.ToString());
                    }
                }
            }
            catch (Exception ex)
            {
                _parent.Trace("MovieIcons Exception Caught Within NowPlaying Codec Check:" + ex);
                return(MovieIcons);
            }

            return(MovieIcons);
        }