#include "Particle.h" namespace { constexpr char EVENT_NAME[] = "nr_particle_cloud/status"; int cloudState = 0; unsigned long lastPublish = 0; } int setCloudState(String argument) { cloudState = argument.toInt(); Particle.publish(EVENT_NAME, String::format("state=%d", cloudState), PRIVATE); return cloudState; } void setup() { Particle.function("nrSetState", setCloudState); Particle.variable("nrState", cloudState); } void loop() { if (Particle.connected() && millis() - lastPublish >= 60000) { lastPublish = millis(); Particle.publish(EVENT_NAME, String::format("state=%d", cloudState), PRIVATE); } }