python-aprs-beacon/install.sh

116 lines
4.4 KiB
Bash

#!/bin/bash
sudo apt update
sudo apt install python3 -y
if [ -d "/opt/python-aprs" ]
then
rm -r /opt/python-aprs
fi
mkdir /opt/python-aprs
sudo cat > /lib/systemd/system/py-aprsb1.service <<- "EOF"
[Unit]
Description=Python APRS BEACOM1
After=syslog.target network.target
[Service]
User=root
Type=simple
Restart=always
RestartSec=3
StandardOutput=null
ExecStart=/usr/bin/python3 /opt/python-aprs/bcom1.py
[Install]
WantedBy=multi-user.target
EOF
#
sudo cat > /opt/python-aprs/bcom1.py <<- "EOF"
import socket
import time
callsign = "HP3ICC-10" # Callsign
password = "12345" # aprspasscode
latitude = "0831.27N" # DDMM.mmN (0831.27N)
longitude = "08021.59W" # DDDMM.mmW (08021.59W)
comment = "Python APRS BEACON-1" # coment beacon
simbol_primary = "/" # simbol id
simbol_secundary = "r" # simbol code
serverHost = "soam.aprs2.net" # aprs server url
serverPort = 14580 # aprs server port
every = 30 # time minute every send beacon
##############################################################################
address = f"{callsign}>APHP03,TCPIP:"
login = f"user {callsign} pass {password} vers emq-TE1 Python APRS Beacon 1.3"
text = "emq-TE1 Python APRS Beacon"
packet = f"{address}!{latitude}{simbol_primary}{longitude}{simbol_secundary}{comment}"
packet2 = f"{address}>{text}"
print(packet)
print(len(comment))
while True:
try:
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
sock.connect((serverHost, serverPort))
sock.send(f"{login}\n".encode())
sock.send(f"{packet}\n".encode())
sock.send(f"{packet2}\n".encode())
sock.close()
except Exception as e:
print(f"Error al enviar el paquete: {e}")
time.sleep(every * 60)
EOF
cp /lib/systemd/system/py-aprsb1.service /lib/systemd/system/py-aprsb2.service
cp /lib/systemd/system/py-aprsb1.service /lib/systemd/system/py-aprsb3.service
cp /lib/systemd/system/py-aprsb1.service /lib/systemd/system/py-aprsb4.service
cp /lib/systemd/system/py-aprsb1.service /lib/systemd/system/py-aprsb5.service
cp /lib/systemd/system/py-aprsb1.service /lib/systemd/system/py-aprsb6.service
cp /lib/systemd/system/py-aprsb1.service /lib/systemd/system/py-aprsb7.service
cp /lib/systemd/system/py-aprsb1.service /lib/systemd/system/py-aprsb8.service
cp /opt/python-aprs/bcom1.py /opt/python-aprs/bcom2.py
cp /opt/python-aprs/bcom1.py /opt/python-aprs/bcom3.py
cp /opt/python-aprs/bcom1.py /opt/python-aprs/bcom4.py
cp /opt/python-aprs/bcom1.py /opt/python-aprs/bcom5.py
cp /opt/python-aprs/bcom1.py /opt/python-aprs/bcom6.py
cp /opt/python-aprs/bcom1.py /opt/python-aprs/bcom7.py
cp /opt/python-aprs/bcom1.py /opt/python-aprs/bcom8.py
sudo sed -i "s/BEACOM1/BEACOM2/g" /lib/systemd/system/py-aprsb2.service
sudo sed -i "s/BEACOM1/BEACOM3/g" /lib/systemd/system/py-aprsb3.service
sudo sed -i "s/BEACOM1/BEACOM4/g" /lib/systemd/system/py-aprsb4.service
sudo sed -i "s/BEACOM1/BEACOM5/g" /lib/systemd/system/py-aprsb5.service
sudo sed -i "s/BEACOM1/BEACOM6/g" /lib/systemd/system/py-aprsb6.service
sudo sed -i "s/BEACOM1/BEACOM7/g" /lib/systemd/system/py-aprsb7.service
sudo sed -i "s/BEACOM1/BEACOM8/g" /lib/systemd/system/py-aprsb8.service
sudo sed -i "s/bcom1/bcom2/g" /lib/systemd/system/py-aprsb2.service
sudo sed -i "s/bcom1/bcom3/g" /lib/systemd/system/py-aprsb3.service
sudo sed -i "s/bcom1/bcom4/g" /lib/systemd/system/py-aprsb4.service
sudo sed -i "s/bcom1/bcom5/g" /lib/systemd/system/py-aprsb5.service
sudo sed -i "s/bcom1/bcom6/g" /lib/systemd/system/py-aprsb6.service
sudo sed -i "s/bcom1/bcom7/g" /lib/systemd/system/py-aprsb7.service
sudo sed -i "s/bcom1/bcom8/g" /lib/systemd/system/py-aprsb8.service
sudo sed -i "s/Python APRS BEACON-1/Python APRS BEACON-1/g" /opt/python-aprs/bcom1.py
sudo sed -i "s/Python APRS BEACON-1/Python APRS BEACON-2/g" /opt/python-aprs/bcom2.py
sudo sed -i "s/Python APRS BEACON-1/Python APRS BEACON-3/g" /opt/python-aprs/bcom3.py
sudo sed -i "s/Python APRS BEACON-1/Python APRS BEACON-4/g" /opt/python-aprs/bcom4.py
sudo sed -i "s/Python APRS BEACON-1/Python APRS BEACON-5/g" /opt/python-aprs/bcom5.py
sudo sed -i "s/Python APRS BEACON-1/Python APRS BEACON-6/g" /opt/python-aprs/bcom6.py
sudo sed -i "s/Python APRS BEACON-1/Python APRS BEACON-7/g" /opt/python-aprs/bcom7.py
sudo sed -i "s/Python APRS BEACON-1/Python APRS BEACON-8/g" /opt/python-aprs/bcom8.py
systemctl daemon-reload
sudo chmod +x /opt/python-aprs/*