More logging
This commit is contained in:
parent
ed79445fe6
commit
d080dbac04
@ -37,12 +37,12 @@ public class Lnurl
|
||||
"^(([^<>()\\[\\]\\\\.,;:\\s@\"]+(\\.[^<>()\\[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$");
|
||||
|
||||
lnurl = lnurl.ToLower().Trim();
|
||||
|
||||
|
||||
if (lnurl.StartsWith("lnurlp:"))
|
||||
{
|
||||
return new Uri(lnurl.Replace("lnurlp://", "https://"));
|
||||
}
|
||||
|
||||
|
||||
if (lnurl.StartsWith("lnurl"))
|
||||
{
|
||||
Bech32.Decode(lnurl, out var hrp, out var decoded);
|
||||
@ -72,8 +72,7 @@ public class Lnurl
|
||||
public async Task<LNURLService?> LoadAsync(string lnurl)
|
||||
{
|
||||
var url = ParseLnUrl(lnurl);
|
||||
using var httpClient = new HttpClient();
|
||||
var response = await httpClient.GetAsync(url);
|
||||
var response = await _client.GetAsync(url);
|
||||
if (response.IsSuccessStatusCode)
|
||||
{
|
||||
var json = await response.Content.ReadAsStringAsync();
|
||||
@ -112,8 +111,7 @@ public class Lnurl
|
||||
|
||||
try
|
||||
{
|
||||
using var httpClient = new HttpClient();
|
||||
var response = await httpClient.GetAsync(builder.Uri);
|
||||
var response = await _client.GetAsync(builder.Uri);
|
||||
if (response.IsSuccessStatusCode)
|
||||
{
|
||||
var json = await response.Content.ReadAsStringAsync();
|
||||
@ -130,7 +128,7 @@ public class Lnurl
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
throw new LNURLError(LNURLErrorCode.ServiceUnavailable, "Failed to load callback");
|
||||
throw new LNURLError(LNURLErrorCode.ServiceUnavailable, $"Failed to load callback: {e.Message}");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -137,23 +137,31 @@ public class ZapperRelay : INostrRelay, IDisposable
|
||||
};
|
||||
|
||||
var zapSigned = zap.Sign(key);
|
||||
var invoice = await _lnurl.GetInvoiceAsync(svc, 5, "Thanks for your interaction!", zapSigned);
|
||||
if (string.IsNullOrEmpty(invoice.Pr))
|
||||
try
|
||||
{
|
||||
return new(false, $"blocked: failed to get invoice from {parsedTarget}");
|
||||
}
|
||||
var invoice = await _lnurl.GetInvoiceAsync(svc, 5, "Thanks for your interaction!", zapSigned);
|
||||
if (string.IsNullOrEmpty(invoice.Pr))
|
||||
{
|
||||
return new(false, $"blocked: failed to get invoice from {parsedTarget}");
|
||||
}
|
||||
|
||||
_logger.LogInformation("Paying invoice {pr}", invoice.Pr);
|
||||
if (!await _albyApi.PayInvoice(invoice.Pr))
|
||||
_logger.LogInformation("Paying invoice {pr}", invoice.Pr);
|
||||
if (!await _albyApi.PayInvoice(invoice.Pr))
|
||||
{
|
||||
return new(false, "blocked: failed to pay invoice!");
|
||||
}
|
||||
|
||||
var seenEvent = NostrBuf.Encode(ev);
|
||||
(await _session.UpsertAsync(ref seenId, ref seenEvent)).Complete();
|
||||
|
||||
_logger.LogInformation("Zapped {name}!", senderProfile.Name);
|
||||
return new(true, "Zapped!");
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
return new(false, "blocked: failed to pay invoice!");
|
||||
_logger.LogError(e.ToString());
|
||||
return new(false, $"blocked: Oh no! something went wrong! {e.Message}");
|
||||
}
|
||||
|
||||
var seenEvent = NostrBuf.Encode(ev);
|
||||
(await _session.UpsertAsync(ref seenId, ref seenEvent)).Complete();
|
||||
|
||||
_logger.LogInformation("Zapped {name}!", senderProfile.Name);
|
||||
return new(true, "Zapped!");
|
||||
}
|
||||
|
||||
return new(false, "blocked: kind not accepted, no zap for you!");
|
||||
|
Loading…
x
Reference in New Issue
Block a user