Exemple #1
0
int edit_datapoint(int device_id,int sensor_id,const char* json,const char* API_KEY,char* result)
{
	char* url=(char*)malloc(sizeof(char)*128);
	struct curl_slist *headers = 0;
	int ret;

	sprintf(url,"%s/%d/sensor/%d/datapoints/ ",YEELINK_BASE_API_URL,
			device_id,sensor_id);
	ret=yeelink_post(url,json,API_KEY,result);
	debug("result:%s\n",result);
	curl_slist_free_all(headers);
	free(url);
	return ret;
}
Exemple #2
0
VOID Yeelink_Run(VOID *arg)
{
   int ret;
   char *buffer = NULL;

   while(1){
	   if(TCPClient_reset_flag == 1)
	   {  
 	       //得到各个传感器数值
	   	   GetSensorData();

	       //粉尘浓度    376377
		   buffer = yeelink_post(AirTest_ID,Dust_ID,sensordata.Dust);
           ret = Socket_TCPClientSendData(buffer,strlen(buffer));

	       if (ret <= 0) {
	          Yeelink_Printf(GAGENT_WARNING,"Dust=>Send failed(ret:%d).\n", ret);
	       } else {
		      TCPClient_reset_flag = 2;
	          Yeelink_Printf(GAGENT_WARNING,"Dust=>Send success.\n");
	       }	
		   while(TCPClient_reset_flag != 1)
		      OSTimeDly(100);


		   //室内温度    376378
		   buffer = yeelink_post(AirTest_ID,Temp_ID,sensordata.Temperature);
           ret = Socket_TCPClientSendData(buffer,strlen(buffer));
	       if (ret <= 0) {
	          Yeelink_Printf(GAGENT_WARNING,"Temperature=>Send data failed(ret:%d).\n", ret);
	       } else {
		   	  TCPClient_reset_flag = 2;
	          Yeelink_Printf(GAGENT_WARNING,"Temperature=>Send data success.\n");
	       }		
		   while(TCPClient_reset_flag != 1)
		      OSTimeDly(10);
		   OSTimeDly(100);	
	  
		  //甲醛浓度    376382
		   buffer = yeelink_post(AirTest_ID,Methanal_ID,sensordata.Methanal);
           ret = Socket_TCPClientSendData(buffer,strlen(buffer));
	       if (ret <= 0) {
	          Yeelink_Printf(GAGENT_WARNING,"Methanal=>Send data failed(ret:%d).\n", ret);
	       } else {	
		   	  TCPClient_reset_flag = 2;
	          Yeelink_Printf(GAGENT_WARNING,"Methanal=>Send data success.\n");
	       }		
		   while(TCPClient_reset_flag != 1)
		      OSTimeDly(100);

		  //室内湿度    376383
		   buffer = yeelink_post(AirTest_ID,Humidity_ID,(int)sensordata.Humidity);
           ret = Socket_TCPClientSendData(buffer,strlen(buffer));
	       if (ret <= 0) {
	          Yeelink_Printf(GAGENT_WARNING,"Humidity=>Send data failed(ret:%d).\n", ret);
	       } else {
			  TCPClient_reset_flag = 2;
	          Yeelink_Printf(GAGENT_WARNING,"Humidity=>Send data success.\n");
	       }		
		   while(TCPClient_reset_flag != 1)
		      OSTimeDly(100);

		  //空气质量指数 376376
		   buffer = yeelink_post(AirTest_ID,AQI_ID,sensordata.AQI);
           ret = Socket_TCPClientSendData(buffer,strlen(buffer));
	       if (ret <= 0) {
	          Yeelink_Printf(GAGENT_WARNING,"AQI=>Send data failed(ret:%d).\n", ret);
	       } else {
		      TCPClient_reset_flag = 2;
	          Yeelink_Printf(GAGENT_WARNING,"AQI=>Send data success.\n");
	       }		
		   while(TCPClient_reset_flag != 1)
		      OSTimeDly(100);
	   }
  	   OSTimeDly(100); 	   
   }
}