MessageHandler.h 6.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137
  1. #ifndef MessageHandler_H
  2. #define MessageHandler_H
  3. struct StructPeriod
  4. {
  5. int StartPeriod;
  6. float Limit;//0.1;
  7. int NumberPhases;
  8. };
  9. struct StructProfile
  10. {
  11. int Duration;
  12. int TotalPeriod;
  13. struct StructPeriod Period[10];
  14. };
  15. //===============================================
  16. // Common routine
  17. //===============================================
  18. int initialConfigurationTable(void);
  19. //==========================================
  20. // send request routine
  21. //==========================================
  22. int sendAuthorizeRequest(int gun_index);
  23. int sendBootNotificationRequest(void);
  24. int sendDataTransferRequest(int gun_index);
  25. int sendDiagnosticsStatusNotificationRequest(char *status);
  26. int sendFirmwareStatusNotificationRequest(char *status);
  27. int sendHeartbeatRequest(int gun_index);
  28. int sendStartTransactionRequest(int gun_index);
  29. int sendStatusNotificationRequest(int gun_index);
  30. int sendStopTransactionRequest(int gun_index);
  31. int sendMeterValuesRequest(int gun_index);
  32. //==========================================
  33. // send confirm routine
  34. //==========================================
  35. int sendCancelReservationConfirmation(char *uuid,char *payload);
  36. int sendChangeAvailabilityConfirmation(char *uuid,char *payload);
  37. int sendChangeConfigurationConfirmation(char *uuid,char *payload);
  38. int sendClearCacheConfirmation(char *uuid,char *payload);
  39. int sendClearChargingProfileConfirmation(char *uuid,char *payload);
  40. int sendDataTransferConfirmation(char *uuid,char *payload);
  41. int sendGetCompositeScheduleConfirmation(char *uuid,char *payload, int connectorIdInt,int nPeriod);
  42. int sendGetConfigurationConfirmation(char *uuid);
  43. int sendGetDiagnosticsConfirmation(char *uuid,char *payload);
  44. int sendGetLocalListVersionConfirmation(char *uuid,char *payload);
  45. int sendRemoteStartConfirmation(char *uuid,char *payload);
  46. int sendRemoteStopTransactionConfirmation(char *uuid,char *payload);
  47. int sendReserveNowTransactionConfirmation(char *uuid,char *payload);
  48. int sendResetConfirmation(char *uuid,char *payload);
  49. int sendSendLocalListConfirmation(char *uuid,char *payload);
  50. int sendSetChargingProfileConfirmation(char *uuid,char *payload);
  51. int sendTriggerMessageConfirmation(char *uuid,char *payload);
  52. int sendUnlockConnectorConfirmation(char *uuid,char *payload);
  53. int sendUpdateFirmwareConfirmation(char *uuid);
  54. //==========================================
  55. // send CallError routine
  56. //==========================================
  57. void SendCallError(char *uniqueId, char *action, char *errorCode, char *errorDescription);
  58. //==========================================
  59. // Handle server request routine Start
  60. //==========================================
  61. int handleCancelReservationRequest(char *uuid, char *payload);
  62. int handleChangeAvailabilityRequest(char *uuid, char *payload);
  63. int handleChangeConfigurationRequest(char *uuid, char *payload);
  64. int handleClearCacheRequest(char *uuid, char *payload);
  65. int handleClearChargingProfileRequest(char *uuid, char *payload);
  66. int handleDataTransferRequest(char *uuid, char *payload);
  67. //long long diff_tm(struct tm *a, struct tm *b);
  68. int handleGetCompositeScheduleRequest(char *uuid, char *payload);
  69. int handleGetConfigurationRequest(char *uuid, char *payload);
  70. int handleGetDiagnosticsRequest(char *uuid, char *payload);
  71. int handleGetLocalListVersionRequest(char *uuid, char *payload);
  72. int handleRemoteStartRequest(char *uuid, char *payload);
  73. int handleRemoteStopTransactionRequest(char *uuid, char *payload);
  74. int handleReserveNowTransactionRequest(char *uuid, char *payload);
  75. int handleResetRequest(char *uuid, char *payload);
  76. int handleSendLocalListRequest(char *uuid, char *payload);
  77. int handleSetChargingProfileRequest(char *uuid, char *payload);
  78. int handleTriggerMessageRequest(char *uuid, char *payload);
  79. int handleUnlockConnectorRequest(char *uuid, char *payload);
  80. int handleUpdateFirmwareRequest(char *uuid, char *payload);
  81. void handleAuthorizeResponse(char *payload, int gun_index);
  82. void handleBootNotificationResponse(char *payload, int gun_index);
  83. void handleDataTransferResponse(char *payload, int gun_index);
  84. void handleDiagnosticsStatusNotificationResponse(char *payload, int gun_index);
  85. void handleFirmwareStatusNotificationResponse(char *payload, int gun_index);
  86. void handleHeartbeatResponse(char *payload, int gun_index);
  87. void handleMeterValuesResponse(char *payload, int gun_index);
  88. void handleStartTransactionResponse(char *payload, int gun_index);
  89. void handleStatusNotificationResponse(char *payload, int gun_index);
  90. void handleStopTransactionnResponse(char *payload, int gun_index);
  91. //==========================================
  92. // Handle Error routine
  93. //==========================================
  94. void handleError(char *id, char *errorCode, char *errorDescription,char *payload);
  95. //===============================================
  96. // Common routine
  97. //===============================================
  98. void getKeyValue(char *keyReq);
  99. int setKeyValue(char *key, char *value);
  100. int updateSetting(char *key, char *value);
  101. #if 0
  102. json_object * getJSONfromFile(char *filename);
  103. #endif
  104. int httpDownLoadFile(char *location, char *path, char *filename,char *url);
  105. int ftpDownLoadFile(char *location, char *user, char *password, int port, char *path, char *filename,char *url);
  106. void *UpdateFirmwareProcess(void* data);
  107. void* GetDiagnosticsProcess(void* data);
  108. int ftpFile(char *location, char *user, char *password, int port, char *path, char *fnamePlusPath,char *filename);
  109. int get_file_contents(const char* filename, char** outbuffer);
  110. //void Send(struct json_object *message);
  111. void LWS_Send(char * str);
  112. extern int queue_operation(int type, char *frontUUID, char *frontData);
  113. char *GetOcppServerURL();
  114. char *GetOcppPath();
  115. int GetOcppPort();
  116. //===============================================
  117. // sqlite related routine
  118. //===============================================
  119. int SettingChargingRecord(int target, int transactionId);
  120. int addBuff(int gun_idx, int user_id, int cmd_sn);
  121. void OCPP_getListVerion();
  122. int OCPP_cleanLocalList();
  123. int OCPP_addLocalList(int version, char *idTag, char *parentTage, char *expiryDate, char *status);
  124. int OCPP_addLocalList_1(int version, char *idTag, char *parentTage, char *expiryDate, char *status);
  125. void OCPP_getIdTag(char *idTag);
  126. void OCPP_deleteIdTag(char *idTag);
  127. #endif