add lnaddress to extra

This commit is contained in:
callebtc 2023-03-15 00:14:25 +01:00
commit 8c2f718c66

View file

@ -65,20 +65,25 @@ async def api_lnurl_callback(
).dict() ).dict()
if lnaddress: if lnaddress:
domain = urlparse(str(request.url)).netloc # for lnaddress, we have to set this otherwise the metadata won't have the identifier
link.domain = domain link.domain = urlparse(str(request.url)).netloc
extra = {
"tag": "lnurlp",
"link": link.id,
"comment": comment,
"extra": request.query_params.get("amount"),
}
if lnaddress and link.username and link.domain:
extra["lnaddress"] = f"{link.username}@{link.domain}"
payment_hash, payment_request = await create_invoice( payment_hash, payment_request = await create_invoice(
wallet_id=link.wallet, wallet_id=link.wallet,
amount=int(amount_received / 1000), amount=int(amount_received / 1000),
memo=link.description, memo=link.description,
unhashed_description=link.lnurlpay_metadata.encode(), unhashed_description=link.lnurlpay_metadata.encode(),
extra={ extra=extra,
"tag": "lnurlp",
"link": link.id,
"comment": comment,
"extra": request.query_params.get("amount"),
},
) )
success_action = link.success_action(payment_hash) success_action = link.success_action(payment_hash)
@ -112,9 +117,8 @@ async def api_lnurl_response(request: Request, link_id, lnaddress=False):
rate = await get_fiat_rate_satoshis(link.currency) if link.currency else 1 rate = await get_fiat_rate_satoshis(link.currency) if link.currency else 1
if lnaddress: if lnaddress:
# for lnaddress # for lnaddress, we have to set this otherwise the metadata won't have the identifier
domain = urlparse(str(request.url)).netloc link.domain = urlparse(str(request.url)).netloc
link.domain = domain
callback = request.url_for("lnurlp.api_lnurl_lnaddr_callback", link_id=link.id) callback = request.url_for("lnurlp.api_lnurl_lnaddr_callback", link_id=link.id)
else: else:
callback = request.url_for("lnurlp.api_lnurl_callback", link_id=link.id) callback = request.url_for("lnurlp.api_lnurl_callback", link_id=link.id)