Nostrduino
Loading...
Searching...
No Matches
NostrTransport.h
Go to the documentation of this file.
1#ifndef _NOSTR_TRANSPORT_H
2#define _NOSTR_TRANSPORT_H
3#include <Arduino.h>
4#include "NostrString.h"
5#include "NostrAmount.h"
6#include <functional>
7
8namespace nostr {
11 public:
12 virtual void addMessageListener(std::function<void(NostrString)> listener) = 0;
13 virtual void send(NostrString message) = 0;
14 virtual void disconnect() = 0;
15 virtual ~Connection() = default;
16 Connection() = default;
17 virtual void loop() = 0;
18 virtual bool isReady() = 0;
19 virtual void addConnectionStatusListener(std::function<void(ConnectionStatus status)> listener) = 0;
20};
21class Transport {
22 public:
24 virtual Connection *connect(NostrString url) = 0;
25 virtual ~Transport() = default;
26 Transport() = default;
27 virtual void disconnect(Connection *conn) = 0;
28 virtual bool isReady() = 0;
29 virtual void close() = 0;
30 virtual void loop() {};
31};
32} // namespace nostr
33#endif
#define NostrString
Definition NostrString.h:10
Definition NostrTransport.h:10
virtual void disconnect()=0
Connection()=default
virtual void addMessageListener(std::function< void(NostrString)> listener)=0
virtual ~Connection()=default
virtual void addConnectionStatusListener(std::function< void(ConnectionStatus status)> listener)=0
virtual void send(NostrString message)=0
virtual void loop()=0
virtual bool isReady()=0
Definition Nip47.h:44
Definition NostrTransport.h:21
virtual void close()=0
virtual void getInvoiceFromLNAddr(NostrString addr, MilliSats amountMSats, NostrString comment, std::function< void(NostrString)> callback)=0
virtual Connection * connect(NostrString url)=0
virtual bool isReady()=0
virtual void disconnect(Connection *conn)=0
Transport()=default
virtual void loop()
Definition NostrTransport.h:30
virtual ~Transport()=default
Definition CryptoLock.h:6
ConnectionStatus
Definition NostrTransport.h:9