@ -17,8 +17,9 @@ Follow the below steps to install and setup RTL to run on Core Lightning.
### <aname="prereq"></a>Pre-requisites:
1. Functioning Core Lightning node. Follow install instructions on their [github](https://github.com/ElementsProject/lightning)
2. NodeJS - Can be downloaded [here](https://nodejs.org/en/download)
3. Cl-REST - Ensure that `cl-rest` API server is installed and running. Install instructions [here](https://github.com/Ride-The-Lightning/c-lightning-REST)
4. Copy the `access.macaroon` file from `cl-rest` to the device, on which RTL will be installed
3. clnrest - Ensure that core lightning's `clnrest` API server is configured. Configuration instructions [here](https://docs.corelightning.org/docs/rest#configuration)
4. Create/reuse a rune created by core-lightning. Check [`createrune`](https://docs.corelightning.org/reference/lightning-createrune) and [`showrunes`](https://docs.corelightning.org/reference/lightning-showrunes) commands documentation for more details.
4. Copy the `rune` and save it in a file named `.commando`, on which RTL will be installed.
### <aname="arch"></a>Architecture
![](../screenshots/RTL-CLN-Arch-2.png)
@ -50,12 +51,12 @@ If there is an error with `upstream dependency conflict` message then replace `n
### <aname="prep"></a>Prep for Execution
RTL requires its own config file `RTL-Config.json`, to start the server and provide user authentication on the app.
* Rename the file `Sample-RTL-Config.json` to `RTL-Config.json` located at`./RTL`..
* Locate the complete path of the readable `access.macaroon` from `cl-rest` on your node.
* Locate the complete path of the readable `.commando` file on your node.
* Modify the RTL conf file per the example file below
Ensure that the follow values are correct per your config:
* `lnImplementation` - This should be `CLN`, indicating that RTL is connecting to a core lightning node.
* `macaroonPath` - Path of the folder containing `access.macaroon` file from cl-rest server.
* `macaroonPath` - Path of the folder containing `.commando` file including the file name.
* `lnServerUrl` - complete url with ip address and port of the cl-rest server.
* `multiPass` - Specify the password (in plain text) to access RTL. This password will be hashed and not stored as plain text.
* `configPath` (optional) - File path of the core lightning config file, if RTL server is local to the core lightning server.
@ -77,7 +78,7 @@ Ensure that the follow values are correct per your config:
logger.log({selectedNode:req.session.selectedNode,level:'INFO',fileName:'Network',msg:'Network Fee Rates Received for '+req.params.feeRateStyle,data:body});
logger.log({selectedNode: req.session.selectedNode,level:'INFO',fileName:'Network',msg:'Network Fee Rates Received for '+req.params.feeRateStyle,data: body});
@ -59,9 +58,11 @@ export class CLWebSocketClient {
publicconnectWithClient=(clWsClt)=>{
this.logger.log({selectedNode: clWsClt.selectedNode,level:'INFO',fileName:'CLWebSocket',msg:'Connecting to the Core Lightning\'s Websocket Server..'});