Files
2025-11-08 22:27:01 +01:00

63 lines
1.7 KiB
Bash
Executable File

#!/bin/bash
# Script para crear usuarios en Matrix
set -e
# Colores
GREEN='\033[0;32m'
BLUE='\033[0;34m'
RED='\033[0;31m'
YELLOW='\033[1;33m'
NC='\033[0m'
# Verificar que Synapse esté ejecutándose
if ! docker ps | grep -q element_matrix_chat-synapse-1; then
echo -e "${RED}❌ Synapse no está ejecutándose${NC}"
echo -e "${BLUE}💡 Ejecuta: docker-compose up -d${NC}"
exit 1
fi
# Solicitar datos del usuario
echo -e "${BLUE}👤 Creador de usuarios Matrix${NC}"
echo
read -p "Nombre de usuario: " username
read -s -p "Contraseña: " password
echo
read -p "¿Es administrador? (y/N): " is_admin
# Configurar flag de administrador
admin_flag=""
if [[ $is_admin =~ ^[Yy]$ ]]; then
admin_flag="-a"
echo -e "${YELLOW}⚠️ El usuario será administrador${NC}"
fi
echo -e "${BLUE}🔄 Creando usuario...${NC}"
# Crear usuario
if docker exec element_matrix_chat-synapse-1 register_new_matrix_user \
-c /data/homeserver.yaml \
-u "$username" \
-p "$password" \
$admin_flag \
http://localhost:8008; then
echo -e "${GREEN}✅ Usuario '$username' creado exitosamente${NC}"
echo
echo -e "${BLUE}📍 Información del usuario:${NC}"
echo -e " • Usuario: ${GREEN}$username${NC}"
echo -e " • ID Matrix: ${GREEN}@$username:localhost${NC}"
echo -e " • Contraseña: ${GREEN}[configurada]${NC}"
if [[ $is_admin =~ ^[Yy]$ ]]; then
echo -e " • Tipo: ${YELLOW}Administrador${NC}"
else
echo -e " • Tipo: ${GREEN}Usuario normal${NC}"
fi
echo
echo -e "${BLUE}🌐 Para acceder:${NC}"
echo -e " • Element Web: http://localhost:8081"
echo -e " • Servidor: http://localhost:8008"
else
echo -e "${RED}❌ Error al crear el usuario${NC}"
exit 1
fi