コード例 #1
0
        public OpenSubtitles(HashSet <string> languages, IAuthCredentialProvider credentialProvider, ILogger logger) : base(languages)
        {
            this.credentialProvider = credentialProvider;
            this.logger             = logger;
            supportedLanguages      = GetSupportedLanguages(languages);

            RequestRetryLimit = 3; // max 3 retries, and with some seconds delay is necessary for opensubtitles
            startTime         = DateTime.Now.Date;

            // Max 40 requests per 10 seconds per IP
            // Max 200 subtitle downloads per 24 hour per IP/User
            // User has to register as VIP to download 1000 per 24 hours.
            //  We will have to keep track on requests and downloads for this provider to not exceed the limit and first rely on other providers such as subscene
            keepAliveThread = new Thread(KeepAliveProcess);
            keepAliveThread.Start();
        }
コード例 #2
0
ファイル: OpenSubtitles.cs プロジェクト: okreka/SubSync
        public OpenSubtitles(HashSet <string> languages, IAuthCredentialProvider credentialProvider) : base(languages)
        {
            this.credentialProvider = credentialProvider;
            this.supportedLanguages = GetSupportedLanguages(languages);
            // until we get our user agent registered for OpenSubtitles.org
            // we can use a temporary one.
            // See: http://trac.opensubtitles.org/projects/opensubtitles/wiki/DevReadFirst
            UserAgent         = "TemporaryUserAgent";
            RequestRetryLimit = 3; // max 3 retries, and with some seconds delay is necessary for opensubtitles
            startTime         = DateTime.Now.Date;

            // Max 40 requests per 10 seconds per IP
            // Max 200 subtitle downloads per 24 hour per IP/User
            // User has to register as VIP to download 1000 per 24 hours.
            //  We will have to keep track on requests and downloads for this provider to not exceed the limit and first rely on other providers such as subscene
            keepAliveThread = new Thread(KeepAliveProcess);
            keepAliveThread.Start();
        }