Envoi données vers API en C
Publié : 26 avr. 2019, 09:53
Bonjour,
Je dispose d'un onduleur solaire SMV II 3K et je souhaitais récupérer les informations utiles via le port USB vers Domoticz. J'ai réussi à trouver un projet sur le GitHub qui pourrai surement aider à cette tache mais je n'y connais pas grand chose en C.
Le projet s'appelle : skymax-demo disponible ici https://github.com/manio/skymax-demo
Après avoir suivi les instructions de compilation, j'ai bien les informations de mon onduleur :

Je souhaite donc modifier le programme afin qu'il envoi les informations des variables vers domoticz avec une URL par exemple pour la tension de la batterie ce serait quelque chose comme :
L'URL fonctionne tel quel mais il faut l'intégrer dans le code et remplacer 29 par la variable voltage_batt
Voici le bout de code en question :
Merci beaucoup pour votre aide
Je dispose d'un onduleur solaire SMV II 3K et je souhaitais récupérer les informations utiles via le port USB vers Domoticz. J'ai réussi à trouver un projet sur le GitHub qui pourrai surement aider à cette tache mais je n'y connais pas grand chose en C.
Le projet s'appelle : skymax-demo disponible ici https://github.com/manio/skymax-demo
Après avoir suivi les instructions de compilation, j'ai bien les informations de mon onduleur :

Je souhaite donc modifier le programme afin qu'il envoi les informations des variables vers domoticz avec une URL par exemple pour la tension de la batterie ce serait quelque chose comme :
Code : Tout sélectionner
http://192.168.10.12:8080/json.htm?type=command¶m=udevice&idx=2284&nvalue=0&svalue=29Voici le bout de code en question :
Code : Tout sélectionner
if (ups_data_changed)
{
ups_data_changed = false;
string *reply = ups->GetStatus();
if (reply)
{
//parse and display values
sscanf(reply->c_str(), "%f %f %f %f %d %d %d %d %f %d %d %d %d %f %f %d", &voltage_grid, &freq_grid, &voltage_out, &freq_out, &load_va, &load_watt, &load_percent, &voltage_bus, &voltage_batt, &batt_charge_current, &batt_capacity, &temp_heatsink, &pv1, &pv2, &scc, &batt_discharge_current);
printf("\tAC Grid voltage: %.1f\n", voltage_grid);
printf("\tAC Grid frequency: %.1f\n", freq_grid);
printf("\tAC out voltage: %.1f\n", voltage_out);
printf("\tAC out frequency: %.1f\n", freq_out);
printf("\tLoad [%]: %d\n", load_percent);
printf("\tLoad [W]: %d\n", load_watt);
printf("\tLoad [VA]: %d\n", load_va);
printf("\tBus voltage: %d\n", voltage_bus);
printf("\tHeatsink temperature: %d\n", temp_heatsink);
printf("\tBattery capacity [%]: %d\n", batt_capacity);
printf("\tBattery voltage: %.2f\n", voltage_batt);
printf("\tBattery charge current [A]: %d\n", batt_charge_current);
printf("\tBattery discharge current [A]: %d\n", batt_discharge_current);
delete reply;
}
}