Documentation Index
Fetch the complete documentation index at: https://docs.lovi.ai/llms.txt
Use this file to discover all available pages before exploring further.
Introduzione
Tutti gli endpoint di notifica di Lovi supportano la programmazione per consegne future. Questa funzionalità ti permette di inviare notifiche nei momenti ottimali considerando i fusi orari dei destinatari e gli orari lavorativi.
📅 Parametri di programmazione
Sia le notifiche WhatsApp che vocali supportano i seguenti parametri di programmazione:
Parametri
| Parametro | Tipo | Obbligatorio | Descrizione | Esempio |
|---|
datetime_sending | DateTime | No | Data/ora programmata in formato ISO 8601 | "2024-12-25T10:30:00" |
timezone | String | No | Fuso orario per l’orario programmato | "Europe/Madrid" |
Comportamento predefinito: Se datetime_sending non viene fornito, la notifica viene inviata immediatamente.
{
"datetime_sending": "2024-12-25T10:30:00",
"timezone": "Europe/Madrid"
}
Formati alternativi:
"2024-12-25T10:30:00"
"2024-12-25T10:30:00.000"
"2024-12-25T10:30:00Z"
"2024-12-25T10:30:00+01:00"
Note importanti
- Data futura obbligatoria: La data deve essere nel futuro
- ISO 8601 rigoroso: Usa il formato standard ISO 8601
- Fuso orario raccomandato: Specifica sempre il fuso orario per i messaggi programmati
- UTC predefinito: Se il fuso orario viene omesso, viene usato UTC
🌍 Fusi orari supportati
Fusi orari aziendali comuni
| Regione/Paese | Codice fuso orario | Descrizione |
|---|
| Spagna | Europe/Madrid | Ora dell’Europa centrale |
| Messico | America/Mexico_City | Ora standard centrale |
| Argentina | America/Argentina/Buenos_Aires | Ora dell’Argentina |
| Colombia | America/Bogota | Ora della Colombia |
| Cile | America/Santiago | Ora standard del Cile |
| Perù | America/Lima | Ora del Perù |
| Ecuador | America/Guayaquil | Ora dell’Ecuador |
| Venezuela | America/Caracas | Ora del Venezuela |
| Stati Uniti | America/New_York | Ora standard orientale |
| Stati Uniti | America/Chicago | Ora standard centrale |
| Stati Uniti | America/Denver | Ora standard montagna |
| Stati Uniti | America/Los_Angeles | Ora standard del Pacifico |
| UTC | UTC | Tempo universale coordinato |
Fusi orari europei
| Paese | Codice fuso orario | Descrizione |
|---|
| Regno Unito | Europe/London | Ora di Greenwich |
| Francia | Europe/Paris | Ora dell’Europa centrale |
| Germania | Europe/Berlin | Ora dell’Europa centrale |
| Italia | Europe/Rome | Ora dell’Europa centrale |
| Paesi Bassi | Europe/Amsterdam | Ora dell’Europa centrale |
| Portogallo | Europe/Lisbon | Ora dell’Europa occidentale |
📋 Esempi
Notifica WhatsApp programmata
Invio immediato (senza programmazione):
{
"contact": {
"number": "34666033135",
"name": "Ana García"
},
"language_template": "es_ES",
"name_template": "promocion_navidad",
"recipient_id": "34666033135",
"notification_type": "marketing",
"campaign_name": "Christmas Campaign"
}
Programmata per un orario specifico:
{
"contact": {
"number": "34666033135",
"name": "Ana García"
},
"language_template": "es_ES",
"name_template": "promocion_navidad",
"recipient_id": "34666033135",
"notification_type": "marketing",
"campaign_name": "Christmas Campaign",
"datetime_sending": "2024-12-24T09:00:00",
"timezone": "Europe/Madrid"
}
Notifica vocale programmata
{
"contact": {
"number": "34666033135",
"first_name": "María",
"last_name": "González"
},
"recipient_id": "34911670470",
"agent_id": "uuid-agente-voz",
"notification_type": "marketing",
"campaign_name": "Voice Campaign",
"datetime_sending": "2024-12-26T10:00:00",
"timezone": "Europe/Madrid"
}
Struttura piatta con programmazione (unflatten=true)
{
"contact.number": "34666033135",
"contact.name": "Ana García",
"language_template": "es_ES",
"name_template": "promocion_navidad",
"recipient_id": "34666033135",
"notification_type": "marketing",
"campaign_name": "Christmas Campaign",
"datetime_sending": "2024-12-24T09:00:00",
"timezone": "Europe/Madrid"
}
⚙️ Regole di validazione
Validazione delle date
- ✅ Solo date future: Deve essere successiva all’ora corrente
- ✅ Anticipo massimo: Fino a 1 anno di anticipo
- ✅ Formato rigoroso: Deve seguire ISO 8601
- ❌ Date passate: Saranno rifiutate
- ❌ Formato non valido: Date non-ISO rifiutate
Validazione del fuso orario
- ✅ Codici IANA validi: Usa il database standard dei fusi orari
- ✅ Case sensitive: Formato esatto richiesto
- ❌ Abbreviazioni: Non usare CET, EST, ecc.
- ❌ Codici non validi: Fusi orari sconosciuti rifiutati
Esempi di valido/non valido
✅ Valido:
{
"datetime_sending": "2024-12-25T14:30:00",
"timezone": "America/Mexico_City"
}
❌ Data non valida:
{
"datetime_sending": "12/25/2024 2:30 PM", // Formato errato
"timezone": "Europe/Madrid"
}
❌ Fuso orario non valido:
{
"datetime_sending": "2024-12-25T14:30:00",
"timezone": "CET" // Usa Europe/Madrid invece
}
🚀 Migliori pratiche
Tempistica ottimale
Messaggi WhatsApp:
- Orario lavorativo: 9:00 - 18:00 ora locale
- Evita orari estremi: Non prima delle 8:00 o dopo le 21:00
- Considerazione weekend: Regola per le preferenze del fine settimana
- Consapevolezza festività: Controlla le festività locali
Chiamate vocali:
- Solo orario lavorativo: 9:00 - 17:00 ora locale
- Giorni lavorativi preferiti: Da lunedì a venerdì
- Ore di pranzo: Evita 12:00 - 14:00
- Sensibilità culturale: Rispetta le usanze locali
Strategia fuso orario
- Memorizza i fusi orari degli utenti: Salva il fuso orario preferito per contatto
- Visualizzazione ora locale: Mostra gli orari nel fuso orario locale dell’utente
- Logica orario lavorativo: Calcola gli orari di invio ottimali
- Ora legale: I codici IANA gestiscono automaticamente l’ora legale
Flusso di lavoro di programmazione
📊 Esempi di risposta
Programmazione riuscita
{
"success": true,
"message": "Notification scheduled successfully",
"notification_id": "uuid-notification-123",
"scheduled_time": "2024-12-25T10:30:00Z",
"local_time": "2024-12-25T11:30:00+01:00",
"timezone": "Europe/Madrid"
}
{
"success": true,
"message": "Notification queued for immediate sending",
"notification_id": "uuid-notification-456",
"queued_at": "2024-12-20T15:45:30Z"
}
⚠️ Errori comuni
Errore data passata
{
"error": "validation_failed",
"message": "Scheduled time must be in the future",
"details": {
"field": "datetime_sending",
"provided": "2024-12-20T10:00:00",
"current_time": "2024-12-20T15:30:00Z"
}
}
Errore fuso orario non valido
{
"error": "validation_failed",
"message": "Invalid timezone specified",
"details": {
"field": "timezone",
"provided": "CET",
"suggestion": "Use IANA timezone codes like 'Europe/Madrid'"
}
}
{
"error": "validation_failed",
"message": "Invalid datetime format",
"details": {
"field": "datetime_sending",
"provided": "25-12-2024 10:30",
"expected_format": "ISO 8601 (YYYY-MM-DDTHH:MM:SS)"
}
}
🛠️ Suggerimenti per lo sviluppo
Testare la programmazione
- Usa il futuro prossimo: Testa con orari 5-10 minuti avanti
- Test fusi orari: Testa diversi scenari di fuso orario
- Casi limite: Testa le transizioni dell’ora legale
- Gestione errori: Testa con date/fusi orari non validi
Considerazioni per la produzione
- Tempo buffer: Aggiungi 2-3 minuti di buffer per l’elaborazione
- Monitoraggio: Monitora gli orari di invio programmati vs effettivi
- Logica di retry: Gestisci i fallimenti temporanei con grazia
- Log: Registra i dettagli di programmazione per il debug
Risorse fusi orari
- Database IANA: Database ufficiale dei fusi orari
- Convertitore online: Usa strumenti per verificare i codici dei fusi orari
- Documentazione: Mantieni un riferimento dei fusi orari per gli sviluppatori