예제 #1
0
파일: Core.cs 프로젝트: gocheap/ShokoServer
        /// <summary>
        /// Return trakt authtoken
        /// </summary>
        /// <returns></returns>
        private object GetTrakt()
        {
            Creditentials cred = new Creditentials();

            cred.token         = ServerSettings.Trakt_AuthToken;
            cred.refresh_token = ServerSettings.Trakt_RefreshToken;
            return(cred);
        }
예제 #2
0
파일: Core.cs 프로젝트: gocheap/ShokoServer
        /// <summary>
        /// Return current used MAL Creditentials
        /// </summary>
        /// <returns></returns>
        private object GetMAL()
        {
            Creditentials cred = new Creditentials();

            cred.login    = ServerSettings.MAL_Username;
            cred.password = ServerSettings.MAL_Password;
            return(cred);
        }
예제 #3
0
파일: Core.cs 프로젝트: gocheap/ShokoServer
        /// <summary>
        /// Return login/password/port of used AniDB
        /// </summary>
        /// <returns></returns>
        private object GetAniDB()
        {
            Creditentials cred = new Creditentials();

            cred.login    = ServerSettings.AniDB_Username;
            cred.password = ServerSettings.AniDB_Password;
            cred.port     = int.Parse(ServerSettings.AniDB_ClientPort);
            return(cred);
        }
예제 #4
0
파일: Core.cs 프로젝트: gocheap/ShokoServer
        /// <summary>
        /// Set Trakt PIN
        /// </summary>
        /// <returns></returns>
        private object SetTraktPIN()
        {
            Creditentials cred = this.Bind();

            if (!String.IsNullOrEmpty(cred.token) && cred.token != "")
            {
                ServerSettings.Trakt_PIN = cred.token;
                return(APIStatus.statusOK());
            }
            else
            {
                return(new APIMessage(400, "Token missing"));
            }
        }
예제 #5
0
파일: Core.cs 프로젝트: gocheap/ShokoServer
        /// <summary>
        /// Set JMMServer Port
        /// </summary>
        /// <returns></returns>
        private object SetPort()
        {
            Creditentials cred = this.Bind();

            if (cred.port != 0)
            {
                ServerSettings.JMMServerPort = cred.port.ToString();
                return(APIStatus.statusOK());
            }
            else
            {
                return(new APIMessage(400, "Port Missing"));
            }
        }
예제 #6
0
파일: Core.cs 프로젝트: gocheap/ShokoServer
        /// <summary>
        /// Set MAL account with login, password
        /// </summary>
        /// <returns></returns>
        private object SetMAL()
        {
            Creditentials cred = this.Bind();

            if (!String.IsNullOrEmpty(cred.login) && cred.login != "" && !String.IsNullOrEmpty(cred.password) && cred.password != "")
            {
                ServerSettings.MAL_Username = cred.login;
                ServerSettings.MAL_Password = cred.password;
                return(APIStatus.statusOK());
            }
            else
            {
                return(new APIMessage(400, "Login and Password missing"));
            }
        }
예제 #7
0
파일: Core.cs 프로젝트: gocheap/ShokoServer
        /// <summary>
        /// Set AniDB account with login, password and client port
        /// </summary>
        /// <returns></returns>
        private object SetAniDB()
        {
            Creditentials cred = this.Bind();

            if (!String.IsNullOrEmpty(cred.login) && cred.login != "" && !String.IsNullOrEmpty(cred.password) && cred.password != "")
            {
                ServerSettings.AniDB_Username = cred.login;
                ServerSettings.AniDB_Password = cred.password;
                if (cred.port != 0)
                {
                    ServerSettings.AniDB_ClientPort = cred.port.ToString();
                }
                return(APIStatus.statusOK());
            }
            else
            {
                return(new APIMessage(400, "Login and Password missing"));
            }
        }
예제 #8
0
        public ZeusMainViewModel()
        {
            try
            {
                //load creditentials
                _credits = new Creditentials();
                _credits.Load();
                //client
                HttpClient = new HttpClient();
                //speech recognition
                _microsoftSpeech             = new SpeechMicrosoft();
                _microsoftSpeech.Recognized += _microsoftSpeech_Recognized;
                //witAi
                _witAi = new SpeechWitAi(HttpClient,
                                         _credits.Credits.Where((x) => x.Provider == ApiProvider.WitAi).First().Path,
                                         _credits.Credits.Where((x) => x.Provider == ApiProvider.WitAi).First().Token);
                //voice recorder
                _recorder = new VoiceRecorder(0.05f, 1000);
                _recorder.DataAvailable    += Recorder_DataAvailable;
                _recorder.RecordingStopped += async(s, e) => await Recorder_RecordingStopped(s, e);

                //weather api
                _weatherApi = new WeatherApi(HttpClient,
                                             _credits.Credits.Where((x) => x.Provider == ApiProvider.OpenWeatherMap).First().Path,
                                             _credits.Credits.Where((x) => x.Provider == ApiProvider.OpenWeatherMap).First().Token);
                //scheduler
                _jobScheduler = new JobScheduler();
                //translator
                _googleTranslator = new GoogleTranslator(HttpClient);
            }
            catch (Exception ex)
            {
                logger.Error(ex, "Failed to create ZeusMainViewModel");
                System.Windows.MessageBox.Show("GoodBye, check logs");
                App.Current.Shutdown();
            }
        }