Compare commits

...

11 Commits

Author SHA1 Message Date
Esteban Mackay Q. 8737811538 Update menu-dvs 2025-02-03 01:01:00 -05:00
Esteban Mackay Q. f0770419bd 250202 2025-02-02 22:21:30 -05:00
Esteban Mackay Q. 7f8eede056 Update dv-list-tg.sh 2025-02-02 20:08:34 -05:00
Esteban Mackay Q. 55a7114978 Update dv-list-tg.sh 2025-02-02 20:02:19 -05:00
Esteban Mackay Q. 2e01ce7462 Update dv-list-tg.sh 2025-02-02 19:57:57 -05:00
Esteban Mackay Q. bef1092d19 Update dv-list-tg.sh 2025-02-02 19:57:02 -05:00
Esteban Mackay Q. b7790f3116 Update dv-list-tg.sh 2025-02-02 19:55:45 -05:00
Esteban Mackay Q. 49b6107281 Update dv-list-tg.sh 2025-02-02 19:54:50 -05:00
Esteban Mackay Q. 15801a7fc1 Update dv-list-tg.sh 2025-02-02 19:53:01 -05:00
Esteban Mackay Q. 343b3711e7 Update dvs-nb.sh 2025-02-02 19:33:28 -05:00
Esteban Mackay Q. b980a68c08 Update dvswitch.sh 2025-02-02 19:33:18 -05:00
5 changed files with 306 additions and 295 deletions

View File

@ -4,7 +4,10 @@ if [ $EUID -ne 0 ]; then
whiptail --title "sudo su" --msgbox "requiere ser usuario root , escriba (sudo su) antes de entrar a menu / requires root user, type (sudo su) before entering menu" 0 50
exit 1
fi
# Crear archivo de versión
cat > /opt/emq-ver <<- "EOF"
EMQ-VER: 25.02.02
EOF
# Actualizar la lista de paquetes una vez al principio
apt-get update
@ -195,34 +198,11 @@ sudo systemctl enable gotty.service
# Ajustar configuración de Jitter
find /opt/ -type f -exec sed -i "s|Jitter=.*|Jitter=240|g" {} +
# Crear script de finalización
cat > /tmp/completado.sh <<- "EOF"
#!/bin/bash
while : ; do
choix=$(whiptail --title "Raspbian Proyect HP3ICC Esteban Mackay 73." --menu " Precione enter (return o intro) para finalizar la instalacion y reiniciar" 11 85 3 \
1 " Iniciar Reinicio de equipo " 3>&1 1>&2 2>&3)
exitstatus=$?
if [ $exitstatus = 0 ]; then
echo "Your chosen option:" $choix
else
echo "You chose cancel."; break;
fi
case $choix in
1)
sudo reboot
;;
esac
done
exit 0
EOF
# Crear archivo de versión
cat > /opt/emq-ver <<- "EOF"
EMQ-VER: 25.01.29
EOF
# Ejecutar menú principal
bash -c "$(curl -fsSLk https://gitlab.com/hp3icc/emq-TE1/-/raw/main/menu/menu)"
sudo chmod +x /tmp/completado.sh
# Crear script de finalización
variable22=$(grep "EMQ-VER:" /opt/emq-ver | grep -Eo '[A.0-9]{1,9}')
whiptail --title "emq-TE1+ Rev: $variable22" --msgbox "Instalacion finalizada / Installation completed:\n\n\
El equipo requiere reinicia, ingrece nuevamente y escriba menu\n\
The computer requires a restart, enter again and type menu" 0 50
history -c && history -w
sh /tmp/completado.sh
sudo reboot

View File

@ -8,29 +8,7 @@ echo "Inicio: $SCRIPT_NAME" >> /opt/curl.txt
# dvswitch
#############################################################################################################################
bash -c "$(curl -fsSLk https://gitlab.com/hp3icc/Easy-DVSwitch/-/raw/main/install.sh)"
wget https://gitlab.com/hp3icc/emq-TE1/-/raw/main/install/dvs -O /usr/local/dvs/dvs
sudo chmod +x /usr/local/dvs/dvs
#
wget https://gitlab.com/hp3icc/DVSwitch-Mobile-TG-List/-/raw/main/lang.sh -O /tmp/lang.sh
sudo chmod +x /tmp/lang.sh
sh /tmp/lang.sh
sudo sed -i '538s/curl --fail -o "$NODE_DIR\/$1" -s.*/curl --fail -o "$NODE_DIR\/$1" -s http:\/\/datafiles.ddns.net:8888\/downloads\/$1/' /opt/MMDVM_Bridge/dvswitch.sh &&
###
sed -i "s/default_dmr_server=.*/default_dmr_server=ADN-Systems/g" /var/lib/dvswitch/dvs/var.txt
sed -i "s/other1_name=.*/other1_name=ADN-Systems/g" /var/lib/dvswitch/dvs/var.txt
sed -i "s/other1_address=.*/other1_address=7141.adn.systems/g" /var/lib/dvswitch/dvs/var.txt
sed -i "s/other1_password=.*/other1_password=passw0rd/g" /var/lib/dvswitch/dvs/var.txt
sed -i "s/other1_port=.*/other1_port=62031/g" /var/lib/dvswitch/dvs/var.txt
sed -i "s/other2_name=.*/other2_name=DMR-Central/g" /var/lib/dvswitch/dvs/var.txt
sed -i "s/other2_address=.*/other2_address=dmr.pa7lim.nl/g" /var/lib/dvswitch/dvs/var.txt
sed -i "s/other2_password=.*/other2_password=passw0rd/g" /var/lib/dvswitch/dvs/var.txt
sed -i "s/other2_port=.*/other2_port=55555/g" /var/lib/dvswitch/dvs/var.txt
sed -i "s/42000/42500/g" /opt/YSFGateway/YSFGateway.ini
sed -i "s/42001/43001/g" /opt/YSFGateway/YSFGateway.ini
sed -i "s/RptPort=3200/RptPort=3230/g" /opt/YSFGateway/YSFGateway.ini
sed -i "s/LocalPort=4200/LocalPort=4230/g" /opt/YSFGateway/YSFGateway.ini
if [ -d "/var/www/dvs" ]
then
if [ -d "/var/www/dvs" ]; then
rm -r /var/www/dvs
fi
mkdir /var/www/dvs
@ -38,124 +16,11 @@ mv /var/www/html/* /var/www/dvs/ &&
#sed -i "s/'UTC'/'Africa\/Lagos'/" /var/www/dvs/include/*.php
sed -i "s/www\/html/www\/dvs/g" /var/www/dvs/include/* &&
#sed -i "s/usrp.duckdns.org\/user.csv/datafiles.ddns.net:8888\/user.csv/g" /var/www/dvs/include/* &&
#sed -i "s/Dashboard based on Pi-Star Dashboard, © Andy Taylor.*/Dashboard based on Pi-Star Dashboard, © Andy Taylor (MW0MWZ) and adapted to DVSwitch by SP2ONG<br> <a title=\"Raspbian Proyect by HP3ICC © <?php \$cdate=date(\"Y\"); if (\$cdate > \"2018\") {\$cdate=\"2018-\".date(\"Y\");} echo \$cdate; ?>\" target=\"_blank\" href=https:\/\/gitlab.com\/hp3icc\/emq-TE1\/>Script project: emq-TE1ws+<\/a><\/span><\/center>/" /var/www/dvs/index.php &&
#sed -i "s/<meta name=\"Description\".*/<meta name=\"Description\" content=\"Dashboard based on Pi-Star Dashboard, © Andy Taylor (MW0MWZ) and adapted to DVSwitch by SP2ONG\" \/>/" /var/www/dvs/index.php &&
cp /var/www/dvs/index.php /opt/index-dvs.txt
sed -i "s/Dashboard based on Pi-Star Dashboard, © Andy Taylor.*/Dashboard based on Pi-Star Dashboard, © Andy Taylor (MW0MWZ) and adapted to DVSwitch by SP2ONG<br> <a title=\"Script Proyect by HP3ICC © <?php \$cdate=date(\"Y\"); if (\$cdate > \"2018\") {\$cdate=\"2018-\".date(\"Y\");} echo \$cdate; ?>\" target=\"_blank\" href=https:\/\/gitlab.com\/hp3icc\/emq-TE1\/>Script project: emq-TE1+<\/a><\/span><\/center>/" /var/www/dvs/index.php &&
sed -i "s/<meta name=\"Description\".*/<meta name=\"Description\" content=\"Dashboard based on Pi-Star Dashboard, © Andy Taylor (MW0MWZ) and adapted to DVSwitch by SP2ONG\" \/>/" /var/www/dvs/index.php &&
sed -i "s/www\/html/www\/dvs/g" /usr/local/sbin/update-config.sh
sed -i "s/www\/html/www\/dvs/g" /var/lib/dpkg/info/dvswitch*
sed -i "s/Language=en_US/Language=es_ES/g" /opt/NXDNGateway/NXDNGateway.ini
sed -i "s/Language=en_US/Language=es_ES/g" /opt/P25Gateway/P25Gateway.ini
#
sudo cat > /opt/MMDVM_Bridge/MMDVM_Bridge.ini <<- "EOF"
[General]
Callsign=N0CALL
Id=1234567
Timeout=300
Duplex=0
[Info]
RXFrequency=147000000
TXFrequency=147000000
Power=1
Latitude=8.5211
Longitude=-80.3598
Height=0
Location=DVSwitch Server
Description=MMDVM DVSwitch
URL=https://groups.io/g/DVSwitch
[Log]
# Logging levels, 0=No logging, 1=Debug, 2=Message, 3=Info, 4=Warning, 5=Error, 6=Fatal
DisplayLevel=1
FileLevel=1
FilePath=/var/log/mmdvm
FileRoot=MMDVM_Bridge
[DMR Id Lookup]
File=/var/lib/mmdvm/DMRIds.dat
Time=24
[NXDN Id Lookup]
File=/var/lib/mmdvm/NXDN.csv
Time=24
[Modem]
Port=/dev/null
RSSIMappingFile=/dev/null
Trace=0
Debug=0
[D-Star]
Enable=0
Module=B
[DMR]
Enable=0
ColorCode=1
EmbeddedLCOnly=1
DumpTAData=0
[System Fusion]
Enable=0
[P25]
Enable=0
NAC=293
[NXDN]
Enable=0
RAN=1
Id=12345
[D-Star Network]
Enable=0
GatewayAddress=127.0.0.1
GatewayPort=20010
LocalPort=20011
Debug=0
[DMR Network]
Enable=0
Address=hblink.dvswitch.org
Port=62031
Jitter=240
Local=62032
Password=passw0rd
# for DMR+ see https://github.com/DVSwitch/MMDVM_Bridge/blob/master/DOC/DMRplus_startup_options.md
# for XLX the syntax is: Options=XLX:4009
# No active linea de Option para TG estaticos, si utiliza BM,TGIF,DMR-Central
# Puede activar linea de option de selfcare FDMR-Mon y colocar su propia contraseña o
# utilizar linea de options con opciones de tg estaticos
#Options=PASS=abc123
#Options=TS2=714,7144;DIAL=0;VOICE=0;LANG=es_ES;SINGLE=0;TIMER=10;
Slot1=0
Slot2=1
Debug=0
[System Fusion Network]
Enable=0
LocalAddress=0
LocalPort=3230
GatewayAddress=127.0.0.1
GatewayPort=4230
Debug=0
[P25 Network]
Enable=0
GatewayAddress=127.0.0.1
GatewayPort=42020
LocalPort=32010
Debug=0
[NXDN Network]
Enable=0
#LocalAddress=127.0.0.1
Debug=0
LocalPort=14021
GatewayAddress=127.0.0.1
GatewayPort=14020
EOF
####
#####
sudo systemctl daemon-reload
sudo systemctl disable lighttpd.service
sudo systemctl stop lighttpd.service

View File

@ -1,4 +1,5 @@
#!/bin/bash
if [ -f "/opt/emq-ver" ]; then
sed -i '156,183{/^$/!s/^/\/\/ /}' /var/www/dvs/index.php
sed -i '204,217{/^$/!s/^/\/\/ /}' /var/www/dvs/index.php
#sed -i '189,203{/^$/!s/^/\/\/ /}' /var/www/dvs/index.php
@ -6,3 +7,13 @@ sed -i '133,154{/^$/!s/^/\/\/ /}' /var/www/dvs/index.php
sed -i '190s/.*/<!-- & -->/' /var/www/dvs/index.php
#no allmon2
sed -i "220s/etc\/asterisk\/extensions.conf/etc\/asterisk\/extensions.conf2/" /var/www/dvs/index.php
fi
if [ ! -f "/opt/emq-ver" ]; then
sed -i '156,183{/^$/!s/^/\/\/ /}' /var/www/html/index.php
sed -i '204,217{/^$/!s/^/\/\/ /}' /var/www/html/index.php
#sed -i '189,203{/^$/!s/^/\/\/ /}' /var/www/html/index.php
sed -i '133,154{/^$/!s/^/\/\/ /}' /var/www/html/index.php
sed -i '190s/.*/<!-- & -->/' /var/www/html/index.php
#no allmon2
sed -i "220s/etc\/asterisk\/extensions.conf/etc\/asterisk\/extensions.conf2/" /var/www/html/index.php
fi

View File

@ -12,11 +12,11 @@ Web-Dashboar-dir: /var/www/dvs
EOFX
fi
if [ ! -d "/var/www/dvs/qrz_photo/" ] && [ ! -f "/usr/local/dvs/dvsmu" ]; then
if [ ! -d "/var/www/dvs/qrz_photo/" ] && [ ! -f "/usr/local/dvs/dvsmu" ] && [ -f "/opt/emq-ver" ]; then
sudo cat > /bin/menu-dvs <<- "EOF3"
#!/bin/bash
while : ; do
choix=$(whiptail --title "Raspbian Proyect HP3ICC Menu DVSwitch" --menu "Nota : Debe encender Dvswitch antes de editar para utilizar." 20 60 11 \
choix=$(whiptail --title "Script Proyect HP3ICC Menu DVSwitch" --menu "Nota : Debe encender Dvswitch antes de editar para utilizar." 20 60 11 \
1 " Encender Dvswitch " \
2 " Apagar Dvswitch " \
3 " Editar Dvswitch Server " \
@ -35,38 +35,85 @@ fi
case $choix in
1)
# Lista de servicios a reiniciar
# Directorio donde se encuentran los archivos de servicio
service_dir="/lib/systemd/system/"
# Lista de servicios base
servicios="md380-emu.service analog_bridge.service mmdvm_bridge.service nxdngateway.service p25gateway.service ysfgateway.service quantar_bridge.service ircddbgatewayd.service p25parrot.service ysfparrot.service nxdnparrot.service"
# Primero, detener todos los servicios
for servicio in $servicios; do
if systemctl is-enabled "$servicio" &>/dev/null || systemctl is-active "$servicio" &>/dev/null; then
echo "Deteniendo $servicio"
sudo systemctl stop "$servicio"
# Función para detener un servicio
stop_service() {
local service_name="$1"
if [ -f "$service_dir$service_name" ]; then
echo "Deteniendo $service_name"
sudo systemctl stop "$service_name" > /dev/null 2>&1
fi
}
# Función para iniciar y habilitar un servicio
start_and_enable_service() {
local service_name="$1"
if [ -f "$service_dir$service_name" ]; then
echo "Iniciando y habilitando $service_name"
sudo systemctl start "$service_name" > /dev/null 2>&1
sudo systemctl enable "$service_name" > /dev/null 2>&1
fi
}
# Detener todos los servicios base primero
for servicio in $servicios; do
stop_service "$servicio"
done
# Esperar un momento para asegurarse de que todos los servicios se detengan completamente
# Detener todos los servicios enumerados
for i in {01..40}; do
stop_service "mmdvm_bridge$i.service"
stop_service "analog_bridge$i.service"
stop_service "md380-emu$i.service"
done
# Esperar 5 segundos para asegurar que todos los servicios se detengan
sleep 5
# Luego, iniciar todos los servicios
# Iniciar y habilitar todos los servicios base
for servicio in $servicios; do
echo "Iniciando $servicio"
sudo systemctl start "$servicio"
sudo systemctl enable "$servicio" &>/dev/null
start_and_enable_service "$servicio"
done
# Iniciar y habilitar todos los servicios enumerados
for i in {01..40}; do
start_and_enable_service "mmdvm_bridge$i.service"
start_and_enable_service "analog_bridge$i.service"
start_and_enable_service "md380-emu$i.service"
done
;;
2)
# Lista de servicios a reiniciar
# Directorio donde se encuentran los archivos de servicio
service_dir="/lib/systemd/system/"
# Lista de servicios base
servicios="md380-emu.service analog_bridge.service mmdvm_bridge.service nxdngateway.service p25gateway.service ysfgateway.service quantar_bridge.service ircddbgatewayd.service p25parrot.service ysfparrot.service nxdnparrot.service"
# Recorre la lista de servicios y verifica si están activos
for servicio in $servicios; do
if systemctl is-enabled "$servicio" &>/dev/null || systemctl is-active "$servicio" &>/dev/null; then
echo "stop $servicio"
sudo systemctl disable "$servicio"
sudo systemctl stop "$servicio"
# Función para detener y deshabilitar un servicio
stop_and_disable_service() {
local service_name="$1"
if [ -f "$service_dir$service_name" ]; then
echo "Deteniendo y deshabilitando $service_name"
sudo systemctl stop "$service_name" > /dev/null 2>&1
sudo systemctl disable "$service_name" > /dev/null 2>&1
fi
}
# Detener y deshabilitar todos los servicios base
for servicio in $servicios; do
stop_and_disable_service "$servicio"
done
# Detener y deshabilitar todos los servicios enumerados
for i in {01..40}; do
stop_and_disable_service "mmdvm_bridge$i.service"
stop_and_disable_service "analog_bridge$i.service"
stop_and_disable_service "md380-emu$i.service"
done
rm /var/log/mmdvm/*;;
3)
@ -251,11 +298,11 @@ exit 0
EOF3
fi
#
if [ ! -d "/var/www/dvs/qrz_photo/" ] && [ -f "/usr/local/dvs/dvsmu" ]; then
if [ ! -d "/var/www/dvs/qrz_photo/" ] && [ -f "/usr/local/dvs/dvsmu" ] && [ -f "/opt/emq-ver" ]; then
sudo cat > /bin/menu-dvs <<- "EOFR"
#!/bin/bash
while : ; do
choix=$(whiptail --title "Raspbian Proyect HP3ICC Menu DVSwitch" --menu "Nota : Debe encender Dvswitch antes de editar para utilizar." 20 60 11 \
choix=$(whiptail --title "Script Proyect HP3ICC Menu DVSwitch" --menu "Nota : Debe encender Dvswitch antes de editar para utilizar." 20 60 11 \
1 " Encender Dvswitch " \
2 " Apagar Dvswitch " \
3 " Editar Dvswitch Server " \
@ -275,38 +322,85 @@ fi
case $choix in
1)
# Lista de servicios a reiniciar
# Directorio donde se encuentran los archivos de servicio
service_dir="/lib/systemd/system/"
# Lista de servicios base
servicios="md380-emu.service analog_bridge.service mmdvm_bridge.service nxdngateway.service p25gateway.service ysfgateway.service quantar_bridge.service ircddbgatewayd.service p25parrot.service ysfparrot.service nxdnparrot.service"
# Primero, detener todos los servicios
for servicio in $servicios; do
if systemctl is-enabled "$servicio" &>/dev/null || systemctl is-active "$servicio" &>/dev/null; then
echo "Deteniendo $servicio"
sudo systemctl stop "$servicio"
# Función para detener un servicio
stop_service() {
local service_name="$1"
if [ -f "$service_dir$service_name" ]; then
echo "Deteniendo $service_name"
sudo systemctl stop "$service_name" > /dev/null 2>&1
fi
}
# Función para iniciar y habilitar un servicio
start_and_enable_service() {
local service_name="$1"
if [ -f "$service_dir$service_name" ]; then
echo "Iniciando y habilitando $service_name"
sudo systemctl start "$service_name" > /dev/null 2>&1
sudo systemctl enable "$service_name" > /dev/null 2>&1
fi
}
# Detener todos los servicios base primero
for servicio in $servicios; do
stop_service "$servicio"
done
# Esperar un momento para asegurarse de que todos los servicios se detengan completamente
# Detener todos los servicios enumerados
for i in {01..40}; do
stop_service "mmdvm_bridge$i.service"
stop_service "analog_bridge$i.service"
stop_service "md380-emu$i.service"
done
# Esperar 5 segundos para asegurar que todos los servicios se detengan
sleep 5
# Luego, iniciar todos los servicios
# Iniciar y habilitar todos los servicios base
for servicio in $servicios; do
echo "Iniciando $servicio"
sudo systemctl start "$servicio"
sudo systemctl enable "$servicio" &>/dev/null
start_and_enable_service "$servicio"
done
# Iniciar y habilitar todos los servicios enumerados
for i in {01..40}; do
start_and_enable_service "mmdvm_bridge$i.service"
start_and_enable_service "analog_bridge$i.service"
start_and_enable_service "md380-emu$i.service"
done
;;
2)
# Lista de servicios a reiniciar
# Directorio donde se encuentran los archivos de servicio
service_dir="/lib/systemd/system/"
# Lista de servicios base
servicios="md380-emu.service analog_bridge.service mmdvm_bridge.service nxdngateway.service p25gateway.service ysfgateway.service quantar_bridge.service ircddbgatewayd.service p25parrot.service ysfparrot.service nxdnparrot.service"
# Recorre la lista de servicios y verifica si están activos
for servicio in $servicios; do
if systemctl is-enabled "$servicio" &>/dev/null || systemctl is-active "$servicio" &>/dev/null; then
echo "stop $servicio"
sudo systemctl disable "$servicio"
sudo systemctl stop "$servicio"
# Función para detener y deshabilitar un servicio
stop_and_disable_service() {
local service_name="$1"
if [ -f "$service_dir$service_name" ]; then
echo "Deteniendo y deshabilitando $service_name"
sudo systemctl stop "$service_name" > /dev/null 2>&1
sudo systemctl disable "$service_name" > /dev/null 2>&1
fi
}
# Detener y deshabilitar todos los servicios base
for servicio in $servicios; do
stop_and_disable_service "$servicio"
done
# Detener y deshabilitar todos los servicios enumerados
for i in {01..40}; do
stop_and_disable_service "mmdvm_bridge$i.service"
stop_and_disable_service "analog_bridge$i.service"
stop_and_disable_service "md380-emu$i.service"
done
rm /var/log/mmdvm/*;;
3)
@ -473,11 +567,11 @@ exit 0
EOFR
fi
if [ -d "/var/www/dvs/qrz_photo/" ] && [ ! -f "/usr/local/dvs/dvsmu" ]; then
if [ -d "/var/www/dvs/qrz_photo/" ] && [ ! -f "/usr/local/dvs/dvsmu" ] && [ -f "/opt/emq-ver" ]; then
sudo cat > /bin/menu-dvs <<- "EOF3"
#!/bin/bash
while : ; do
choix=$(whiptail --title "Raspbian Proyect HP3ICC Menu DVSwitch" --menu "Nota : Debe encender Dvswitch antes de editar para utilizar." 20 60 11 \
choix=$(whiptail --title "Script Proyect HP3ICC Menu DVSwitch" --menu "Nota : Debe encender Dvswitch antes de editar para utilizar." 20 60 11 \
1 " Encender Dvswitch " \
2 " Apagar Dvswitch " \
3 " Editar Dvswitch Server " \
@ -497,38 +591,85 @@ fi
case $choix in
1)
# Lista de servicios a reiniciar
# Directorio donde se encuentran los archivos de servicio
service_dir="/lib/systemd/system/"
# Lista de servicios base
servicios="md380-emu.service analog_bridge.service mmdvm_bridge.service nxdngateway.service p25gateway.service ysfgateway.service quantar_bridge.service ircddbgatewayd.service p25parrot.service ysfparrot.service nxdnparrot.service"
# Primero, detener todos los servicios
for servicio in $servicios; do
if systemctl is-enabled "$servicio" &>/dev/null || systemctl is-active "$servicio" &>/dev/null; then
echo "Deteniendo $servicio"
sudo systemctl stop "$servicio"
# Función para detener un servicio
stop_service() {
local service_name="$1"
if [ -f "$service_dir$service_name" ]; then
echo "Deteniendo $service_name"
sudo systemctl stop "$service_name" > /dev/null 2>&1
fi
}
# Función para iniciar y habilitar un servicio
start_and_enable_service() {
local service_name="$1"
if [ -f "$service_dir$service_name" ]; then
echo "Iniciando y habilitando $service_name"
sudo systemctl start "$service_name" > /dev/null 2>&1
sudo systemctl enable "$service_name" > /dev/null 2>&1
fi
}
# Detener todos los servicios base primero
for servicio in $servicios; do
stop_service "$servicio"
done
# Esperar un momento para asegurarse de que todos los servicios se detengan completamente
# Detener todos los servicios enumerados
for i in {01..40}; do
stop_service "mmdvm_bridge$i.service"
stop_service "analog_bridge$i.service"
stop_service "md380-emu$i.service"
done
# Esperar 5 segundos para asegurar que todos los servicios se detengan
sleep 5
# Luego, iniciar todos los servicios
# Iniciar y habilitar todos los servicios base
for servicio in $servicios; do
echo "Iniciando $servicio"
sudo systemctl start "$servicio"
sudo systemctl enable "$servicio" &>/dev/null
start_and_enable_service "$servicio"
done
# Iniciar y habilitar todos los servicios enumerados
for i in {01..40}; do
start_and_enable_service "mmdvm_bridge$i.service"
start_and_enable_service "analog_bridge$i.service"
start_and_enable_service "md380-emu$i.service"
done
;;
2)
# Lista de servicios a reiniciar
# Directorio donde se encuentran los archivos de servicio
service_dir="/lib/systemd/system/"
# Lista de servicios base
servicios="md380-emu.service analog_bridge.service mmdvm_bridge.service nxdngateway.service p25gateway.service ysfgateway.service quantar_bridge.service ircddbgatewayd.service p25parrot.service ysfparrot.service nxdnparrot.service"
# Recorre la lista de servicios y verifica si están activos
for servicio in $servicios; do
if systemctl is-enabled "$servicio" &>/dev/null || systemctl is-active "$servicio" &>/dev/null; then
echo "stop $servicio"
sudo systemctl disable "$servicio"
sudo systemctl stop "$servicio"
# Función para detener y deshabilitar un servicio
stop_and_disable_service() {
local service_name="$1"
if [ -f "$service_dir$service_name" ]; then
echo "Deteniendo y deshabilitando $service_name"
sudo systemctl stop "$service_name" > /dev/null 2>&1
sudo systemctl disable "$service_name" > /dev/null 2>&1
fi
}
# Detener y deshabilitar todos los servicios base
for servicio in $servicios; do
stop_and_disable_service "$servicio"
done
# Detener y deshabilitar todos los servicios enumerados
for i in {01..40}; do
stop_and_disable_service "mmdvm_bridge$i.service"
stop_and_disable_service "analog_bridge$i.service"
stop_and_disable_service "md380-emu$i.service"
done
rm /var/log/mmdvm/*;;
3)
@ -776,12 +917,12 @@ done
exit 0
EOF3
fi
if [ -d "/var/www/dvs/qrz_photo/" ] && [ -f "/usr/local/dvs/dvsmu" ]; then
if [ -d "/var/www/dvs/qrz_photo/" ] && [ -f "/usr/local/dvs/dvsmu" ] && [ -f "/opt/emq-ver" ]; then
# Avanzar con el script si el directorio y el archivo existen
sudo cat > /bin/menu-dvs <<- "EOFR"
#!/bin/bash
while : ; do
choix=$(whiptail --title "Raspbian Proyect HP3ICC Menu DVSwitch" --menu "Nota : Debe encender Dvswitch antes de editar para utilizar." 20 60 11 \
choix=$(whiptail --title "Script Proyect HP3ICC Menu DVSwitch" --menu "Nota : Debe encender Dvswitch antes de editar para utilizar." 20 60 11 \
1 " Encender Dvswitch " \
2 " Apagar Dvswitch " \
3 " Editar Dvswitch Server " \
@ -802,38 +943,85 @@ fi
case $choix in
1)
# Lista de servicios a reiniciar
# Directorio donde se encuentran los archivos de servicio
service_dir="/lib/systemd/system/"
# Lista de servicios base
servicios="md380-emu.service analog_bridge.service mmdvm_bridge.service nxdngateway.service p25gateway.service ysfgateway.service quantar_bridge.service ircddbgatewayd.service p25parrot.service ysfparrot.service nxdnparrot.service"
# Primero, detener todos los servicios
for servicio in $servicios; do
if systemctl is-enabled "$servicio" &>/dev/null || systemctl is-active "$servicio" &>/dev/null; then
echo "Deteniendo $servicio"
sudo systemctl stop "$servicio"
# Función para detener un servicio
stop_service() {
local service_name="$1"
if [ -f "$service_dir$service_name" ]; then
echo "Deteniendo $service_name"
sudo systemctl stop "$service_name" > /dev/null 2>&1
fi
}
# Función para iniciar y habilitar un servicio
start_and_enable_service() {
local service_name="$1"
if [ -f "$service_dir$service_name" ]; then
echo "Iniciando y habilitando $service_name"
sudo systemctl start "$service_name" > /dev/null 2>&1
sudo systemctl enable "$service_name" > /dev/null 2>&1
fi
}
# Detener todos los servicios base primero
for servicio in $servicios; do
stop_service "$servicio"
done
# Esperar un momento para asegurarse de que todos los servicios se detengan completamente
# Detener todos los servicios enumerados
for i in {01..40}; do
stop_service "mmdvm_bridge$i.service"
stop_service "analog_bridge$i.service"
stop_service "md380-emu$i.service"
done
# Esperar 5 segundos para asegurar que todos los servicios se detengan
sleep 5
# Luego, iniciar todos los servicios
# Iniciar y habilitar todos los servicios base
for servicio in $servicios; do
echo "Iniciando $servicio"
sudo systemctl start "$servicio"
sudo systemctl enable "$servicio" &>/dev/null
start_and_enable_service "$servicio"
done
# Iniciar y habilitar todos los servicios enumerados
for i in {01..40}; do
start_and_enable_service "mmdvm_bridge$i.service"
start_and_enable_service "analog_bridge$i.service"
start_and_enable_service "md380-emu$i.service"
done
;;
2)
# Lista de servicios a reiniciar
# Directorio donde se encuentran los archivos de servicio
service_dir="/lib/systemd/system/"
# Lista de servicios base
servicios="md380-emu.service analog_bridge.service mmdvm_bridge.service nxdngateway.service p25gateway.service ysfgateway.service quantar_bridge.service ircddbgatewayd.service p25parrot.service ysfparrot.service nxdnparrot.service"
# Recorre la lista de servicios y verifica si están activos
for servicio in $servicios; do
if systemctl is-enabled "$servicio" &>/dev/null || systemctl is-active "$servicio" &>/dev/null; then
echo "stop $servicio"
sudo systemctl disable "$servicio"
sudo systemctl stop "$servicio"
# Función para detener y deshabilitar un servicio
stop_and_disable_service() {
local service_name="$1"
if [ -f "$service_dir$service_name" ]; then
echo "Deteniendo y deshabilitando $service_name"
sudo systemctl stop "$service_name" > /dev/null 2>&1
sudo systemctl disable "$service_name" > /dev/null 2>&1
fi
}
# Detener y deshabilitar todos los servicios base
for servicio in $servicios; do
stop_and_disable_service "$servicio"
done
# Detener y deshabilitar todos los servicios enumerados
for i in {01..40}; do
stop_and_disable_service "mmdvm_bridge$i.service"
stop_and_disable_service "analog_bridge$i.service"
stop_and_disable_service "md380-emu$i.service"
done
rm /var/log/mmdvm/*;;
3)
@ -1064,50 +1252,7 @@ exit 0
EOFR
fi
# Función para verificar si un servicio existe
service_exists() {
local service_name=$1
# Usamos 'timeout' para evitar que el comando se quede bloqueado
timeout 1s sudo systemctl status "$service_name" >/dev/null 2>&1
return $?
}
# Detener todos los servicios que estén activos o habilitados (primer bucle)
for i in {01..40}; do
service_name="mmdvm_bridge$i.service"
# Verifica si el servicio existe
if service_exists "$service_name"; then
# Verifica si el servicio está activo O habilitado (de forma silenciosa)
if sudo systemctl is-active "$service_name" >/dev/null 2>&1 || sudo systemctl is-enabled "$service_name" >/dev/null 2>&1; then
# Detener el servicio (de forma silenciosa)
sudo systemctl stop "$service_name" >/dev/null 2>&1
fi
fi
done
# Modificar los archivos de configuración (segundo bucle)
for i in {01..40}; do
archivo="/opt/user$i/MMDVM_Bridge.ini"
if [ -e "$archivo" ]; then
sed -i "s/FileRoot=.*/FileRoot=MMDVM_Bridge$i/g" "$archivo"
fi
done 2>/dev/null
# Iniciar todos los servicios habilitados (tercer bucle)
for i in {01..40}; do
service_name="mmdvm_bridge$i.service"
# Verifica si el servicio existe
if service_exists "$service_name"; then
# Verifica si el servicio está habilitado (de forma silenciosa)
if sudo systemctl is-enabled "$service_name" >/dev/null 2>&1; then
# Iniciar el servicio (de forma silenciosa)
sudo systemctl start "$service_name" >/dev/null 2>&1
sudo systemctl enable "$service_name" >/dev/null 2>&1
fi
fi
done
#
if [ -f "/usr/local/dvs/dvsmu" ]; then
sed '132s/^#//' /usr/local/dvs/dvsmu -i
cp /usr/local/dvs/dvsmu /usr/local/bin/dvsmu

View File

@ -18,10 +18,20 @@ fi
case $choix in
1)
sudo sed -i '538s/curl --fail -o "$NODE_DIR\/$1" -s.*/curl --fail -o "$NODE_DIR\/$1" -s http:\/\/datafiles.ddns.net:8888\/downloads\/$1/' /opt/MMDVM_Bridge/dvswitch.sh &&
menu-update-tg2 ;;
whiptail --title "Easy-DVSwitch" --msgbox "TG List DVSwitch:\n\n\
Actualice la base de datos en su app DVSMobile.\n\
Update database in you DVSMobile APP." 0 50
/usr/local/dvs/dvs
exit 0
;;
2)
sudo sed -i '538s/curl --fail -o "$NODE_DIR\/$1" -s.*/curl --fail -o "$NODE_DIR\/$1" -s http:\/\/www.pistar.uk\/downloads\/$1/' /opt/MMDVM_Bridge/dvswitch.sh &&
menu-update-tg2 ;;
whiptail --title "Easy-DVSwitch" --msgbox "TG List DVSwitch:\n\n\
Actualice la base de datos en su app DVSMobile.\n\
Update database in you DVSMobile APP." 0 50
/usr/local/dvs/dvs
exit 0
;;
3)
/usr/local/dvs/dvs;
esac