Hier erfahren Sie, wie Sie mit Particle Photon- oder Electron-Geräten Daten an Ubidots senden. Sie benötigen lediglich die Variablenbezeichnung und den Wert, die Sie zusammen mit einem gültigen Ubidots-TOKEN senden möchten. Darüber hinaus können Sie den letzten Wert einer Variablen aus Ihrem Ubidots-Konto abrufen.
Diese Bibliothek erstellt standardmäßig eine neue Datenquelle. Der Name dieser Datenquelle lautet standardmäßig „Partikel“ und die Bezeichnung lautet „Partikel-ID“.
Die Standardmethode ist TCP. Wenn Sie sie ändern möchten, gehen Sie zu den Funktionsabschnitten und folgen Sie dem Beispiel.
Nach der Ankündigung der Abschaffung des Particle Mesh IoT-Protokolls, da Particle keine Mesh-Einheiten mehr produziert, hat Ubidots beschlossen, es nicht mehr standardmäßig in dieser Bibliothek zu unterstützen. Wenn Sie in Ihrem Projekt weiterhin das Mesh IoT-Protokoll in Verbindung mit unserer Bibliothek verwenden müssen, kompilieren Sie Ihr Projekt bitte über die Particle CLI mit der Version v3.1.4 dieser Bibliothek.
Ubidots(char* token, UbiServer server, IotProtocol iot_protocol)
UBI_INDUSTRIAL
], [Standard] = UBI_INDUSTRIAL
.UBI_HTTP
, UBI_TCP
, UBI_UDP
, UBI_PARTICLE
], [Standard] = UBI_TCP
. Das IoT-Protokoll, das Sie zum Senden oder Abrufen von Daten verwenden.Erstellt eine Ubidots-Instanz.
HINWEISE
UBI_PARTICLE
sendet Daten mithilfe von Webhooks. Befolgen Sie daher unbedingt die Anweisungen, um Ihren Webhook hier ordnungsgemäß einzurichten. void add(char *variable_label, float value, char *context, unsigned long dot_timestamp_seconds, unsigned int dot_timestamp_millis)
Fügt einen Punkt mit dem zugehörigen Wert, Kontext und Zeitstempel hinzu, der an eine bestimmte Datenquelle gesendet wird, sobald Sie add() verwenden.
Wichtig: Die maximale Nutzlastlänge beträgt 700 Byte. Wenn Ihre Nutzlast größer ist, wird sie nicht ordnungsgemäß gesendet. Sie können auf Ihrer seriellen Konsole die zu sendende Nutzlast sehen, wenn Sie die Methode setDebug(bool debug)
aufrufen und ihr einen wahren Wert übergeben.
float get(const char* device_label, const char* variable_label)
Gibt als Float den letzten Wert des Punktes aus der Variablen zurück. IotProtocol getCloudProtocol()
std::map<int, float> tcpMap getMultipleValues(const char* deviceLabel, const char* variableLabels)
Gibt eine geordnete Kartenliste mit den für die bereitgestellten Variablenbeschriftungen abgerufenen Werten zurück. Auf die Werte kann über einen Index zugegriffen werden, beginnend bei Position 0, und sie werden jedem Variablenlabel zugeordnet, das im durch Kommas getrennten Array festgelegt ist.
void addContext(char *key_label, char *key_value)
Fügt dem lokalen Speicher einen neuen Schlüsselwert-Kontextschlüssel hinzu. Die Methodeneingaben müssen Zeichenzeiger sein. Die Methode ermöglicht die Speicherung von bis zu 10 Schlüssel-Wert-Paaren.
void getContext(char *context)
Erstellt den Kontext gemäß dem ausgewählten Protokoll und speichert ihn im Kontext-Char-Zeiger.
void setDebug(bool debug);;
Stellen Sie Debug-Meldungen über die serielle Schnittstelle zur Verfügung.
bool send(const char* device_label, const char* device_name, PublishFlags flags);
PUBLIC
, PRIVATE
, WITH_ACK
, NO_ACK
]. Partikel-Webhook-Flags.Sendet alle mit der Methode add() hinzugefügten Daten. Gibt true zurück, wenn die Daten gesendet wurden.
IotProtocol getCloudProtocol();
Ruft das tatsächliche Cloud-Protokoll ab, das zum Senden von Daten vom Mesh-Gateway verwendet wird.
Weitere Informationen finden Sie im Beispielordner