Difference between revisions of "Umbrel - Installing BoS"

From PlebNet Wiki
Jump to navigation Jump to search
m (→‎Installing BOS: Added link to Alex's own)
Line 9: Line 9:


These instructions are from [https://github.com/alexbosworth/run-lnd#install-lnd bos installation instructions]
These instructions are from [https://github.com/alexbosworth/run-lnd#install-lnd bos installation instructions]
<code>
<code>
curl -sL https://deb.nodesource.com/setup_14.x | sudo -E bash -
curl -sL https://deb.nodesource.com/setup_14.x | sudo -E bash -
sudo apt-get install -y nodejs
sudo apt-get install -y nodejs
# Avoid using sudo with NPM
# Avoid using sudo with NPM
mkdir ~/.npm-global
mkdir ~/.npm-global
npm config set prefix '~/.npm-global'
npm config set prefix '~/.npm-global'
# Update path
# Update path
emacs ~/.profile
emacs ~/.profile
# Add line to the end
# Add line to the end
PATH="$HOME/.npm-global/bin:$PATH"
PATH="$HOME/.npm-global/bin:$PATH"
# Save and exit, update shell:
# Save and exit, update shell:
. ~/.profile
. ~/.profile

Revision as of 20:58, 29 August 2021

Installing BOS

These are the commands to enter in a command-line interface for Umbrel - (once you have ssh'd into your umbrel, you can follow these steps):

Install npm first if you do not have it

apt install npm

If there are errors, run the command with sudo sudo apt install npm

These instructions are from bos installation instructions

curl -sL https://deb.nodesource.com/setup_14.x | sudo -E bash - sudo apt-get install -y nodejs

  1. Avoid using sudo with NPM

mkdir ~/.npm-global npm config set prefix '~/.npm-global'

  1. Update path

emacs ~/.profile

  1. Add line to the end

PATH="$HOME/.npm-global/bin:$PATH"

  1. Save and exit, update shell:

. ~/.profile

  1. Install balanceofsatoshis

npm i -g balanceofsatoshis

Step 3: Validate that the tool is working:

Run the following commands and validate the output (not an error):

bos --version
bos utxos


Step 4: Installing Telegram Bot

Go to Telegram Start chat with @BotFather press /start /newbot Decide A bot name NodeAliasNew Decide a bot user name for telegram BotName_bot

You will get a long alphanumeric API KEY for the bot, Note that. You can always retrieve it using /mybot with BotFather Now you will be at a connect key prompt. Go to next step before pressing anything.

Now come back to your node

On your SSH session bos telegram at first prompt type API key (alpha numeric) received from BotFather

In telegram go to your bot (link in BotFather window usually @BotName_bot

type /connect

you will get a numeric key

type that numeric key on the second prompt in your ssh session with bos telegram

You should get a connected message in your Telegram Bot as well as on SSH session.

Verify by typing /version in your telegram bot and you should see the version number of bos.


Press Ctrl-C in SSH session with bos telegram Now run it as nohup bos telegram --connect <yourConnectionCode> --budget <yourBudgetAmount-OPTIONAL> 1> /dev/null 2>&1 &

This will run your telegram bot even if you come out of your ssh session.

Instead of nohup you can also run it under TMUX if you are familiar.

You may also run this with a docker command, this is the UMBREL SPECIFIC docker command string to run the telegram bot:

docker run -d --restart always --network="host" --add-host=umbrel.local:10.21.21.9 -v $HOME/.bos:/home/node/.bos -v $HOME/umbrel/lnd:/home/node/.lnd:ro alexbosworth/balanceofsatoshis:latest telegram --connect <YOUR CONNECT CODE HERE>

TMUX Installation

TMUX To use tmux, you can do the following:

sudo apt-get install tmux

tmux new -s <give any session name>

The session name can be anything you like to name. e.g. "my_telegram_bot"

then in that window bos telegram --connect <connect id> where connect_id is your connection id - numeric key received from bot.

at this point, your bot should be working

to detach from TMUX, now enter ctrl+b d note ctrl-b is one command followed by d (not ctrl-b d together)

It should say detached from the session

If you want to connect back to this session later, just ssh again and then tmux ls and you should see your session you can then use tmux attach -t <YourSessionNameHere> you can keep attaching and detaching from the session and it keeps running

tmux kill-server —— to kill the sessions tmux attach -t <session name>

Paying invoices from bot

If you have secure access to your telegram account and you want to allow the Telegram Bot to pay invoices set a budget to pay for invoices through telegram using bot's /pay command:

bos telegram —-connect <numeric key from telegram bot> —-budget <yourMaxBudget in sats>

If you prefer to use bot only for messages from your node, do not set budget and it wont be able to pay any invoices.