The KPN SenML library helps you create and parse senml documents in both json and cbor format. The library can be used for sending sensor data and receiving actuator commands.

Committer:
kpniot
Date:
Sat May 19 17:35:20 2018 +0000
Revision:
0:a9259748d982
first commit

Who changed what in which revision?

UserRevisionLine numberNew contents of line
kpniot 0:a9259748d982 1 /* _ __ ____ _ _
kpniot 0:a9259748d982 2 * | |/ / | _ \ | \ | |
kpniot 0:a9259748d982 3 * | ' / | |_) | | \| |
kpniot 0:a9259748d982 4 * | . \ | __/ | |\ |
kpniot 0:a9259748d982 5 * |_|\_\ |_| |_| \_|
kpniot 0:a9259748d982 6 *
kpniot 0:a9259748d982 7 * (c) 2018 KPN
kpniot 0:a9259748d982 8 * License: MIT License.
kpniot 0:a9259748d982 9 * Author: Jan Bogaerts
kpniot 0:a9259748d982 10 *
kpniot 0:a9259748d982 11 * support for string sensors
kpniot 0:a9259748d982 12 */
kpniot 0:a9259748d982 13
kpniot 0:a9259748d982 14
kpniot 0:a9259748d982 15 #include <senml_string_record.h>
kpniot 0:a9259748d982 16 #include <cbor.h>
kpniot 0:a9259748d982 17 #include <senml_helpers.h>
kpniot 0:a9259748d982 18
kpniot 0:a9259748d982 19 void SenMLStringRecord::fieldsToJson()
kpniot 0:a9259748d982 20 {
kpniot 0:a9259748d982 21 SenMLRecord::fieldsToJson();
kpniot 0:a9259748d982 22 printText(",\"vs\":\"", 7);
kpniot 0:a9259748d982 23 String val = this->get();
kpniot 0:a9259748d982 24 printText(val.c_str(), val.length());
kpniot 0:a9259748d982 25 printText("\"", 1);
kpniot 0:a9259748d982 26 }
kpniot 0:a9259748d982 27 int SenMLStringRecord::fieldsToCbor()
kpniot 0:a9259748d982 28 {
kpniot 0:a9259748d982 29 int res = SenMLRecord::fieldsToCbor();
kpniot 0:a9259748d982 30 res += cbor_serialize_int(SENML_CBOR_VS_LABEL);
kpniot 0:a9259748d982 31 res += cbor_serialize_unicode_string(this->get().c_str());
kpniot 0:a9259748d982 32 return res;
kpniot 0:a9259748d982 33 }
kpniot 0:a9259748d982 34
kpniot 0:a9259748d982 35
kpniot 0:a9259748d982 36
kpniot 0:a9259748d982 37
kpniot 0:a9259748d982 38
kpniot 0:a9259748d982 39
kpniot 0:a9259748d982 40