mirror of
https://github.com/ElementsProject/lightning.git
synced 2025-02-22 14:42:40 +01:00
Lagrang3 points out that if we hit a maximum, we should take into account the reserve. This is true, but it's hard for the caller to do, so change the API to be slightly higher level. Tell "inform" what happened, and it adjust the constraints appropriately. This makes the least assumptions possible (a reserve does *not* mean that the capacity was actually used at that time). We also add a mode to say "this succeeded": for now this does nothing, but it could reduce both min/max capacities, and add capacity in the other direction. This is useful for future payments, but not as useful for the current one. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
61 lines
1.8 KiB
JSON
61 lines
1.8 KiB
JSON
{
|
|
"$schema": "../rpc-schema-draft.json",
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"rpc": "askrene-reserve",
|
|
"title": "Command for informing askrene that you are trying a path (EXPERIMENTAL)",
|
|
"description": [
|
|
"WARNING: experimental, so API may change.",
|
|
"",
|
|
"The **askrene-reserve** RPC command tells askrene that a path is being attempted. This allows it to take that into account when other *getroutes* calls are made. You should call *askrene-unreserve* after the attempt has completed (and before calling *askrene-inform*).",
|
|
"",
|
|
"Note that additional properties inside the *path* elements are ignored, which is useful when used with the result of *getroutes*."
|
|
],
|
|
"request": {
|
|
"required": [
|
|
"path"
|
|
],
|
|
"properties": {
|
|
"path": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"additionalProperties": true,
|
|
"required": [
|
|
"short_channel_id_dir",
|
|
"amount_msat"
|
|
],
|
|
"properties": {
|
|
"short_channel_id_dir": {
|
|
"type": "short_channel_id_dir",
|
|
"description": [
|
|
"The channel and direction joining these nodes."
|
|
]
|
|
},
|
|
"amount_msat": {
|
|
"type": "msat",
|
|
"description": [
|
|
"The amount to send into this hop."
|
|
]
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"response": {
|
|
"required": [],
|
|
"properties": {}
|
|
},
|
|
"see_also": [
|
|
"lightning-getroutes(7)",
|
|
"lightning-askrene-unreserve(7)",
|
|
"lightning-askrene-listreservations(7)"
|
|
],
|
|
"author": [
|
|
"Rusty Russell <<rusty@rustcorp.com.au>> is mainly responsible."
|
|
],
|
|
"resources": [
|
|
"Main web site: <https://github.com/ElementsProject/lightning>"
|
|
]
|
|
}
|