Files
electronwall/api_test/main.go
callebtc ef375c01bd api done
2022-08-24 22:20:14 +02:00

52 lines
1.2 KiB
Go

package main
import (
"os"
"github.com/callebtc/electronwall/api"
"github.com/callebtc/electronwall/rules"
"github.com/callebtc/electronwall/types"
"github.com/lightningnetwork/lnd/lnrpc"
log "github.com/sirupsen/logrus"
)
func main() {
if len(os.Args) < 2 {
log.Errorf("Pass node ID as argument.")
return
}
pubkey := os.Args[1]
log.Infof("pubkey: %s", pubkey)
pk_byte := []byte(pubkey)
decision_chan := make(chan bool, 1)
event := types.ChannelAcceptEvent{}
event.Event = &lnrpc.ChannelAcceptRequest{}
event.Event.FundingAmt = 1_000_000
log.Infof("Funding amount: %d sat", event.Event.FundingAmt)
event.Event.NodePubkey = pk_byte
req := lnrpc.ChannelAcceptRequest{}
req.NodePubkey = pk_byte
nodeInfo, err := api.GetApiNodeinfo(string(req.NodePubkey))
if err != nil {
log.Errorf(err.Error())
}
// log.Infoln("1ML")
// // log.Infoln("%+v", noeInfo.OneMl)
// log.Printf("%+v\n", nodeInfo.OneMl)
// log.Infoln("Amboss")
// log.Printf("%+v\n", nodeInfo.Amboss)
event.OneMl = nodeInfo.OneMl
event.Amboss = nodeInfo.Amboss
rules_decision, err := rules.Apply(event, decision_chan)
if err != nil {
panic(err)
}
log.Infof("Decision: %t", rules_decision)
}