mirror of
https://github.com/ElementsProject/lightning.git
synced 2025-01-01 03:24:41 +01:00
27 lines
645 B
Python
27 lines
645 B
Python
|
#!/usr/bin/env python3
|
||
|
"""Simple plugin to test the invoice_payment_hook.
|
||
|
|
||
|
We just refuse to let them pay invoices with preimages divisible by 16.
|
||
|
"""
|
||
|
|
||
|
from lightning import Plugin
|
||
|
|
||
|
plugin = Plugin()
|
||
|
|
||
|
|
||
|
@plugin.hook('invoice_payment')
|
||
|
def on_payment(payment, plugin):
|
||
|
print("label={}".format(payment['label']))
|
||
|
print("msat={}".format(payment['msat']))
|
||
|
print("preimage={}".format(payment['preimage']))
|
||
|
|
||
|
if payment['preimage'].endswith('0'):
|
||
|
# FIXME: Define this!
|
||
|
WIRE_TEMPORARY_NODE_FAILURE = 0x2002
|
||
|
return {'result': {'failure_code': WIRE_TEMPORARY_NODE_FAILURE}}
|
||
|
|
||
|
return {'result': {}}
|
||
|
|
||
|
|
||
|
plugin.run()
|