fix relays and zap bag holder

This commit is contained in:
Kukks
2023-04-06 14:57:57 +02:00
parent 1e67b04c25
commit f788c7e24e
2 changed files with 11 additions and 3 deletions

View File

@@ -11,7 +11,7 @@
<PropertyGroup>
<Product>Nostr </Product>
<Description>Allows you to verify your nostr account with NIP5 and zap like the rest of the crazies</Description>
<Version>1.0.8</Version>
<Version>1.0.9</Version>
</PropertyGroup>
<!-- Plugin development properties -->
<PropertyGroup>

View File

@@ -1,5 +1,6 @@
using System;
using System.Collections.Concurrent;
using System.Collections.Generic;
using System.Linq;
using System.Text.Json;
using System.Threading;
@@ -47,7 +48,14 @@ public class Zapper : IHostedService
if (_pendingZapEvents.Any())
{
_logger.LogInformation($"Attempting to send {_pendingZapEvents.Count} zap receipts");
var pendingZaps = _pendingZapEvents.Take(Range.All).ToArray();
List<PendingZapEvent> pendingZaps = new();
while (!_pendingZapEvents.IsEmpty)
{
if (_pendingZapEvents.TryTake(out var pendingZap))
{
pendingZaps.Add(pendingZap);
}
}
var relaysToConnectTo = pendingZaps.SelectMany(@event => @event.relays).Distinct();
var relaysToZap =relaysToConnectTo.ToDictionary(s => s, s => pendingZaps.Where(@event => @event.relays.Contains(s)).Select(@event => @event.nostrEvent).ToArray());
@@ -138,7 +146,7 @@ public class Zapper : IHostedService
var key = NostrExtensions.ParseKey(settings.settings.PrivateKey);
var zapRequestEvent = JsonSerializer.Deserialize<NostrEvent>(zapRequest);
var relays = zapRequestEvent.GetTaggedData("relays");
var relays = zapRequestEvent.Tags.Where(tag => tag.TagIdentifier == "relay").SelectMany(tag => tag.Data).ToArray();
var tags = zapRequestEvent.Tags.Where(a => a.TagIdentifier.Length == 1).ToList();
tags.Add(new()