1#ifndef YAZE_CLI_SERVICE_NET_Z3ED_NETWORK_CLIENT_H_
2#define YAZE_CLI_SERVICE_NET_Z3ED_NETWORK_CLIENT_H_
7#include "absl/status/status.h"
8#include "absl/status/statusor.h"
11#include "nlohmann/json.hpp"
36 absl::Status
Connect(
const std::string& host,
int port = 8765);
42 const std::string& session_code,
43 const std::string& username);
51 const std::string& description,
52 const std::string& proposal_json,
53 const std::string& username);
59 const std::string& proposal_id);
66 const std::string& proposal_id,
67 int timeout_seconds = 60);
73 const std::string& message,
74 const std::string& sender);
79 absl::StatusOr<std::string>
QueryAI(
80 const std::string& query,
81 const std::string& username);
Simplified WebSocket client for z3ed CLI.
absl::StatusOr< bool > WaitForApproval(const std::string &proposal_id, int timeout_seconds=60)
absl::Status SendMessage(const std::string &message, const std::string &sender)
std::unique_ptr< Impl > impl_
absl::Status JoinSession(const std::string &session_code, const std::string &username)
absl::StatusOr< std::string > QueryAI(const std::string &query, const std::string &username)
absl::Status Connect(const std::string &host, int port=8765)
absl::StatusOr< std::string > GetProposalStatus(const std::string &proposal_id)
absl::Status SubmitProposal(const std::string &description, const std::string &proposal_json, const std::string &username)
Main namespace for the application.