FromSuperBrain.cpp 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889
  1. #include "FromSuperBrain.h"
  2. #include "CurlHttp.h"
  3. #include "fmt/format.h"
  4. FromSuperBrain::FromSuperBrain()
  5. {
  6. m_logger = spdlog::get("FromSuperBrain");
  7. if(m_logger == nullptr)
  8. {
  9. SPDLOG_ERROR("FromSuperBrain logger is nullptr");
  10. return;
  11. }
  12. m_url = "http://172.16.36.80:30000/vos";
  13. }
  14. FromSuperBrain::~FromSuperBrain()
  15. {
  16. }
  17. /* 获取token */
  18. bool FromSuperBrain::getToken()
  19. {
  20. std::string response;
  21. std::string httpBody = R"({"appSecret":"8zR9ug4WbKCtEgaQ08myRm5HqKIMwP83Ra24t921tO/mU0cTIFdm/t0C9Jxrd53x","appKey":"rili4l26"})";
  22. std::vector<std::string> vecHeader;
  23. vecHeader.push_back("Content-Type: application/json");
  24. std::string url = m_url + m_tokenPath;
  25. if(!CurlHttp::Post(url, vecHeader, httpBody, response))
  26. {
  27. SPDLOG_LOGGER_ERROR(m_logger, "Get Token failed");
  28. return false;
  29. }
  30. SPDLOG_LOGGER_DEBUG(m_logger, "response:{}", response);
  31. m_token = response;
  32. return true;
  33. }
  34. /* 获取算法列表 */
  35. bool FromSuperBrain::getTaskTypeList()
  36. {
  37. if(m_token.empty())
  38. {
  39. SPDLOG_LOGGER_ERROR(m_logger, "Token is empty");
  40. return false;
  41. }
  42. std::string response;
  43. std::vector<std::string> vecHeader;
  44. vecHeader.push_back(fmt::format("accessToken: {}", m_token));
  45. std::string url = m_url + m_taskTypeListPath;
  46. if(!CurlHttp::Get(url, vecHeader, response))
  47. {
  48. SPDLOG_LOGGER_ERROR(m_logger, "Get TaskTypeList failed");
  49. return false;
  50. }
  51. SPDLOG_LOGGER_DEBUG(m_logger, "response:{}", response);
  52. m_taskTypeList = response;
  53. return true;
  54. }
  55. /* 获取设备列表信息 */
  56. bool FromSuperBrain::getDeviceList()
  57. {
  58. if(m_token.empty())
  59. {
  60. SPDLOG_LOGGER_ERROR(m_logger, "Token is empty");
  61. return false;
  62. }
  63. std::string response;
  64. std::vector<std::string> vecHeader;
  65. vecHeader.push_back(fmt::format("accessToken: {}", m_token));
  66. std::string url = m_url + m_deviceListPath;
  67. if(!CurlHttp::Get(url, vecHeader, response))
  68. {
  69. SPDLOG_LOGGER_ERROR(m_logger, "Get TaskTypeList failed");
  70. return false;
  71. }
  72. SPDLOG_LOGGER_DEBUG(m_logger, "response:{}", response);
  73. return true;
  74. }