linux版本中间件

JsonStringMaker.cpp 2.8KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101
  1. #include "JsonStringMaker.h"
  2. #include <json/json.h>
  3. #include "Log.h"
  4. std::string JsonStringMaker::creatJson(std::string type, bool result)
  5. {
  6. Json::Value root;
  7. Json::StreamWriterBuilder jsrocd;
  8. std::unique_ptr<Json::StreamWriter> write(jsrocd.newStreamWriter());
  9. Json::OStringStream os;
  10. root["Type"] = type;
  11. root["Result"] = result;
  12. write->write(root, &os);
  13. return os.str();
  14. }
  15. std::string JsonStringMaker::creatJson(std::string type, std::string result)
  16. {
  17. // Json::Value root;
  18. // Json::StreamWriterBuilder jsrocd;
  19. // root["Type"] = type;
  20. // root["Result"] = result;
  21. // return Json::writeString(jsrocd, root);
  22. // jsoncpp中文乱码
  23. Format fmt("{ \"Type\":\"%s\",\"Result\":\"%s\" }");
  24. fmt %type %result;
  25. return fmt.str();
  26. }
  27. std::string JsonStringMaker::creatJson(std::string type, bool result, std::string data)
  28. {
  29. Json::Value root;
  30. Json::StreamWriterBuilder jsrocd;
  31. root["Type"] = type;
  32. root["Result"] = result;
  33. return Json::writeString(jsrocd, root);
  34. }
  35. std::string JsonStringMaker::creatJsonIncoming(std::string callid, std::string caller, std::string callee, std::string trunkNumber)
  36. {
  37. Json::Value root;
  38. Json::StreamWriterBuilder jsrocd;
  39. root["Type"] = "Incoming";
  40. root["Result"] = true;
  41. root["CallID"] = callid; // callid
  42. root["Number"] = caller; // 主叫
  43. root["CalleeNumber"] = callee;
  44. root["TrunkNumber"] = trunkNumber; // 中继号
  45. return Json::writeString(jsrocd, root);
  46. }
  47. //
  48. //std::string creatJson(std::string type, bool result)
  49. //{
  50. // Json::Value root;
  51. // Json::StreamWriterBuilder jsrocd;
  52. // std::unique_ptr<Json::StreamWriter> write(jsrocd.newStreamWriter());
  53. // Json::OStringStream os;
  54. // root["Type"] = type;
  55. // root["Result"] = result;
  56. // write->write(root, &os);
  57. // return os.str();
  58. //}
  59. //
  60. ////std::string creatJson(std::string type, std::string result)
  61. ////{
  62. //// Json::Value root;
  63. //// Json::StreamWriterBuilder jsrocd;
  64. //// root["Type"] = type;
  65. //// root["Result"] = result;
  66. //// return Json::writeString(jsrocd, root);
  67. ////}
  68. //
  69. //std::string creatJson(std::string type, std::string result)
  70. //{
  71. // Format fmt("{ \"Type\":\"%s\",\"Result\":\"%s\" }");
  72. // fmt %type %result;
  73. // return fmt.str();
  74. //}
  75. //
  76. //std::string creatJson(std::string type, bool result, std::string data)
  77. //{
  78. // Json::Value root;
  79. // Json::StreamWriterBuilder jsrocd;
  80. // root["Type"] = type;
  81. // root["Result"] = result;
  82. // return Json::writeString(jsrocd, root);
  83. //}
  84. //std::string creatJsonIncoming(std::string callid, std::string caller, std::string callee, std::string trunkNumber)
  85. //{
  86. // Json::Value root;
  87. // Json::StreamWriterBuilder jsrocd;
  88. // root["Type"] = "Incoming";
  89. // root["Result"] = true;
  90. // root["CallID"] = callid; // callid
  91. // root["Number"] = caller; // 主叫
  92. // root["CalleeNumber"] = callee;
  93. // root["TrunkNumber"] = trunkNumber; // 中继号
  94. // return Json::writeString(jsrocd, root);
  95. //}