void CiaoClass::begin() { WifiBegin(1); if(!mqtt.begin("", "", "", 120, 1)) { while(1); } rest.begin("google.com"); rest.get("/"); delay(3000); }
bool BearMqttSD::loop(){ client.loop(); Particle.process(); //Code below checks if message was received if(MqttCalled==true){ MqttCalled = false; return true; } else{ return false; } }
void check_topic(const char* topic){ if(!attached){ mqtt.dataCb.attach(&mqttData); //attach mqttdata callback attached = true; } if(topic_number < TOPIC_NUM){ if(topic_number==0){ mqtt.subscribe(topic); topic_number++; } else{ int check=1; for(int idx=0; idx < topic_number; idx++) check = strcmp(topic,topic_array[idx]); if(check){ mqtt.subscribe(topic); topic_number++; } } } }
CiaoData PassThroughWrite(const char* connector, const char* hostname, String data, const char* method){ //short mode = 0; if (!strcmp(connector, "rest")){ //mode = 0; if (!strcmp(method, "GET")){ return requestGET(hostname, data); } else if (!strcmp(method, "POST")){ return requestPOST(hostname, data); } else{ CiaoData ciao_data; ciao_data.msg_split[0]=""; ciao_data.msg_split[1]=""; ciao_data.msg_split[2]="Method Error"; return ciao_data; } } else if (!strcmp(connector, "mqtt")){ //mode = 1; mqtt.publish(hostname, (char*) data.c_str()); CiaoData ciao_data; ciao_data.msg_split[0]="mqtt"; ciao_data.msg_split[1]="OK"; ciao_data.msg_split[2]=""; return ciao_data; } else { CiaoData ciao_data; ciao_data.msg_split[0]=""; ciao_data.msg_split[1]=""; ciao_data.msg_split[2]="Protocol Error"; return ciao_data; } }
void BearMqttSD::latch(char* mqttmsg){//gotta figure out var type that can be publish connection(); client.publish("protobear/sig",mqttmsg); client.loop(); } // simple function
bool BearMqttSD::connection() { if (client.isConnected()) { client.subscribe("protobear/com"); return (true); }//endif else { if(!client.isConnected()){ for(int i =0;i<30;i++){ client.connect("arduinoClient","fnhnuaqc","uHKb4wF1tRKe"); if(client.isConnected()){return true;} } return false; }//endforloop }//endelse }//end func