FaceAccess/GatePass/main.cpp

55 lines
1.7 KiB
C++
Raw Normal View History

2024-06-18 14:27:48 +08:00
#include "BoostLog.h"
#include <boost/asio.hpp>
#include <boost/json.hpp>
#include <chrono>
#include <iostream>
#include <thread>
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 <host>" << 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;
}