-
-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathdeleteall.sh
executable file
·83 lines (72 loc) · 1.43 KB
/
deleteall.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
#!/bin/bash
usage()
{
echo "
Usage: git nostr deleteall [options]
ex: git nostr deleteall --secretkey 52ed04be330fc70e005fb18b222e0fbaddce7511c19205a874c51c95ac53ebcd --relay ws://0.0.0.0:8080
Send a delete event for all messages
convienience command for development
Options:
--secretkey nostr secret key
--relay nostr relay url
"
exit 2
}
while [[ $# -gt 0 ]]
do
key="$1"
case $key in
-h | --help)
usage
;;
--secretkey)
SECRETKEY=$2
shift
shift
;;
--relay)
RELAY="$2"
shift
shift
;;
esac
done
if [ "$SECRETKEY" = "" ]; then
SECRETKEY=`git config nostr.secretkey`
fi
if [ "$RELAY" = "" ]; then
RELAY=`git config nostr.relay`
fi
if [ "$SECRETKEY" = "" ]; then
usage
fi
if [ "$RELAY" = "" ]; then
usage
fi
PUBLICKEY=`nostril --sec $SECRETKEY | jq --raw-output .pubkey`
queryMessageIDsForDelete () {
nostril query |
websocat $RELAY |
jq --raw-output '.[] ' |
grep \"id\": |
awk '{print $2}' |
sed 's/[\",]//g'
}
createDeleteMessages () {
awk \
-v secretkey=$SECRETKEY \
'{system(" \
nostril \
--envelope \
--sec "secretkey" \
--tag e \""$1"\" \
--kind 5" \
)}'
}
DELETEDIDS=`queryMessageIDsForDelete | \
createDeleteMessages | \
tee \
>(websocat "$RELAY" | jq -c .|grep OK | jq --raw-output .[1]) \
>/dev/null \
`
echo $DELETEDIDS > /dev/null