mirror of
https://github.com/btclock/btclock_v3.git
synced 2024-11-19 02:30:01 +01:00
Add Nostr Relay connection status
This commit is contained in:
parent
60593de785
commit
19559727c9
2
data
2
data
@ -1 +1 @@
|
|||||||
Subproject commit ee4d6d88c76fa279e643faabf4216c88145e0b2c
|
Subproject commit e7b52b7367f0585e87e16ceaf22d9a2339a1fd04
|
@ -41,7 +41,7 @@ lib_deps =
|
|||||||
https://github.com/dsbaars/universal_pin
|
https://github.com/dsbaars/universal_pin
|
||||||
https://github.com/dsbaars/GxEPD2#universal_pin
|
https://github.com/dsbaars/GxEPD2#universal_pin
|
||||||
https://github.com/tzapu/WiFiManager.git#v2.0.17
|
https://github.com/tzapu/WiFiManager.git#v2.0.17
|
||||||
rblb/Nostrduino@^1.2.7
|
rblb/Nostrduino@^1.2.8
|
||||||
|
|
||||||
[env:lolin_s3_mini]
|
[env:lolin_s3_mini]
|
||||||
extends = btclock_base
|
extends = btclock_base
|
||||||
|
@ -3,13 +3,14 @@
|
|||||||
std::vector<nostr::NostrPool *> pools;
|
std::vector<nostr::NostrPool *> pools;
|
||||||
nostr::Transport *transport;
|
nostr::Transport *transport;
|
||||||
TaskHandle_t nostrTaskHandle = NULL;
|
TaskHandle_t nostrTaskHandle = NULL;
|
||||||
|
boolean nostrIsConnected = false;
|
||||||
|
|
||||||
void setupNostrNotify()
|
void setupNostrNotify()
|
||||||
{
|
{
|
||||||
nostr::esp32::ESP32Platform::initNostr(false);
|
nostr::esp32::ESP32Platform::initNostr(false);
|
||||||
time_t now;
|
time_t now;
|
||||||
time(&now);
|
time(&now);
|
||||||
struct tm* utcTimeInfo;
|
struct tm *utcTimeInfo;
|
||||||
utcTimeInfo = gmtime(&now);
|
utcTimeInfo = gmtime(&now);
|
||||||
time_t utcNow = mktime(utcTimeInfo);
|
time_t utcNow = mktime(utcTimeInfo);
|
||||||
time_t timestamp60MinutesAgo = utcNow - 3600;
|
time_t timestamp60MinutesAgo = utcNow - 3600;
|
||||||
@ -98,6 +99,25 @@ void setupNostrNotify()
|
|||||||
// EOSE
|
// EOSE
|
||||||
Serial.println("Subscription EOSE: " + subId);
|
Serial.println("Subscription EOSE: " + subId);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
std::vector<nostr::NostrRelay *> *relays = pool->getConnectedRelays();
|
||||||
|
for (nostr::NostrRelay *relay : *relays)
|
||||||
|
{
|
||||||
|
Serial.println("Registering to connection events of: " + relay->getUrl());
|
||||||
|
relay->getConnection()->addConnectionStatusListener([&](const nostr::ConnectionStatus &status)
|
||||||
|
{
|
||||||
|
String sstatus="UNKNOWN";
|
||||||
|
if(status==nostr::ConnectionStatus::CONNECTED){
|
||||||
|
nostrIsConnected = true;
|
||||||
|
sstatus="CONNECTED";
|
||||||
|
}else if(status==nostr::ConnectionStatus::DISCONNECTED){
|
||||||
|
nostrIsConnected = false;
|
||||||
|
sstatus="DISCONNECTED";
|
||||||
|
}else if(status==nostr::ConnectionStatus::ERROR){
|
||||||
|
sstatus = "ERROR";
|
||||||
|
}
|
||||||
|
Serial.println("Connection status changed: " + sstatus); });
|
||||||
|
}
|
||||||
}
|
}
|
||||||
catch (const std::exception &e)
|
catch (const std::exception &e)
|
||||||
{
|
{
|
||||||
@ -125,4 +145,9 @@ void nostrTask(void *pvParameters)
|
|||||||
void setupNostrTask()
|
void setupNostrTask()
|
||||||
{
|
{
|
||||||
xTaskCreate(nostrTask, "nostrTask", 16384, NULL, 10, &nostrTaskHandle);
|
xTaskCreate(nostrTask, "nostrTask", 16384, NULL, 10, &nostrTaskHandle);
|
||||||
|
}
|
||||||
|
|
||||||
|
boolean nostrConnected()
|
||||||
|
{
|
||||||
|
return nostrIsConnected;
|
||||||
}
|
}
|
@ -14,4 +14,6 @@
|
|||||||
void setupNostrNotify();
|
void setupNostrNotify();
|
||||||
|
|
||||||
void nostrTask(void *pvParameters);
|
void nostrTask(void *pvParameters);
|
||||||
void setupNostrTask();
|
void setupNostrTask();
|
||||||
|
|
||||||
|
boolean nostrConnected();
|
@ -229,6 +229,7 @@ JsonDocument getStatusObject()
|
|||||||
JsonObject conStatus = root["connectionStatus"].to<JsonObject>();
|
JsonObject conStatus = root["connectionStatus"].to<JsonObject>();
|
||||||
conStatus["price"] = isPriceNotifyConnected();
|
conStatus["price"] = isPriceNotifyConnected();
|
||||||
conStatus["blocks"] = isBlockNotifyConnected();
|
conStatus["blocks"] = isBlockNotifyConnected();
|
||||||
|
conStatus["nostr"] = nostrConnected();
|
||||||
|
|
||||||
root["rssi"] = WiFi.RSSI();
|
root["rssi"] = WiFi.RSSI();
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user