Commit graph

50 commits

Author SHA1 Message Date
Stefan Stammberger
9dfd95032a
refactor: move code from lnd impl to repository
This avoids duplicated code with other ln implementations later on.

This also pushes LightningStatus object to the SSE channel
instead of the full LnInfo object.

refs #11
2021-09-07 20:59:23 +02:00
Stefan Stammberger
2fd3381521
fix: temporary unversion SSE channel
The SEE channel currently doesn't work with fastapi-versioned.
2021-09-07 19:52:57 +02:00
Stefan Stammberger
c673394fa8
refactor: system API
refs #11
2021-09-05 20:23:59 +02:00
Stefan Stammberger
79be6eaf34
refactor: lightning API
refs #11
2021-09-05 19:19:53 +02:00
Stefan Stammberger
f482c441cc
chore: format all files using black 2021-09-05 08:56:53 +02:00
Stefan Stammberger
f0b911db1e
refactor: bitcoin API
refs #11
2021-09-04 15:38:17 +02:00
Stefan Stammberger
bd6186861c
fix: include stream in API versioning 2021-08-18 19:05:41 +02:00
Stefan Stammberger
abdf56ccbd
feat: introduce API versioning support
If no version is set to a path then v1 is used by default.

closes #13
2021-08-18 17:48:23 +02:00
Stefan Stammberger
2b03882907
refactor: rename "password_a" to "password" 2021-08-17 18:53:53 +02:00
Stefan Stammberger
7ecf29cef0
feat: enhancements to /system/login
* password_a must now be posted in the request body as a json object
* password is now read from the .env file instead of hardcoded
* password will be checked if it is min 8 chars
* one_time_password is not yet in use and optional
2021-08-17 18:34:05 +02:00
Stefan Stammberger
343d1703dd
chore: auto-format grpc files 2021-08-14 13:47:51 +02:00
Stefan Stammberger
89676b4c17
chore: exclude lnd grpc files from code scanning 2021-08-14 13:08:34 +02:00
fusion44
ee41a2a8e5
Create codacy-analysis.yml 2021-08-13 14:30:13 +02:00
fusion44
2ff4d1efb2
Create codeql-analysis.yml 2021-08-13 14:28:33 +02:00
Stefan Stammberger
0c90450bea
feat: improve how to fetch wallet balances
* /lightning/getbalance now returns onchain funds and channel
balances as one object
* changes to the wallet balance are now pushed through the SSE channel
2021-08-03 21:20:24 +02:00
Stefan Stammberger
d4de6af895
fix: update .env_sample file with ln info interval 2021-08-02 21:02:55 +02:00
Stefan Stammberger
e65c5bfc3f
feat: implement LN info endpoint / SSE messages 2021-08-02 20:30:18 +02:00
Stefan Stammberger
54dd7b77f3
feat: add more data to get bitcoin info response 2021-08-01 10:32:43 +02:00
Stefan Stammberger
464f22ac54
fix: multiple small updates for hw info endpoint
* disk stats where not included when getting hardware info
* update hardware info endpoint response description
* rename disk "partition_usage_bytes" to "partition_total_bytes"
2021-08-01 07:50:24 +02:00
Stefan Stammberger
38c93f6b58
feat: implement sendpayment endpoint for LND 2021-07-27 21:10:25 +02:00
Stefan Stammberger
da5d97a550
feat: watch for invoice changes and push via SSE
Currently only LND is implemented.
2021-07-25 18:15:26 +02:00
Stefan Stammberger
13883d43c3
feat: add a launch configuration for vscode 2021-07-25 17:25:32 +02:00
Stefan Stammberger
c33351d968
refactor: move some config vars to the .env file 2021-07-25 17:24:33 +02:00
Stefan Stammberger
bba02d03e3
feat: create gRPC channel in async mode
Previously any subscriptions blocked the whole app when
listening to events and all other calls are async now too.
2021-07-25 16:52:34 +02:00
Stefan Stammberger
4b75243cde
feat: add lightning AddInvoice endpoint
Though, only LND is implemented at the moment.
2021-07-21 19:38:49 +02:00
Stefan Stammberger
a44717547f
feat: LND loading adapted
- the .env file should contain the cert in HEX format
- gRPC channel is now created during load within the LND utils class

closes #3
2021-07-21 18:58:35 +02:00
Stefan Stammberger
66c5ea65ab
fix: don't start handlers multiple times
Currently a handler was started for each connected SSE client.
2021-07-19 20:12:46 +02:00
Stefan Stammberger
2019d34cfa
fix: use asyncio.sleep instead of time.sleep 2021-07-18 09:39:13 +02:00
Stefan Stammberger
47d654c9db
fix: more python3.7 incompatibilities 2021-07-18 07:59:19 +02:00
fusion44
48ee10f532
Merge pull request #1 from cstenglein/main
add installation instructions to README
2021-07-17 21:42:19 +02:00
Stefan Stammberger
577f1c3e0f
feat: integrate sse-starlette source
As of sse-starlette 0.7.x the requirements changed to Python 2.8 which
is not yet available for Raspiblitz.  The source file doesn't require
actually Python 2.8 => Integrate directly into Blitz API source
2021-07-17 21:40:37 +02:00
Christoph Stenglein
03701ece61
add installation instructions to README 2021-07-13 20:53:45 +02:00
Stefan Stammberger
be3172a67f
feat: add redis configuration options
FastAPIs redis-plugin picks them up automatically
2021-07-12 20:40:14 +02:00
Stefan Stammberger
be3719f50c
feat: push hardware info through SSE channel 2021-07-11 21:09:05 +02:00
Stefan Stammberger
0eab9f6371
refactor: clarify .env entry names 2021-07-11 21:07:34 +02:00
Stefan Stammberger
631da5c217
feat: track subscriber count to SSE endpoint 2021-07-11 20:32:49 +02:00
Stefan Stammberger
e7ffb2943d
feat: add preliminary setup routes 2021-07-10 17:57:06 +02:00
Stefan Stammberger
7ff3392a0b
feat: add lnd connectivity and first gRPC call 2021-07-10 17:15:02 +02:00
Stefan Stammberger
bd38a5ecc2
feat: implement more bitcoin endpoints
- getnetworkinfo
- getbitcoininfo
- gather bitcoin info on change and push via SSE sub
2021-07-09 19:45:29 +02:00
Stefan Stammberger
97458fb3f8
feat: implement bitcoin core block hash zmq sub
Block data will be published to sse/subscribe SSE endpoint
2021-06-25 18:40:27 +02:00
Stefan Stammberger
f037854748
feat: implement basic SSE using Redis 2021-06-22 21:07:15 +02:00
Stefan Stammberger
11aa0a6b6f
feat: implement an app status mock 2021-06-20 10:26:21 +02:00
Stefan Stammberger
9704d629ae
refactor: create bitcoin repository 2021-06-20 07:47:30 +02:00
Stefan Stammberger
0a3689722a
fix: commented out auth check 2021-06-20 06:55:27 +02:00
Stefan Stammberger
05080999c2
feat: implement a block subscription 2021-06-19 16:31:25 +02:00
Stefan Stammberger
aec4a3515b
feat: add async bitcoin RPC func; refactor config
refactor: generalize the way the .env file is read and accessed
2021-06-19 16:20:47 +02:00
Stefan Stammberger
5eeedd755e
feat: implement first bitcoin core REST calls 2021-06-13 10:16:54 +02:00
Stefan Stammberger
51e369cf14
feat: implement get hardware info api 2021-06-12 15:07:35 +02:00
fusion44
b62e52aee0
Create README.md 2021-06-10 21:19:24 +02:00
Stefan Stammberger
9046195d02
initial commit 2021-06-10 21:13:26 +02:00