59 lines
1.5 KiB
Text
59 lines
1.5 KiB
Text
|
#!/bin/bash
|
||
|
LPORT="${NLINKS:-9000}"
|
||
|
RPORT="${NLINKS:-9000}"
|
||
|
NLINKS="${NLINKS:-16}"
|
||
|
SCHED="${SCHED:-tick_tock=0}"
|
||
|
LOGS="/tmp/donar_log"
|
||
|
mkdir -p $LOGS
|
||
|
echo "[+] Log folder is $LOGS"
|
||
|
|
||
|
tor2 -f /etc/torrc_simple > $LOGS/tor.stdout 2> $LOGS/tor.stderr &
|
||
|
echo "[+] Started Tor"
|
||
|
sleep 2
|
||
|
|
||
|
echo "[+] Please enter links and finish with an empty line"
|
||
|
while read -r $line; do
|
||
|
[ -z "$line" ] && break
|
||
|
echo $line >> onion_services.pub
|
||
|
done
|
||
|
|
||
|
donar \
|
||
|
-a lightning \
|
||
|
-c \
|
||
|
-o onion_services.pub \
|
||
|
-l $NLINKS \
|
||
|
-p $SCHED \
|
||
|
-b \
|
||
|
-e $LPORT \
|
||
|
-r $RPORT \
|
||
|
> $LOGS/client-donar-stdout.log 2> $LOGS/client-donar-stderr.log &
|
||
|
echo "[+] Started Donar. Local port is $LPORT, remote port is $RPORT."
|
||
|
|
||
|
gst-launch-1.0 \
|
||
|
autoaudiosrc ! \
|
||
|
webrtcdsp ! \
|
||
|
queue ! \
|
||
|
audioresample ! \
|
||
|
opusenc audio-type=voice inband-fec=FALSE frame-size=40 bitrate=32000 dtx=TRUE ! \
|
||
|
rtpopuspay ! \
|
||
|
udpsink host=127.13.3.7 port=9000 async=FALSE \
|
||
|
udpsrc port=9000 caps="application/x-rtp" ! \
|
||
|
rtpjitterbuffer do-lost=TRUE do-retransmission=FALSE latency=10 ! \
|
||
|
rtpopusdepay ! \
|
||
|
opusdec plc=TRUE use-inband-fec=FALSE ! \
|
||
|
audioresample ! \
|
||
|
webrtcechoprobe ! \
|
||
|
autoaudiosink > $LOGS/gstreamer.stdout 2> $LOGS/gstreamer.stderr &
|
||
|
echo "[+] Started GStreamer"
|
||
|
|
||
|
echo "[+] Waiting for connections"
|
||
|
connections=0
|
||
|
while [ $connections -ne $NLINKS ]; do
|
||
|
sleep 1
|
||
|
connections=$(grep 'Succeeded,' $LOGS/client-donar-stdout.log | wc -l)
|
||
|
echo -ne "Connecting: $connections/$NLINKS%\033[0K\r"
|
||
|
done
|
||
|
echo "Ready"
|
||
|
|
||
|
echo "[+] Let's rocks!"
|