Пример #1
0
        public WatchSharing()
        {
            mas = MPEServices.MAS;

            switch (Configuration.Streaming.WatchSharing)
            {
                case WatchService.Trakt:
                    enabled = true;
                    service = new Trakt.TraktBridge(mas, Configuration.Streaming.TraktConfiguration);
                    break;
                case WatchService.Debug:
                    enabled = true;
                    service = new WatchSharingDebug();
                    break;
                case WatchService.None:
                default:
                    enabled = false;
                    break;
            }
        }
Пример #2
0
        private void cmdConnect_Click(object sender, EventArgs e)
        {
            if (CURRENT_IP == "127.0.0.1" || CURRENT_IP == "localhost")
            {
                mWebStreamClient = ChannelFactory <IWebStreamingService> .CreateChannel(new NetNamedPipeBinding()
                {
                    MaxReceivedMessageSize = 10000000
                }, new EndpointAddress("net.pipe://localhost/MPExtended/StreamingService"));

                mStreamClient = ChannelFactory <IStreamingService> .CreateChannel(new NetNamedPipeBinding()
                {
                    MaxReceivedMessageSize = 10000000
                }, new EndpointAddress("net.pipe://localhost/MPExtended/StreamingService"));

                mServiceClient = ChannelFactory <IMediaAccessService> .CreateChannel(new NetNamedPipeBinding()
                {
                    MaxReceivedMessageSize = 10000000
                }, new EndpointAddress("net.pipe://localhost/MPExtended/MediaAccessService"));

                mTvClient = ChannelFactory <ITVAccessService> .CreateChannel(new NetNamedPipeBinding()
                {
                    MaxReceivedMessageSize = 10000000
                }, new EndpointAddress("net.pipe://localhost/MPExtended/TVAccessService"));
            }
            else
            {
#pragma warning disable 0162
                mWebStreamClient = ChannelFactory <IWebStreamingService> .CreateChannel(new BasicHttpBinding(), new EndpointAddress("http://" + CURRENT_IP + ":4321/MPExtended/StreamingService"));

                mStreamClient = ChannelFactory <IStreamingService> .CreateChannel(new BasicHttpBinding(), new EndpointAddress("http://" + CURRENT_IP + ":4321/MPExtended/StreamingService"));

                mServiceClient = ChannelFactory <IMediaAccessService> .CreateChannel(new BasicHttpBinding(), new EndpointAddress("http://" + CURRENT_IP + ":4321/MPExtended/MediaAccessService"));

                mTvClient = ChannelFactory <ITVAccessService> .CreateChannel(new BasicHttpBinding(), new EndpointAddress("http://" + CURRENT_IP + ":4321/MPExtended/TVAccessService"));

#pragma warning restore 0162
            }

            Log("Initialized");

            // providers
            var config = mServiceClient.GetServiceDescription();
            movieProvider = config.AvailableMovieLibraries.First().Id;
            fileProvider  = config.AvailableFileSystemLibraries.First().Id;

            // load movies
            try
            {
                cbMovies.Items.Clear();
                mMovies = mServiceClient.GetMoviesDetailed(movieProvider, null, null);
                foreach (WebMovieDetailed movie in mMovies)
                {
                    cbMovies.Items.Add(movie.Title);
                }

                Log("Loaded movies");
            }
            catch (Exception)
            {
                Log("Failed to connect to MAS");
            }

            // load chanels
            try
            {
                cbChannels.Items.Clear();
                mChannels = new List <WebChannelBasic>();
                foreach (WebChannelGroup group in mTvClient.GetGroups())
                {
                    WebChannelBasic[] channels = mTvClient.GetChannelsBasic(group.Id).ToArray();
                    foreach (WebChannelBasic ch in channels)
                    {
                        cbChannels.Items.Add(ch.Title);
                        mChannels.Add(ch);
                    }
                }
                Log("Loaded channels");
            }
            catch (Exception)
            {
                Log("Failed to connect to TV4Home");
            }

            // load profiles
            try
            {
                cbProfiles.Items.Clear();
                mProfiles = mWebStreamClient.GetTranscoderProfiles();
                foreach (WebTranscoderProfile profile in mProfiles)
                {
                    cbProfiles.Items.Add(profile.Name);
                }
                cbProfiles.SelectedIndex = 0;
            }
            catch (Exception)
            {
                Log("Failed to load profiles");
            }
        }
Пример #3
0
        private void cmdConnect_Click(object sender, EventArgs e)
        {
            if (CURRENT_IP == "127.0.0.1" || CURRENT_IP == "localhost")
            {

                mWebStreamClient = ChannelFactory<IWebStreamingService>.CreateChannel(new NetNamedPipeBinding() { MaxReceivedMessageSize = 10000000 }, new EndpointAddress("net.pipe://localhost/MPExtended/StreamingService"));
                mStreamClient = ChannelFactory<IStreamingService>.CreateChannel(new NetNamedPipeBinding() { MaxReceivedMessageSize = 10000000 }, new EndpointAddress("net.pipe://localhost/MPExtended/StreamingService"));
                mServiceClient = ChannelFactory<IMediaAccessService>.CreateChannel(new NetNamedPipeBinding() { MaxReceivedMessageSize = 10000000 }, new EndpointAddress("net.pipe://localhost/MPExtended/MediaAccessService"));
                mTvClient = ChannelFactory<ITVAccessService>.CreateChannel(new NetNamedPipeBinding() { MaxReceivedMessageSize = 10000000 }, new EndpointAddress("net.pipe://localhost/MPExtended/TVAccessService"));
            }
            else
            {
            #pragma warning disable 0162
                mWebStreamClient = ChannelFactory<IWebStreamingService>.CreateChannel(new BasicHttpBinding(), new EndpointAddress("http://" + CURRENT_IP + ":4321/MPExtended/StreamingService"));
                mStreamClient = ChannelFactory<IStreamingService>.CreateChannel(new BasicHttpBinding(), new EndpointAddress("http://" + CURRENT_IP + ":4321/MPExtended/StreamingService"));
                mServiceClient = ChannelFactory<IMediaAccessService>.CreateChannel(new BasicHttpBinding(), new EndpointAddress("http://" + CURRENT_IP + ":4321/MPExtended/MediaAccessService"));
                mTvClient = ChannelFactory<ITVAccessService>.CreateChannel(new BasicHttpBinding(), new EndpointAddress("http://" + CURRENT_IP + ":4321/MPExtended/TVAccessService"));
            #pragma warning restore 0162
            }

            Log("Initialized");

            // providers
            var config = mServiceClient.GetServiceDescription();
            movieProvider = config.AvailableMovieLibraries.First().Id;
            fileProvider = config.AvailableFileSystemLibraries.First().Id;

            // load movies
            try
            {
                cbMovies.Items.Clear();
                mMovies = mServiceClient.GetAllMoviesDetailed(movieProvider, null, null);
                foreach (WebMovieDetailed movie in mMovies)
                {
                    cbMovies.Items.Add(movie.Title);
                }

                Log("Loaded movies");
            }
            catch (Exception)
            {
                Log("Failed to connect to MAS");
            }

            // load chanels
            try
            {
                cbChannels.Items.Clear();
                mChannels = new List<WebChannelBasic>();
                foreach (WebChannelGroup group in mTvClient.GetGroups())
                {
                    WebChannelBasic[] channels = mTvClient.GetChannelsBasic(group.Id).ToArray();
                    foreach (WebChannelBasic ch in channels)
                    {
                        cbChannels.Items.Add(ch.DisplayName);
                        mChannels.Add(ch);
                    }
                }
                Log("Loaded channels");
            }
            catch (Exception)
            {
                Log("Failed to connect to TV4Home");
            }

            // load profiles
            try
            {
                cbProfiles.Items.Clear();
                mProfiles = mWebStreamClient.GetTranscoderProfiles();
                foreach (WebTranscoderProfile profile in mProfiles)
                {
                    cbProfiles.Items.Add(profile.Name);
                }
                cbProfiles.SelectedIndex = 0;
            }
            catch (Exception)
            {
                Log("Failed to load profiles");
            }
        }
Пример #4
0
 public TraktBridge(IMediaAccessService service, Dictionary<string, string> config)
 {
     this.service = service;
     this.username = config["username"];
     this.password = config["password"];
 }