-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathEpcisIot.h
More file actions
55 lines (42 loc) · 1.88 KB
/
EpcisIot.h
File metadata and controls
55 lines (42 loc) · 1.88 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
/**
* Copyright 2019 BIBA-Bremer Institut für Produktion und Logistik GmbH, IoTFabLab
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
* EpcisIot.h: Header file for EpcisIot application
* using ESP32-WROOM along side BME280
* Author: Shantanoo Desai
* Version: 1.0
*/
/**
* Class: lineprotocol
* Purpose: To create InfluxDB's Line Protocol string
* consisting of `fields` and `tags` and timestamps
*/
#ifndef EpcisIot_h
#define EpcisIot_h
#include "Arduino.h"
class lineprotocol {
public:
lineprotocol(String meas); // Constructor
String measurement_name;
void addField(String key_name, float value); // Add float Field to Measurement
void addField(String key_name, int value); // Add int Field to Measurement
void addTag(String tag_name, String value); // Add Tag to Measurement
void addTimeStamp_s(uint32_t timestamp_seconds); // Add Epoch Timestamp in Seconds Precision to Measurement
void addTimeStamp_ms(uint64_t timestamp_milliseconds); // Add Epoch Timestamp in milli-seconds Precision to Measurement
String showLineProtocol(); // show the created Line Protocol String
void clearLineProtocol(); // Empty the Line Protocol String
~lineprotocol(); // Destructor
private:
String _data;
String _tag;
String _uint64ToString(uint64_t epoch_timestamp);
};
#endif