コード例 #1
0
ファイル: JsonApiProvider.cs プロジェクト: scottrice/NzbDrone
        public void Notify(XbmcSettings settings, string title, string message)
        {
            var parameters = new JObject(
                new JProperty("title", title),
                new JProperty("message", message),
                new JProperty("image", "https://raw.github.com/NzbDrone/NzbDrone/develop/Logo/64.png"),
                new JProperty("displaytime", settings.DisplayTime * 1000));

            var postJson = BuildJsonRequest("GUI.ShowNotification", parameters);

            _httpProvider.PostCommand(settings.Address, settings.Username, settings.Password, postJson.ToString());
        }
コード例 #2
0
ファイル: NzbgetClient.cs プロジェクト: alex0freeman/NzbDrone
        public virtual VersionModel GetVersion(string host = null, int port = 0, string username = null, string password = null)
        {
            //Get saved values if any of these are defaults
            if (host == null)
            {
                host = _configService.NzbgetHost;
            }

            if (port == 0)
            {
                port = _configService.NzbgetPort;
            }

            if (username == null)
            {
                username = _configService.NzbgetUsername;
            }

            if (password == null)
            {
                password = _configService.NzbgetPassword;
            }

            var command = new JsonRequest
            {
                Method = "version",
                Params = null
            };

            var address  = String.Format(@"{0}:{1}", host, port);
            var response = _httpProvider.PostCommand(address, username, password, command.ToJson());

            CheckForError(response);

            return(Json.Deserialize <VersionModel>(response));
        }
コード例 #3
0
        public XbmcVersion GetJsonVersion(XbmcSettings settings)
        {
            try
            {
                var postJson = new JObject();
                postJson.Add(new JProperty("jsonrpc", "2.0"));
                postJson.Add(new JProperty("method", "JSONRPC.Version"));
                postJson.Add(new JProperty("id", 10));

                var response = _httpProvider.PostCommand(settings.Address, settings.Username, settings.Password, postJson.ToString());

                Logger.Debug("Getting version from response");
                var result = Json.Deserialize <XbmcJsonResult <JObject> >(response);

                var versionObject = result.Result.Property("version");

                if (versionObject.Value.Type == JTokenType.Integer)
                {
                    return(new XbmcVersion((int)versionObject.Value));
                }

                if (versionObject.Value.Type == JTokenType.Object)
                {
                    return(Json.Deserialize <XbmcVersion>(versionObject.Value.ToString()));
                }

                throw new InvalidCastException("Unknown Version structure!: " + versionObject);
            }

            catch (Exception ex)
            {
                Logger.DebugException(ex.Message, ex);
            }

            return(new XbmcVersion());
        }