Exemplo n.º 1
0
            private void Stream_GroupReceived(string json)
            {
                var obj = Json.Convert.FromJson <Data.ReturnedSample>(json);

                if (obj != null)
                {
                    var sample = new Data.Sample();
                    sample.AgentInstanceId = obj.AgentInstanceId;
                    sample.CDATA           = obj.CDATA;
                    sample.Condition       = obj.Condition;
                    sample.DeviceId        = obj.DeviceId;
                    sample.Id        = obj.Id;
                    sample.Sequence  = obj.Sequence;
                    sample.Timestamp = obj.Timestamp;
                    SampleReceived?.Invoke(sample);
                }
            }
Exemplo n.º 2
0
        /// <summary>
        /// Request Samples for a single device
        /// </summary>
        public static List <Data.Sample> Get(string baseUrl, string deviceId, string[] dataItems, DateTime from, DateTime to, int count, string accessToken)
        {
            var client  = new RestClient(baseUrl);
            var request = new RestRequest(deviceId + "/samples", Method.GET);

            if (from > DateTime.MinValue)
            {
                request.AddQueryParameter("from", from.ToString("o"));
            }
            if (to > DateTime.MinValue)
            {
                request.AddQueryParameter("to", to.ToString("o"));
            }
            if (count > 0)
            {
                request.AddQueryParameter("count", count.ToString());
            }
            if (!string.IsNullOrEmpty(accessToken))
            {
                request.AddQueryParameter("access_token", accessToken);
            }

            if (!dataItems.IsNullOrEmpty())
            {
                var dataItemJson = Json.Convert.ToJson(dataItems);
                request.AddQueryParameter("data_items", dataItemJson);
            }

            var response = client.Execute(request);

            if (response != null && response.StatusCode == System.Net.HttpStatusCode.OK)
            {
                var json = response.Content;
                if (!string.IsNullOrEmpty(json))
                {
                    var samples = new List <Data.Sample>();

                    var lines = json.Split(new string[] { "\n", "\r\n" }, StringSplitOptions.RemoveEmptyEntries);
                    foreach (var line in lines)
                    {
                        var obj = Json.Convert.FromJson <Data.ReturnedSample>(line);
                        if (obj != null)
                        {
                            var sample = new Data.Sample();
                            sample.AgentInstanceId = obj.AgentInstanceId;
                            sample.CDATA           = obj.CDATA;
                            sample.Condition       = obj.Condition;
                            sample.DeviceId        = obj.DeviceId;
                            sample.Id        = obj.Id;
                            sample.Sequence  = obj.Sequence;
                            sample.Timestamp = obj.Timestamp;
                            samples.Add(sample);
                        }
                    }

                    return(samples);
                }
            }

            return(null);
        }