Example #1
0
        public void sendData(TimeSeriesData data)
        {
            List <String> dataToSend = data.getJSONData();

            NgestService ngest = new NgestService();

            // Ask the Ngest API service to send the data for us
            foreach (var d in dataToSend)
            {
                ngest.sendData(_feedToken, _feedKey, d);
            }
        }
Example #2
0
        public async Task <APIResponse[]> sendDataAsync(TimeSeriesData data)
        {
            List <String> dataToSend = data.getJSONData();

            NgestService ngest = new NgestService();


            var response_tasks = new List <Task <APIResponse> >();

            // Ask the Ngest API service to send the data for us
            // Asyncrhonously
            foreach (var d in dataToSend)
            {
                response_tasks.Add(ngest.sendDataAsync(_feedToken, _feedKey, d));
            }
            var ret = await Task.WhenAll(response_tasks);

            return(ret);
        }
        public void sendData(TimeSeriesData data)
        {
            // Convert all data to UTC
            data.delocalizeTimestamps(_feedTimeZone);

            List<String> dataToSend = data.getJSONData();

            foreach (var d in dataToSend)
            {
                // Set up post request
                HttpWebRequest request = (HttpWebRequest)WebRequest.Create(_postURL);

                // Set request parameters
                request.Method = WebRequestMethods.Http.Post;
                request.ContentType = "application/json";
                request.Accept = "application/json";

                // Get string bytes
                UTF8Encoding encoding = new UTF8Encoding();

                // Write body data.. ridiculous API
                byte[] dataBytes = encoding.GetBytes(d);

                request.ContentLength = dataBytes.Length;

                Stream requestStream = request.GetRequestStream();

                requestStream.Write(dataBytes, 0, dataBytes.Length);

                requestStream.Close();

                // Need to dispose of the response to avoid an exception on the next request.
                HttpWebResponse response;

                using (response = (HttpWebResponse)request.GetResponse())
                {
                    if (response.StatusCode != HttpStatusCode.OK)
                    {
                        Console.WriteLine("Failed to send data!");
                    }
                }
            }
        }
        static void Main(string[] args)
        {
            // Instantiate ngestClient
            // args[0] is api token
            var ngestClient = new NgestClient(args[0], FEED_KEY);

            TimeSeriesData data = new TimeSeriesData(FEED_KEY);

            String testField = "test_field";

            // Add value to the TimeSeriesData object
            // These timestamps are assumed to be in the timezone specified by the feed
            data.addValue(DateTime.Parse("2015-09-24 10:45:00"), testField, 25);
            data.addValue(DateTime.Parse("2015-09-24 10:50:00"), testField, 30);
            data.addValue(DateTime.Parse("2015-09-24 10:55:00"), testField, 35);
            data.addValue(DateTime.Parse("2015-09-24 11:00:00"), testField, 40);

            // Send data to ndustrial.io
            ngestClient.sendData(data);
        }
 public void sendDataAsync(TimeSeriesData data)
 {
     Thread thread = new Thread(() => sendData(data));
     thread.Start();
 }