Radix Relay
Hybrid mesh communications with Signal Protocol encryption
Loading...
Searching...
No Matches
protocol.hpp File Reference
#include <cstdint>
#include <nlohmann/json.hpp>
#include <optional>
#include <span>
#include <stdexcept>
#include <string>
#include <vector>

Go to the source code of this file.

Classes

struct  radix_relay::nostr::protocol::event_data
 Nostr event data structure. More...
 
struct  radix_relay::nostr::protocol::ok
 Nostr OK response message. More...
 
struct  radix_relay::nostr::protocol::eose
 End of Stored Events marker. More...
 
struct  radix_relay::nostr::protocol::req
 Nostr REQ subscription request. More...
 
struct  radix_relay::nostr::protocol::event
 Nostr EVENT message wrapper. More...
 

Namespaces

namespace  radix_relay
 
namespace  radix_relay::nostr
 
namespace  radix_relay::nostr::protocol
 

Enumerations

enum class  radix_relay::nostr::protocol::kind : std::uint16_t {
  radix_relay::nostr::protocol::profile_metadata = 0 , radix_relay::nostr::protocol::text_note = 1 , radix_relay::nostr::protocol::recommend_relay = 2 , radix_relay::nostr::protocol::contact_list = 3 ,
  radix_relay::nostr::protocol::encrypted_dm = 4 , radix_relay::nostr::protocol::reaction = 7 , radix_relay::nostr::protocol::parameterized_replaceable_start = 30000 , radix_relay::nostr::protocol::bundle_announcement = 30078 ,
  radix_relay::nostr::protocol::encrypted_message = 40001 , radix_relay::nostr::protocol::identity_announcement = 40002 , radix_relay::nostr::protocol::session_request = 40003 , radix_relay::nostr::protocol::node_status = 40004
}
 Nostr event kind identifiers. More...
 

Functions

auto radix_relay::nostr::protocol::validate_subscription_id (const std::string &subscription_id) -> void
 Validates a subscription ID.
 

Variables

constexpr auto radix_relay::nostr::protocol::bundle_announcement_minimum_version = "0.4.0"
 Minimum protocol version required for bundle announcements.
 
constexpr std::size_t radix_relay::nostr::protocol::max_subscription_id_length = 64
 Maximum allowed subscription ID length.