dockerizzato

This commit is contained in:
Nick
2025-11-03 20:15:23 +01:00
parent 86fa13a1a0
commit 4246d13339
7 changed files with 116 additions and 15 deletions

View File

@@ -46,7 +46,7 @@
"channel": 7, "channel": 7,
"name": "Basso", "name": "Basso",
"on": false, "on": false,
"level_db": null, "level_db": 5.0,
"pan": 0 "pan": 0
}, },
"8": { "8": {

19
Dockerfile Normal file
View File

@@ -0,0 +1,19 @@
# Dockerfile
# 1. Usa un'immagine Python ufficiale e leggera come base
FROM python:3.11-slim
# 2. Imposta una directory di lavoro all'interno del container
WORKDIR /app
# 3. Copia il file delle dipendenze e installale
# Questo passaggio viene fatto prima per sfruttare la cache di Docker.
# Se requirements.txt non cambia, questo strato non verrà ricostruito.
COPY requirements.txt .
RUN pip install --no-cache-dir -r requirements.txt
# 4. Copia tutti i file del progetto nella directory di lavoro del container
COPY . .
# 5. Comando da eseguire quando il container viene avviato
CMD ["python", "telegram_bot.py"]

View File

@@ -0,0 +1,33 @@
{
"user_id": 1073121360,
"username": "Ingdavidfeliz",
"last_updated": 1762197074.7985318,
"last_updated_str": "2025-11-03 20:11:14",
"message_count": 4,
"history": [
{
"role": "user",
"content": "Alzi canale 7.",
"timestamp": 1762197058.7480035,
"timestamp_str": "2025-11-03 20:10:58"
},
{
"role": "assistant",
"content": "Certo, alzo il canale 7. Di quanto lo vuoi alzare?",
"timestamp": 1762197060.3105035,
"timestamp_str": "2025-11-03 20:11:00"
},
{
"role": "user",
"content": "5db",
"timestamp": 1762197071.748047,
"timestamp_str": "2025-11-03 20:11:11"
},
{
"role": "assistant",
"content": "Perfetto! Ho alzato il canale 7 a +5 dB. 🔊",
"timestamp": 1762197074.7980247,
"timestamp_str": "2025-11-03 20:11:14"
}
]
}

View File

@@ -1,22 +1,10 @@
{ {
"user_id": 4762864, "user_id": 4762864,
"username": "unnikked", "username": "unnikked",
"last_updated": 1762196959.5204484, "last_updated": 1762197298.3933494,
"last_updated_str": "2025-11-03 20:09:19", "last_updated_str": "2025-11-03 19:14:58",
"message_count": 21, "message_count": 21,
"history": [ "history": [
{
"role": "assistant",
"content": "Ok, Nicola, ecco i valori attuali del Mix 17 (Diretta Streaming) che mi hai chiesto.\n\nHo notato una cosa importante:\nSembra che **tutti i canali inviati a questo mix siano attualmente spenti (send_is_on: False)** e i loro livelli di invio sono tutti a 0.01 dB o 0 dB. Questo è strano, perché prima avevamo dei livelli diversi.\n\nInoltre, i canali che avevamo acceso poco fa:\n* **Canale 18 ('Archetto')**\n* **Canale 2 ('0.00')**\n* **Canale 25 ('Chit dx')**\n...risultano di nuovo **spenti sul loro fader principale (channel_is_on: False)**.\n\nQuesto significa che, anche se li avevamo accesi, ora non stanno inviando nulla al mix.\n\nVuoi che provi a riaccenderli e poi ricontrolliamo? Oppure vuoi che aggiorni completamente la cache del mixer per essere sicuro di avere i dati più recenti?",
"timestamp": 1762196261.334398,
"timestamp_str": "2025-11-03 19:57:41"
},
{
"role": "user",
"content": "Pensi che dovresti refresh are la cache prima",
"timestamp": 1762196283.6867008,
"timestamp_str": "2025-11-03 19:58:03"
},
{ {
"role": "assistant", "role": "assistant",
"content": "Perfetto! Ho appena aggiornato completamente la cache del mixer. Ora abbiamo i dati più freschi. ✅\n\nVuoi che rianalizzi il mix della diretta con questi nuovi dati?", "content": "Perfetto! Ho appena aggiornato completamente la cache del mixer. Ora abbiamo i dati più freschi. ✅\n\nVuoi che rianalizzi il mix della diretta con questi nuovi dati?",
@@ -130,6 +118,18 @@
"content": "Certo, Nicola! Ecco l'elenco dei canali che stanno inviando segnale al Mix 17 (Diretta Streaming), con i loro livelli e stati:\n\n**Mix 17 (Diretta Streaming) - Canali e Valori:**\n\n* **Canale 23 (' Vox3')**: Livello: **+2.5 dB** (Acceso ✅, Send Acceso ✅)\n* **Canale 11 ('Tom 1')**: Livello: **+2 dB** (Acceso ✅, Send Acceso ✅)\n* **Canale 12 ('Tom 2')**: Livello: **+2 dB** (Acceso ✅, Send Acceso ✅)\n* **Canale 18 ('Archetto')**: Livello: **+1.6 dB** (Acceso ✅, Send Acceso ✅)\n* **Canale 2 ('Gelato')**: Livello: **+1.35 dB** (Acceso ✅, Send Acceso ✅)\n* **Canale 6 ('Vox2')**: Livello: **+1 dB** (Acceso ✅, Send Acceso ✅)\n* **Canale 9 ('Kick')**: Livello: **0 dB** (Acceso ✅, Send Acceso ✅)\n* **Canale 10 ('Snare')**: Livello: **-1 dB** (Acceso ✅, Send Acceso ✅)\n* **Canale 13 ('Tom3')**: Livello: **-1 dB** (Acceso ✅, Send Acceso ✅)\n* **Canale 20 ('Tast')**: Livello: **-2 dB** (Acceso ✅, Send Acceso ✅)\n* **Canale 24 ('Chit cnt')**: Livello: **-5 dB** (Acceso ✅, Send Acceso ✅)\n* **Canale 14 ('Pan SX')**: Livello: **-7 dB** (Acceso ✅, Send Acceso ✅)\n* **Canale 15 ('Pan dx')**: Livello: **-7 dB** (Acceso ✅, Send Acceso ✅)\n* **Canale 25 ('Chit dx')**: Livello: **-9 dB** (Acceso ✅, Send Acceso ✅)\n* **Canale 3 ('Talkback')**: Livello: **-99 dB** (Spento ❌, Send Spento ❌) - *Questo è normale per il talkback.*\n\nFammi sapere se vuoi modificare qualche livello o lo stato di qualche canale!", "content": "Certo, Nicola! Ecco l'elenco dei canali che stanno inviando segnale al Mix 17 (Diretta Streaming), con i loro livelli e stati:\n\n**Mix 17 (Diretta Streaming) - Canali e Valori:**\n\n* **Canale 23 (' Vox3')**: Livello: **+2.5 dB** (Acceso ✅, Send Acceso ✅)\n* **Canale 11 ('Tom 1')**: Livello: **+2 dB** (Acceso ✅, Send Acceso ✅)\n* **Canale 12 ('Tom 2')**: Livello: **+2 dB** (Acceso ✅, Send Acceso ✅)\n* **Canale 18 ('Archetto')**: Livello: **+1.6 dB** (Acceso ✅, Send Acceso ✅)\n* **Canale 2 ('Gelato')**: Livello: **+1.35 dB** (Acceso ✅, Send Acceso ✅)\n* **Canale 6 ('Vox2')**: Livello: **+1 dB** (Acceso ✅, Send Acceso ✅)\n* **Canale 9 ('Kick')**: Livello: **0 dB** (Acceso ✅, Send Acceso ✅)\n* **Canale 10 ('Snare')**: Livello: **-1 dB** (Acceso ✅, Send Acceso ✅)\n* **Canale 13 ('Tom3')**: Livello: **-1 dB** (Acceso ✅, Send Acceso ✅)\n* **Canale 20 ('Tast')**: Livello: **-2 dB** (Acceso ✅, Send Acceso ✅)\n* **Canale 24 ('Chit cnt')**: Livello: **-5 dB** (Acceso ✅, Send Acceso ✅)\n* **Canale 14 ('Pan SX')**: Livello: **-7 dB** (Acceso ✅, Send Acceso ✅)\n* **Canale 15 ('Pan dx')**: Livello: **-7 dB** (Acceso ✅, Send Acceso ✅)\n* **Canale 25 ('Chit dx')**: Livello: **-9 dB** (Acceso ✅, Send Acceso ✅)\n* **Canale 3 ('Talkback')**: Livello: **-99 dB** (Spento ❌, Send Spento ❌) - *Questo è normale per il talkback.*\n\nFammi sapere se vuoi modificare qualche livello o lo stato di qualche canale!",
"timestamp": 1762196959.5204484, "timestamp": 1762196959.5204484,
"timestamp_str": "2025-11-03 20:09:19" "timestamp_str": "2025-11-03 20:09:19"
},
{
"role": "user",
"content": "Hello",
"timestamp": 1762197296.4190717,
"timestamp_str": "2025-11-03 19:14:56"
},
{
"role": "assistant",
"content": "Ciao Nicola! Come posso aiutarti oggi con il mixer?",
"timestamp": 1762197298.3932998,
"timestamp_str": "2025-11-03 19:14:58"
} }
] ]
} }

35
docker-compose.yaml Normal file
View File

@@ -0,0 +1,35 @@
# docker-compose.yml
version: '3.8'
services:
tf5-bot:
# Costruisce l'immagine usando il Dockerfile nella cartella corrente
build: .
# Nome del container per una facile identificazione
container_name: tf5-telegram-bot
# Carica le variabili d'ambiente dal file .env
env_file:
- .env
# Politica di riavvio:
# 'unless-stopped' riavvia il container automaticamente all'avvio di Docker
# (e in caso di crash), a meno che tu non lo abbia fermato manualmente.
restart: unless-stopped
# Modalità di rete "host":
# Questo è FONDAMENTALE. Permette al container di accedere direttamente
# alla rete del tuo computer. Senza questo, il bot non potrebbe
# "vedere" e connettersi al mixer TF5 che si trova sulla tua rete locale.
network_mode: "host"
# Volumi:
# Questo collega le cartelle del tuo computer (a sinistra dei due punti)
# alle cartelle all'interno del container (a destra).
# In questo modo, i profili, le conversazioni e la cache vengono salvati
# sul tuo disco e non vengono persi se il container viene riavviato.
volumes:
- ./profiles:/app/profiles
- ./conversations:/app/conversations
- ./cache:/app/cache

13
profiles/1073121360.json Normal file
View File

@@ -0,0 +1,13 @@
{
"user_id": 1073121360,
"username": "Ingdavidfeliz",
"role": "mixerista",
"display_name": "David",
"channels": [],
"mixes": [],
"setup_completed": true,
"created_at": 1762197000.7585375,
"created_at_str": "2025-11-03 20:10:00",
"last_updated": 1762197025.8351762,
"last_updated_str": "2025-11-03 20:10:25"
}

View File

@@ -1 +1,2 @@
dotenv dotenv
google-genai