#!/bin/bash # # Kompiliert den BlacklistBlock für den STARFACE Module Designer # set -e SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" cd "$SCRIPT_DIR" echo "========================================" echo " BlacklistBlock Kompilierung" echo "========================================" echo "" # STARFACE JARs finden. # Standard: ./libs/starface - Fallback: das mail2fax-Modul (gleiches STARFACE-API). LIB_DIR="${STARFACE_LIBS:-libs/starface}" if [ ! "$(ls -A "$LIB_DIR" 2>/dev/null)" ]; then ALT="../../mail2fax/v8-9-10/libs/starface" if [ "$(ls -A "$ALT" 2>/dev/null)" ]; then echo "Keine JARs in $LIB_DIR - verwende $ALT" LIB_DIR="$ALT" fi fi CLASSPATH="" for jar in "$LIB_DIR"/*.jar; do if [ -f "$jar" ]; then CLASSPATH="$CLASSPATH:$jar" fi done CLASSPATH="${CLASSPATH:1}" if [ -z "$CLASSPATH" ]; then echo "FEHLER: Keine STARFACE JARs gefunden." echo "Lege die STARFACE-API-JARs in $LIB_DIR ab oder setze STARFACE_LIBS=." echo "(Die JARs liegen bereits im mail2fax-Modul unter v8-9-10/libs/starface/)" exit 1 fi echo "Klassenpfad: $LIB_DIR" echo "Kompiliere BlacklistBlock.java..." javac -source 21 -target 21 \ -cp "$CLASSPATH" \ -proc:none \ BlacklistBlock.java if [ -f "BlacklistBlock.class" ]; then echo "" echo "========================================" echo " Erfolgreich!" echo "========================================" echo "" ls -lh BlacklistBlock.class echo "" echo "Nächste Schritte:" echo "1. STARFACE Admin -> Module -> Module Designer -> Neues Modul" echo "2. Unter 'Ressourcen' BlacklistBlock.class hochladen" echo " (optional: Ansage-WAV-Datei für die Aktion ANNOUNCE)" echo "3. Eine Funktion 'Blacklist' anlegen und den Block hinzufügen" echo "4. GUI-Felder anlegen und mit den @InputVar-Feldern verknüpfen" echo "5. Modultyp 'Call-Processing', Aktivierung 'bei allen eingehenden Anrufen'" echo "Details siehe INSTALLATION.md" echo "" else echo "FEHLER: Kompilierung fehlgeschlagen" exit 1 fi