50 lines
1.0 KiB
Bash
Executable File
50 lines
1.0 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
|
|
EVENT=$(echo '["REQ", "x", { "kinds": [611] }]' | websocat --ping-interval 20 wss://npub.info | tail -2 | head -1)
|
|
|
|
ID=$(echo "$EVENT" | jq -r .[2].id)
|
|
|
|
echo "$ID"
|
|
|
|
CONTENT=$(echo "$EVENT" | jq -r .[2].content)
|
|
|
|
echo "$CONTENT"
|
|
|
|
echo "$EVENT" | jq -r .[2] > ./contract/calls/"$ID".json
|
|
|
|
PROOF=$(echo "$EVENT" | jq -r .[2].tags[0][1])
|
|
|
|
echo "$PROOF"
|
|
|
|
# check unspent
|
|
TX=$(echo "$PROOF" | cut -d : -f 5)
|
|
VOUT=$(echo "$PROOF" | cut -d : -f 6)
|
|
|
|
# check keys
|
|
SPENT=$(curl -sSL "https://mempool.space/testnet4/api/tx/$TX/outspend/${VOUT}" | jq .spent)
|
|
|
|
echo SPENT "$SPENT"
|
|
|
|
if [ "$SPENT" = 'false' ]
|
|
then
|
|
|
|
/home/melvin/go/bin/nak event -c "accepted" --kind 612 --sec $(git config nostr.privkey) wss://npub.info/ &
|
|
|
|
contract/contract.js "$CONTENT"
|
|
|
|
~/bin/gitmark/bin/gitmark.sh call-"$ID"
|
|
|
|
/home/melvin/go/bin/nak event -c "marked" --kind 612 --sec $(git config nostr.privkey) wss://npub.info/ &
|
|
|
|
|
|
# TODO: spend it
|
|
|
|
fi
|
|
|
|
|
|
|
|
# jq ".hue = $CONTENT" contract/state.json > .git/state
|
|
# mv .git/state contract/state.json
|
|
|
|
|