Ejemplo n.º 1
0
        public bool GetHarvestData()
        {
            IList <Subscriber> subscribers = new List <Subscriber>();

            SoracomHarvest soracom = new SoracomHarvest();

            soracom.TdsObject = TdsObject;
            bool ret = soracom.GetHarvestData(subscribers);

            foreach (Subscriber subscriber in subscribers)
            {
                TdsObject.UpdateData(subscriber.data);
            }

            return(ret);
        }
Ejemplo n.º 2
0
 public void UpdateStatus()
 {
     TdsObject.GetStatus(this);
 }
Ejemplo n.º 3
0
 public GoogleVisualizationDataTable ErrorTable()
 {
     return(TdsObject.CreatErrorTable());
 }
Ejemplo n.º 4
0
        public bool GetSubScriverData(Subscriber subscriber)
        {
            JsonSerializerSettings serializerSettings = new JsonSerializerSettings()
            {
                DateParseHandling = DateParseHandling.DateTimeOffset
            };

            string[] headers = { $"X-Soracom-API-Key:{apiKey}", $"X-Soracom-Token:{apiToken}" };

            HttpResponce data = Get(subscriber.url, headers);

            if (data == null)
            {
                return(false);
            }

            subscriber.url = "";
            if (data.Headers.Get("link") != null)
            {
                string[] l = data.Headers.Get("link").Split(",");
                foreach (var s in l)
                {
                    if (s.IndexOf("next") > -1)
                    {
                        Match m = Regex.Match(s, @"(\<)(?<url>.+?)(\>)");
                        if (m.Success)
                        {
                            subscriber.url = "https://api.soracom.io" + m.Groups["url"].Value;
                        }
                        break;
                    }
                }
            }

            foreach (var item in data.data)
            {
                var bodybject = JsonConvert.DeserializeObject(item.content.Value, serializerSettings);

                try
                {
                    if (bodybject.payload != null)
                    {
                        List <dynamic> dataobjects = directData.ConvertData(bodybject.payload.Value);

                        if (dataobjects.Count > 0)
                        {
                            subscriber.data.AddRange(dataobjects);
                        }
                    }
                    else
                    {
                        if (bodybject.date == null)
                        {
                            var baseDt = new DateTimeOffset(1970, 1, 1, 0, 0, 0, TimeSpan.Zero);
                            bodybject.date = new DateTimeOffset(item.time.Value * 10000 + baseDt.Ticks, TimeSpan.Zero);
                        }
                        subscriber.data.Add(bodybject);
                    }
                }
                catch (Exception e)
                {
                    TdsObject.SetErrerMessage(e.Data["org"].ToString(), e.Message);
                }
            }

            return(true);
        }
Ejemplo n.º 5
0
 public GoogleVisualizationDataTable DataTable(ListModel model)
 {
     return(TdsObject.CreatTdsDataTable(model.ListTop));
 }