fix: finnaly working!

This commit is contained in:
AfonsoCMSousa
2026-01-07 22:50:18 +00:00
parent ff07d6dcdf
commit c67c6d56f7
4 changed files with 32 additions and 8 deletions
+11 -3
View File
@@ -22,14 +22,22 @@ int main(int argc, char *argv[]) {
// Connect socket to API
sock.connect_unix(app.app_api_socket_path.c_str(), app.app_port_out);
// Connect socket to Server
sock.connect_server(app.app_server_out_ip.c_str(), app.app_port_out);
sock.connect_server(app.app_server_out_ip.c_str(), app.app_port_out, app.app_port_in);
// Right after connecting, send update rate request
char request[3] = {0};
char request[516] = {0};
request[0] = ACSP_REALTIMEPOS_INTERVAL;
request[1] = 127;
request[1] = 120;
sock.send_server(request, sizeof(request));
// Try and request session info
request[0] = ACSP_GET_SESSION_INFO;
sock.send_server(request, sizeof(request));
sock.receive_server();
char *buffer = sock.get_buffer();
printf("Received data from server: %s\n", buffer);
} catch (const runtime_error &e) {
cerr << "Error: " << e.what() << endl;
+9 -1
View File
@@ -16,7 +16,8 @@ Socket::~Socket() {
close(sock_unix);
}
void Socket::connect_server(const char *ip, uint16_t port) {
void Socket::connect_server(const char *ip, uint16_t port, uint16_t port_input) {
this->server_port_input = port_input;
server_addr.sin_port = htons(port);
if (inet_pton(AF_INET, ip, &server_addr.sin_addr) <= 0) {
throw runtime_error("Invalid IP address");
@@ -47,6 +48,13 @@ void Socket::send_server() {
}
}
void Socket::receive_server() {
ssize_t recv_bytes = recvfrom(sock_server, buffer, sizeof(buffer), 0, NULL, NULL);
if (recv_bytes < 0) {
throw runtime_error("Failed to receive data");
}
}
void Socket::send_unix() {
ssize_t sent_bytes = send(sock_unix, &packet_data, sizeof(packet_data), 0);
if (sent_bytes < 0) {