#include "BoostLog.h" #include #include #include #include #include using boost::asio::ip::udp; int main(int argc, char const *argv[]) { boost::log::initialize("/data/sdcard/logs/GatePass", "/data/sdcard/logs"); LOG(info) << "app start..."; std::cout << "hello word." << std::endl; constexpr auto txt = R"({"cmd":"gate_status","status":1,"personIn":11638,"personOut":5123,"runCount":115370})"; constexpr auto txt1 = R"({"cmd":"gate_status","status":2,"personIn":-12345,"personOut":-12345,"runCount":115370})"; constexpr auto error = R"({"cmd":"fault_and_alarm","code":91})"; constexpr auto error1 = R"({"cmd":"fault_and_alarm","code":96})"; try { // if (argc != 2) { // std::cerr << "Usage: client " << std::endl; // return 1; // } udp::endpoint point(udp::v4(), 6787); boost::asio::io_context io_context; udp::socket socket(io_context); socket.open(udp::v4()); socket.send_to(boost::asio::buffer(std::string(txt)), point); LOG(info) << "udp send: " << txt; std::this_thread::sleep_for(std::chrono::milliseconds(150)); socket.send_to(boost::asio::buffer(std::string(error)), point); std::this_thread::sleep_for(std::chrono::milliseconds(150)); socket.send_to(boost::asio::buffer(std::string(error1)), point); std::this_thread::sleep_for(std::chrono::milliseconds(150)); socket.send_to(boost::asio::buffer(std::string(txt1)), point); } catch (std::exception &e) { std::cerr << e.what() << std::endl; } return 0; return 0; }