mojulo 0.0.0 → 0.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (121) hide show
  1. package/README.md +54 -4
  2. package/lib/audit-logger-new.js +11 -0
  3. package/lib/auth/gate.js +25 -0
  4. package/lib/auth/service.js +17 -0
  5. package/lib/auth/session.js +63 -0
  6. package/lib/builder/chat-processor.js +607 -0
  7. package/lib/builder/composer-bridge.js +82 -0
  8. package/lib/builder/evaluator.js +159 -0
  9. package/lib/builder/executor.js +252 -0
  10. package/lib/builder/index.js +48 -0
  11. package/lib/builder/session.js +248 -0
  12. package/lib/builder/system-prompt.js +422 -0
  13. package/lib/builder/tone-presets.js +75 -0
  14. package/lib/builder/tool-executors.js +1527 -0
  15. package/lib/builder/tools.js +338 -0
  16. package/lib/builder/validators.js +239 -0
  17. package/lib/composer/composer.js +225 -0
  18. package/lib/composer/index.js +40 -0
  19. package/lib/composer/protocols/00_base.txt +19 -0
  20. package/lib/composer/protocols/01_knowledge.txt +9 -0
  21. package/lib/composer/protocols/02_form-gathering.txt +32 -0
  22. package/lib/composer/protocols/03_appointments.txt +16 -0
  23. package/lib/composer/protocols/04_triage.txt +15 -0
  24. package/lib/composer/protocols/05_optical-read.txt +22 -0
  25. package/lib/composer/response-builder.js +98 -0
  26. package/lib/config-builder.js +650 -0
  27. package/lib/db/ids.js +10 -0
  28. package/lib/db/index.js +179 -0
  29. package/lib/db/repositories/apiKeys.js +72 -0
  30. package/lib/db/repositories/auditLogs.js +12 -0
  31. package/lib/db/repositories/botSpaces.js +12 -0
  32. package/lib/db/repositories/builderSessions.js +312 -0
  33. package/lib/db/repositories/deploymentEvents.js +12 -0
  34. package/lib/db/repositories/deployments.js +385 -0
  35. package/lib/db/repositories/documents.js +68 -0
  36. package/lib/db/repositories/mcpJobs.js +84 -0
  37. package/lib/deployers/bot-fleet.js +110 -0
  38. package/lib/deployers/bot-proxy.js +72 -0
  39. package/lib/deployers/build.js +89 -0
  40. package/lib/deployers/cloud-deploy.js +310 -0
  41. package/lib/deployers/docker.js +439 -0
  42. package/lib/deployers/fly.js +432 -0
  43. package/lib/deployers/index.js +38 -0
  44. package/lib/deployment-auth.js +36 -0
  45. package/lib/document-parser.js +171 -0
  46. package/lib/embedder/chunker.js +93 -0
  47. package/lib/embedder/local.js +101 -0
  48. package/lib/embedder/preview-rag.js +93 -0
  49. package/lib/envelope-schema.js +54 -0
  50. package/lib/fleet/scoped-sql.js +342 -0
  51. package/lib/form-schema-config/base.js +135 -0
  52. package/lib/form-schema-config/index.js +286 -0
  53. package/lib/form-schema-config/locales/af-ZA.js +153 -0
  54. package/lib/form-schema-config/locales/ar-AE.js +142 -0
  55. package/lib/form-schema-config/locales/ar-SA.js +164 -0
  56. package/lib/form-schema-config/locales/de-DE.js +152 -0
  57. package/lib/form-schema-config/locales/en-AU.js +161 -0
  58. package/lib/form-schema-config/locales/en-CA.js +115 -0
  59. package/lib/form-schema-config/locales/en-GB.js +132 -0
  60. package/lib/form-schema-config/locales/en-IN.js +219 -0
  61. package/lib/form-schema-config/locales/en-MY.js +171 -0
  62. package/lib/form-schema-config/locales/en-NG.js +198 -0
  63. package/lib/form-schema-config/locales/en-PH.js +186 -0
  64. package/lib/form-schema-config/locales/en-SG.js +153 -0
  65. package/lib/form-schema-config/locales/en-US.js +138 -0
  66. package/lib/form-schema-config/locales/es-ES.js +171 -0
  67. package/lib/form-schema-config/locales/es-MX.js +193 -0
  68. package/lib/form-schema-config/locales/fr-CA.js +138 -0
  69. package/lib/form-schema-config/locales/fr-FR.js +155 -0
  70. package/lib/form-schema-config/locales/hi-IN.js +219 -0
  71. package/lib/form-schema-config/locales/it-IT.js +157 -0
  72. package/lib/form-schema-config/locales/ja-JP.js +169 -0
  73. package/lib/form-schema-config/locales/ko-KR.js +140 -0
  74. package/lib/form-schema-config/locales/nl-NL.js +149 -0
  75. package/lib/form-schema-config/locales/pt-BR.js +168 -0
  76. package/lib/form-schema-config/locales/zh-CN.js +172 -0
  77. package/lib/form-schema-config/locales/zh-HK.js +142 -0
  78. package/lib/form-structure-schema.js +191 -0
  79. package/lib/llm-providers.js +828 -0
  80. package/lib/markdown.js +197 -0
  81. package/lib/mcp/catalysts/appointment-to-calendar.md +84 -0
  82. package/lib/mcp/catalysts/conversations-to-channel-digest.md +104 -0
  83. package/lib/mcp/catalysts/document-extract-to-store.md +92 -0
  84. package/lib/mcp/catalysts/knowledge-gap-miner.md +96 -0
  85. package/lib/mcp/catalysts/loader.js +144 -0
  86. package/lib/mcp/catalysts/qualify-lead-to-crm.md +83 -0
  87. package/lib/mcp/catalysts/scan-conversations-for-signal.md +92 -0
  88. package/lib/mcp/catalysts/submission-to-ticket.md +83 -0
  89. package/lib/mcp/catalysts/submissions-to-warehouse.md +103 -0
  90. package/lib/mcp/catalysts/weekly-submissions-digest.md +82 -0
  91. package/lib/mcp/jobs.js +64 -0
  92. package/lib/mcp/server.js +184 -0
  93. package/lib/mcp/session-binding.js +130 -0
  94. package/lib/mcp/tools/build.js +123 -0
  95. package/lib/mcp/tools/catalysts.js +477 -0
  96. package/lib/mcp/tools/context.js +325 -0
  97. package/lib/mcp/tools/fleet.js +391 -0
  98. package/lib/mcp/tools/jobs-tools.js +240 -0
  99. package/lib/mcp/tools/operate.js +314 -0
  100. package/lib/preview/build-preview-config.js +136 -0
  101. package/lib/rate-limiter.js +11 -0
  102. package/lib/resolve-api-key.js +142 -0
  103. package/lib/storage/index.js +40 -0
  104. package/messages/de.json +2136 -0
  105. package/messages/en.json +2136 -0
  106. package/messages/es.json +2136 -0
  107. package/messages/fr.json +2136 -0
  108. package/messages/it.json +2136 -0
  109. package/messages/ja.json +2136 -0
  110. package/messages/ko.json +2136 -0
  111. package/messages/nl.json +2136 -0
  112. package/messages/pl.json +2136 -0
  113. package/messages/pt.json +2136 -0
  114. package/messages/ru.json +2136 -0
  115. package/messages/uk.json +2136 -0
  116. package/messages/zh.json +2136 -0
  117. package/package.json +68 -5
  118. package/scripts/mcp-config.mjs +162 -0
  119. package/scripts/mcp-stdio-loader.mjs +42 -0
  120. package/scripts/mcp-stdio.mjs +108 -0
  121. package/scripts/mojulo-paths.mjs +48 -0
@@ -0,0 +1,2136 @@
1
+ {
2
+ "common": {
3
+ "loading": "Caricamento...",
4
+ "save": "Salva",
5
+ "saving": "Salvataggio...",
6
+ "cancel": "Annulla",
7
+ "delete": "Elimina",
8
+ "edit": "Modifica",
9
+ "close": "Chiudi",
10
+ "search": "Cerca",
11
+ "back": "Indietro",
12
+ "next": "Avanti",
13
+ "submit": "Invia",
14
+ "create": "Crea",
15
+ "copy": "Copia",
16
+ "copied": "Copiato!",
17
+ "view": "Visualizza",
18
+ "hide": "Nascondi",
19
+ "yes": "Sì",
20
+ "no": "No",
21
+ "confirm": "Conferma",
22
+ "done": "Fatto",
23
+ "updating": "Aggiornamento...",
24
+ "moveTo": "Sposta in:",
25
+ "unknown": "Sconosciuto",
26
+ "error": "Errore",
27
+ "remove": "Rimuovi",
28
+ "selectAnOption": "Seleziona un'opzione",
29
+ "addItemLabel": "Aggiungi {itemLabel}",
30
+ "itemNumber": "{itemLabel} #{number}"
31
+ },
32
+ "auth": {
33
+ "signIn": "Accedi",
34
+ "signOut": "Esci",
35
+ "signingIn": "Accesso in corso...",
36
+ "email": "Email",
37
+ "password": "Password",
38
+ "signInToContinue": "Accedi per continuare",
39
+ "invalidCredentials": "Email o password non validi",
40
+ "needAccess": "Hai bisogno di accesso? Contatta l'amministratore della tua organizzazione.",
41
+ "controlPanel": "Mojulo Control Panel",
42
+ "setupComplete": "Account amministratore creato con successo. Effettua l'accesso.",
43
+ "emailPlaceholder": "tu@azienda.com",
44
+ "passwordPlaceholder": "La tua password"
45
+ },
46
+ "dashboard": {
47
+ "title": "Dashboard",
48
+ "loading": "Caricamento dashboard...",
49
+ "loadingChatbots": "Caricamento chatbot...",
50
+ "loadingHistory": "Caricamento cronologia...",
51
+ "createNewBot": "Crea nuovo bot",
52
+ "noBots": "Nessun bot ancora",
53
+ "selectBotOrSpace": "Seleziona un Bot o uno Spazio Bot per visualizzare i dettagli",
54
+ "createBot": "Crea bot",
55
+ "workspace": "Area di lavoro di {name}",
56
+ "unassignedWorkspace": "Area di lavoro non assegnata",
57
+ "searchChatbots": "Cerca chatbot",
58
+ "noChatbotsFound": "Nessun chatbot trovato",
59
+ "privateNotShared": "Privato (non condiviso)",
60
+ "inSpace": "in {spaceName}",
61
+ "chooseBotType": "Scegli un tipo di bot per iniziare:",
62
+ "addNewBot": "Aggiungi nuovo bot",
63
+ "addNewPrivateBot": "Aggiungi nuovo bot privato",
64
+ "expandBotSpaces": "Espandi Spazi Bot",
65
+ "allSpaces": "Tutti gli Spazi",
66
+ "adminSummary": {
67
+ "title": "Panoramica",
68
+ "totalBots": "Bot totali",
69
+ "running": "In esecuzione",
70
+ "stopped": "Fermati",
71
+ "failed": "Falliti",
72
+ "recentDeployments": "Deployment recenti",
73
+ "activeBots": "Bot attivi (24h)",
74
+ "noRecentActivity": "Nessuna attività recente",
75
+ "conversations": "conversazioni",
76
+ "totalActive": "{bots} bot con {conversations} conversazioni nelle ultime 24 ore",
77
+ "private": "Privato",
78
+ "unknown": "Sconosciuto",
79
+ "justNow": "adesso",
80
+ "minutesAgo": "{count}m fa",
81
+ "hoursAgo": "{count}h fa",
82
+ "yesterday": "ieri",
83
+ "daysAgo": "{count}g fa"
84
+ },
85
+ "private": "Privato",
86
+ "showBotList": "Mostra elenco bot",
87
+ "deleteConfirm": "Sei sicuro di voler eliminare \"{name}\"? Questa operazione distruggerà il deployment e non può essere annullata.",
88
+ "deleteError": "Impossibile eliminare il deployment: {error}",
89
+ "actionError": "Impossibile {action} il deployment: {error}",
90
+ "assignError": "Impossibile assegnare lo spazio bot: {error}",
91
+ "sections": {
92
+ "control": "Controllo",
93
+ "data": "Dati",
94
+ "resources": "Risorse"
95
+ },
96
+ "launcher": {
97
+ "modularChat": {
98
+ "title": "Bot Modulare (Chat)",
99
+ "badge": "Nuovo",
100
+ "description": "Crea con un assistente AI"
101
+ },
102
+ "modularWizard": {
103
+ "title": "Bot Modulare (Wizard)",
104
+ "description": "Configurazione passo dopo passo"
105
+ }
106
+ },
107
+ "redeploy": {
108
+ "confirm": "Effettuare il redeploy di \"{name}\" con la configurazione attuale? Questo riavvierà il bot senza modifiche.",
109
+ "initiating": "Avvio del redeploy...",
110
+ "sending": "Invio della richiesta di deployment...",
111
+ "deploying": "Deployment in corso...",
112
+ "redeploying": "Redeploy in corso...",
113
+ "failed": "Redeploy fallito"
114
+ },
115
+ "myBots": "I miei bot",
116
+ "subtitle": "Ogni bot è una configurazione salvata. Costruiscilo quando vuoi uno ZIP eseguibile.",
117
+ "noKeyBanner": {
118
+ "text": "Aggiungi una chiave provider LLM per sbloccare il chat builder e il wizard con form.",
119
+ "cta": "Apri Impostazioni →"
120
+ },
121
+ "documentLibrary": "Libreria documenti →",
122
+ "newBotChat": "Nuovo bot (chat)",
123
+ "newBotWizard": "Nuovo bot (wizard)",
124
+ "loadingShort": "Caricamento…",
125
+ "noBotsHint": "Nessun bot ancora. Iniziane uno dal chat builder o dal wizard.",
126
+ "searchBots": "Cerca bot…",
127
+ "noBotsMatch": "Nessun bot corrisponde a \"{query}\".",
128
+ "emptyDetailHint": "Seleziona un bot per vedere le sue azioni del ciclo di vita.",
129
+ "buildFailedAlert": "Build fallita: {error}",
130
+ "statuses": {
131
+ "building": "In costruzione",
132
+ "buildFailed": "Build fallita",
133
+ "needsRebuild": "Richiede rebuild",
134
+ "running": "In esecuzione",
135
+ "runningStale": "In esecuzione · obsoleto",
136
+ "ready": "Pronto",
137
+ "draft": "Bozza"
138
+ },
139
+ "builds": {
140
+ "building": "Build in corso…",
141
+ "retry": "Riprova build",
142
+ "rebuild": "Rebuild",
143
+ "build": "Build"
144
+ },
145
+ "connect": {
146
+ "title": "Connetti un bot in esecuzione",
147
+ "description": "Incolla l'URL dove stai eseguendo <code>{name}</code>. Il control plane lo sonderà con la chiave API integrata nella riga.",
148
+ "botUrlLabel": "URL del bot",
149
+ "probeFailedFallback": "Sondaggio fallito ({status})",
150
+ "disconnect": "Disconnetti",
151
+ "testing": "Test in corso…",
152
+ "testAndSave": "Testa e salva"
153
+ },
154
+ "documents": {
155
+ "title": "Libreria documenti",
156
+ "breadcrumbHere": "Libreria documenti",
157
+ "subtitle": "Ogni documento caricato, e i bot che lo referenziano. I documenti sopravvivono ai bot — eliminare un bot non rimuove i suoi documenti.",
158
+ "loadFailed": "Caricamento libreria fallito: {error}",
159
+ "loading": "Caricamento…",
160
+ "searchPlaceholder": "Cerca per nome file…",
161
+ "filters": {
162
+ "all": "Tutti",
163
+ "unattached": "Non collegati",
164
+ "parseFailed": "Parsing fallito"
165
+ },
166
+ "selectAll": "Seleziona tutto",
167
+ "deselectAll": "Deseleziona tutto",
168
+ "selectionStatus": "{selected} di {total} selezionati",
169
+ "deleting": "Eliminazione…",
170
+ "deleteSelected": "Elimina selezionati",
171
+ "deleteCount": "Elimina {count}",
172
+ "deleteSingleConfirm": "Eliminare \"{name}\"? Questo rimuove il file dal disco.",
173
+ "deleteMultiConfirm": "Eliminare {count} documenti non collegati? Questo li rimuove dal disco.",
174
+ "deleteFailed": "Impossibile eliminare {failed} di {total}: {details}",
175
+ "noDocs": "Nessun documento ancora caricato. Caricane uno dal wizard o dal chat builder quando configuri un bot.",
176
+ "noMatch": "Nessun documento corrisponde a questo filtro.",
177
+ "table": {
178
+ "document": "Documento",
179
+ "size": "Dimensione",
180
+ "uploaded": "Caricato",
181
+ "parsed": "Analizzato",
182
+ "usedBy": "Usato da"
183
+ },
184
+ "parseFailedLabel": "fallito",
185
+ "parseFailedTooltip": "Nessun testo estratto — RAG non userà questo documento",
186
+ "unattachedLabel": "Non collegato"
187
+ },
188
+ "detail": {
189
+ "backToList": "Torna all'elenco",
190
+ "runningAt": "in esecuzione su",
191
+ "staleNotice": "Configurazione modificata dall'ultima build — rifai la build per ottenere lo ZIP più recente.",
192
+ "wizard": "Wizard",
193
+ "chat": "Chat",
194
+ "connect": "Connetti",
195
+ "reconnect": "Riconnetti",
196
+ "conversations": "Conversazioni",
197
+ "downloadZip": "Scarica Zip",
198
+ "downloadWithDocs": "Scarica con documenti",
199
+ "deployToCloud": "Deploy su Cloud",
200
+ "live": "Live ↗",
201
+ "hideEmbed": "Nascondi Embed",
202
+ "embedScript": "Script Embed",
203
+ "deleteBot": "Elimina bot",
204
+ "deleteConfirm": "Eliminare questo bot e il suo artefatto?"
205
+ }
206
+ },
207
+ "bots": {
208
+ "types": {
209
+ "chat": "Chat",
210
+ "knowledge": "Conoscenza",
211
+ "form": "Form",
212
+ "triage": "Triage",
213
+ "appointment": "Appuntamento",
214
+ "bot": "Bot"
215
+ },
216
+ "descriptions": {
217
+ "chat": "Assistente chat basato su AI",
218
+ "form": "Raccolta dati strutturata",
219
+ "triage": "Indirizza gli utenti al posto giusto",
220
+ "appointment": "Pianifica riunioni e prenotazioni"
221
+ },
222
+ "status": {
223
+ "deployed": "deployato",
224
+ "deploying": "deployment in corso",
225
+ "failed": "fallito"
226
+ }
227
+ },
228
+ "actions": {
229
+ "modify": "Modifica",
230
+ "clone": "Clona",
231
+ "reassign": "Riassegna",
232
+ "goToLiveBot": "Vai al bot live",
233
+ "modifyTitle": "Modifica deployment - mantiene lo stesso URL e nome",
234
+ "cloneTitle": "Clona questo deployment con un nuovo nome",
235
+ "reassignTitle": "Riassegna a uno spazio bot diverso",
236
+ "deleteTitle": "Elimina deployment",
237
+ "editInChat": "Chat",
238
+ "editInChatTitle": "Modifica usando l'assistente chat",
239
+ "pause": "Pausa",
240
+ "start": "Avvia",
241
+ "pauseBot": "Metti in pausa il bot",
242
+ "startBot": "Avvia il bot",
243
+ "redeploy": "Redeploy",
244
+ "redeployBot": "Redeploy del bot",
245
+ "live": "Live",
246
+ "embed": "Embed",
247
+ "copied": "Copiato",
248
+ "replicas": "Repliche",
249
+ "scaleReplicas": "Scala repliche",
250
+ "replicasDescription": "Regola il numero di repliche del bot. Più repliche gestiscono più utenti simultanei. Le sessioni sticky garantiscono che gli utenti restino connessi alla stessa replica.",
251
+ "replicaCount": "Numero di repliche",
252
+ "replicasRange": "Min: 1, Max: 10",
253
+ "currentReplicas": "Repliche attuali (disponibili/desiderate)",
254
+ "scale": "Scala",
255
+ "scaling": "Scalando...",
256
+ "cancel": "Annulla"
257
+ },
258
+ "nav": {
259
+ "dashboard": "Dashboard",
260
+ "analytics": "Analytics",
261
+ "conversations": "Conversazioni",
262
+ "submissions": "Invii",
263
+ "liveLogs": "Log live"
264
+ },
265
+ "wizard": {
266
+ "loading": "Caricamento wizard...",
267
+ "loadingDeployment": "Caricamento configurazione deployment...",
268
+ "previewAfterDeployment": "Anteprima disponibile dopo il deployment",
269
+ "clickToBegin": "Clicca su un pulsante di deployment per iniziare",
270
+ "clickToUpdate": "Clicca su un pulsante di deployment per aggiornare",
271
+ "steps": {
272
+ "identity": "Identità",
273
+ "knowledge": "Knowledge Base",
274
+ "deployment": "Deployment",
275
+ "resources": "Risorse",
276
+ "infoGathering": "Raccolta info",
277
+ "triage": "Triage",
278
+ "appointments": "Appuntamenti",
279
+ "botSetup": "Setup bot",
280
+ "capabilities": "Capacità",
281
+ "formCollection": "Raccolta form",
282
+ "routing": "Routing",
283
+ "opticalRead": "Optical Read",
284
+ "deploy": "Build"
285
+ },
286
+ "titles": {
287
+ "newBot": "Nuovo bot",
288
+ "editBot": "Modifica bot",
289
+ "cloneBot": "Clona bot",
290
+ "newConversationalBot": "Nuovo bot conversazionale",
291
+ "editConversationalBot": "Modifica bot conversazionale",
292
+ "cloneConversationalBot": "Clona bot conversazionale",
293
+ "newTriageBot": "Nuovo bot triage",
294
+ "editTriageBot": "Modifica bot triage",
295
+ "cloneTriageBot": "Clona bot triage",
296
+ "newAppointmentsBot": "Nuovo bot appuntamenti",
297
+ "editAppointmentsBot": "Modifica bot appuntamenti",
298
+ "cloneAppointmentsBot": "Clona bot appuntamenti",
299
+ "configureYourBot": "Configura il tuo bot",
300
+ "selectBotCapabilities": "Seleziona le capacità del bot",
301
+ "defineBotIdentity": "Definisci l'identità del bot",
302
+ "uploadKnowledgeBase": "Carica la knowledge base",
303
+ "configureFormCollection": "Configura la raccolta form",
304
+ "configureAppointments": "Configura gli appuntamenti",
305
+ "configureTriageRouting": "Configura il routing triage",
306
+ "configureOpticalRead": "Configura Optical Read",
307
+ "deployYourBot": "Build e download"
308
+ },
309
+ "badges": {
310
+ "modifying": "In modifica",
311
+ "clone": "Clona",
312
+ "new": "Nuovo",
313
+ "conversational": "Conversazionale",
314
+ "triage": "Triage",
315
+ "appointments": "Appuntamenti",
316
+ "form": "Form",
317
+ "modular": "Modulare",
318
+ "knowledge": "Conoscenza",
319
+ "forms": "Form",
320
+ "routing": "Routing",
321
+ "opticalRead": "Optical Read"
322
+ },
323
+ "theatre": {
324
+ "modelConfiguration": "Configurazione modello",
325
+ "botPreview": "Anteprima bot",
326
+ "knowledgeBase": "Knowledge Base",
327
+ "deployment": "Deployment",
328
+ "preview": "Anteprima",
329
+ "infoGathering": "Raccolta info",
330
+ "triageDestinations": "Destinazioni triage",
331
+ "appointmentTypes": "Tipi di appuntamento",
332
+ "calendarProviders": "Provider di calendario",
333
+ "protocolPreview": "Anteprima protocollo",
334
+ "formPreview": "Anteprima form",
335
+ "appointmentPreview": "Anteprima appuntamento",
336
+ "triagePreview": "Anteprima triage",
337
+ "opticalReadPreview": "Anteprima Optical Read"
338
+ },
339
+ "protocols": {
340
+ "selectCapabilities": "Seleziona le capacità del bot",
341
+ "selectCapabilitiesDescription": "Abilita i protocolli di cui ha bisogno il tuo bot. Combina più capacità.",
342
+ "knowledgeBase": "Knowledge Base",
343
+ "knowledgeBaseDescription": "Rispondi alle domande usando i documenti caricati e RAG (Retrieval-Augmented Generation)",
344
+ "formCollection": "Raccolta form",
345
+ "formCollectionDescription": "Form conversazionali per raccogliere informazioni senza che l'AI veda i dati dell'utente",
346
+ "appointmentBooking": "Prenotazione appuntamenti",
347
+ "appointmentBookingDescription": "Indirizza gli utenti a provider di calendario come Calendly o Google Calendar",
348
+ "triageRouting": "Routing triage",
349
+ "triageRoutingDescription": "Indirizza gli utenti a bot specializzati o supporto umano in base alle loro necessità",
350
+ "opticalRead": "Optical Read",
351
+ "opticalReadDescription": "Estrai dati strutturati da un'immagine caricata usando un LLM con capacità visive",
352
+ "opticalReadProviderGate": "Optical Read richiede un provider con capacità visive. Anthropic e OpenAI sono supportati.",
353
+ "modelGate": "Questo modello supporta solo il protocollo knowledge. Passa a llama3.3 (Ollama) o a un provider cloud per abilitare i flussi multi-step.",
354
+ "exampleFaq": "Chatbot FAQ",
355
+ "exampleDocumentation": "Assistenti per documentazione",
356
+ "exampleProductSupport": "Supporto prodotti",
357
+ "exampleLeadCapture": "Acquisizione lead",
358
+ "exampleOnboarding": "Onboarding utenti",
359
+ "exampleSurvey": "Raccolta sondaggi",
360
+ "exampleConsultation": "Prenotazione consulenze",
361
+ "exampleScheduling": "Pianificazione servizi",
362
+ "exampleMeeting": "Organizzazione riunioni",
363
+ "exampleMultiBot": "Routing multi-bot",
364
+ "exampleDelegation": "Delega intelligente",
365
+ "exampleCustomerRouting": "Routing clienti",
366
+ "selectAtLeastOne": "Seleziona almeno una capacità",
367
+ "capabilitiesSelected": "{count} {count, plural, one {capability} other {capabilities}} selezionate",
368
+ "yourCombination": "La tua combinazione:",
369
+ "combinationFullService": "Bot full-service: rispondi a domande, raccogli info utente e prenota appuntamenti.",
370
+ "combinationQaData": "Q&A + Raccolta dati: rispondi a domande dalla tua knowledge base mentre raccogli informazioni utente.",
371
+ "combinationQaBooking": "Q&A + Prenotazione: rispondi a domande e aiuta gli utenti a prenotare appuntamenti.",
372
+ "combinationIntakeBooking": "Acquisizione + Prenotazione: raccogli informazioni utente e pianifica appuntamenti.",
373
+ "preview": {
374
+ "selectProtocolPrompt": "Seleziona capacità a sinistra per vedere cosa può fare il tuo bot",
375
+ "selectedCapabilities": "Capacità selezionate",
376
+ "combinedPossibilities": "Possibilità combinate",
377
+ "exampleUseCases": "Casi d'uso di esempio",
378
+ "showExamples": "Mostra esempi",
379
+ "contexts": {
380
+ "contextGeneric": "Generico",
381
+ "contextMedical": "Medico",
382
+ "contextLegal": "Legale",
383
+ "contextRetail": "Retail",
384
+ "contextRealEstate": "Immobiliare",
385
+ "contextEducation": "Istruzione",
386
+ "contextHospitality": "Ospitalità",
387
+ "contextFinance": "Finanza",
388
+ "medical": {
389
+ "medicalKnowledge": "Knowledge Base medica",
390
+ "medicalKnowledgeDesc": "Rispondi alle domande dei pazienti su sintomi, farmaci, procedure e assicurazione",
391
+ "symptomChecker": "Controllo sintomi",
392
+ "drugInfo": "Informazioni sui farmaci",
393
+ "treatmentFAQ": "FAQ sui trattamenti",
394
+ "insuranceCoverage": "Copertura assicurativa",
395
+ "prepInstructions": "Preparazione alla procedura",
396
+ "medicalForms": "Acquisizione paziente",
397
+ "medicalFormsDesc": "Raccogli anamnesi, assicurazione e consenso tramite form conversazionali",
398
+ "patientIntake": "Acquisizione paziente",
399
+ "medicalHistory": "Anamnesi",
400
+ "consentForms": "Form di consenso",
401
+ "insuranceVerification": "Verifica assicurazione",
402
+ "symptomQuestionnaire": "Questionario sintomi",
403
+ "medicalAppointments": "Pianificazione appuntamenti",
404
+ "medicalAppointmentsDesc": "Prenota visite mediche, esami di laboratorio e follow-up con integrazione calendario",
405
+ "doctorBooking": "Prenotazione medico",
406
+ "labScheduling": "Pianificazione laboratorio",
407
+ "followUpReminders": "Promemoria follow-up",
408
+ "specialistReferral": "Riferimento specialista",
409
+ "telehealth": "Sessioni telemedicina",
410
+ "medicalTriage": "Triage clinico",
411
+ "medicalTriageDesc": "Valuta l'urgenza e indirizza i pazienti al livello di cura appropriato",
412
+ "urgencyAssessment": "Valutazione urgenza",
413
+ "departmentRouting": "Routing reparto",
414
+ "nurseEscalation": "Escalation infermieristica",
415
+ "emergencyDetection": "Rilevamento emergenze",
416
+ "specialistMatch": "Abbinamento specialista",
417
+ "medicalKnowledgeForm": "Acquisizione paziente intelligente",
418
+ "medicalKnowledgeFormDesc": "Educa i pazienti mentre raccogli informazioni di acquisizione",
419
+ "smartIntake": "Acquisizione intelligente",
420
+ "guidedSymptoms": "Raccolta sintomi guidata",
421
+ "educatedConsent": "Consenso informato",
422
+ "preVisitPrep": "Preparazione pre-visita",
423
+ "medicalKnowledgeAppt": "Prenotazione informata",
424
+ "medicalKnowledgeApptDesc": "Spiega i servizi e aiuta i pazienti a prenotare l'appuntamento giusto",
425
+ "informedBooking": "Prenotazione informata",
426
+ "prepThenSchedule": "Preparazione poi pianificazione",
427
+ "serviceExplainer": "Spiegatore servizi",
428
+ "waitTimeInfo": "Informazioni tempo di attesa",
429
+ "medicalTriple": "Percorso del paziente",
430
+ "medicalTripleDesc": "Flusso di acquisizione completo: educa, raccogli informazioni e pianifica in una sola conversazione",
431
+ "fullPatientJourney": "Percorso completo del paziente",
432
+ "newPatientOnboarding": "Onboarding nuovo paziente",
433
+ "referralWorkflow": "Flusso di riferimento",
434
+ "medicalAll": "Front Desk virtuale",
435
+ "medicalAllDesc": "Reception digitale completa: triage, acquisizione, educazione e pianificazione",
436
+ "virtualFrontDesk": "Front Desk virtuale",
437
+ "completePatientPortal": "Assistente portale pazienti",
438
+ "urgentCareBot": "Bot pronto soccorso"
439
+ },
440
+ "legal": {
441
+ "legalKnowledge": "Informazioni legali",
442
+ "legalKnowledgeDesc": "Rispondi a domande su aree di pratica, processi e strutture di compensi",
443
+ "legalFAQ": "FAQ legali",
444
+ "caseTypesInfo": "Info tipologie di caso",
445
+ "feeStructure": "Struttura dei compensi",
446
+ "processExplainer": "Spiegatore del processo",
447
+ "jurisdictionInfo": "Info giurisdizione",
448
+ "legalForms": "Acquisizione cliente",
449
+ "legalFormsDesc": "Raccogli dettagli del caso, documenti e informazioni di conflict check",
450
+ "clientIntake": "Acquisizione cliente",
451
+ "caseDetails": "Dettagli caso",
452
+ "documentCollection": "Raccolta documenti",
453
+ "conflictCheck": "Conflict check",
454
+ "retainerInfo": "Informazioni anticipo",
455
+ "legalAppointments": "Prenotazione consulenze",
456
+ "legalAppointmentsDesc": "Pianifica consulenze, deposizioni e riunioni",
457
+ "consultationBooking": "Prenotazione consulenze",
458
+ "depositionSchedule": "Pianificazione deposizioni",
459
+ "courtDateReminders": "Promemoria date in tribunale",
460
+ "meetingCoordination": "Coordinamento riunioni",
461
+ "legalTriage": "Routing del caso",
462
+ "legalTriageDesc": "Indirizza le richieste all'avvocato o all'area di pratica appropriata",
463
+ "caseTypeRouting": "Routing tipo di caso",
464
+ "urgencyAssessment": "Valutazione urgenza",
465
+ "attorneyMatch": "Abbinamento avvocato",
466
+ "departmentRouting": "Routing reparto",
467
+ "legalKnowledgeForm": "Valutazione del caso guidata",
468
+ "legalKnowledgeFormDesc": "Spiega le opzioni legali mentre raccogli informazioni sul caso",
469
+ "guidedIntake": "Acquisizione guidata",
470
+ "informedConsent": "Consenso informato",
471
+ "caseEvaluation": "Valutazione del caso",
472
+ "legalAll": "Paralegale virtuale",
473
+ "legalAllDesc": "Servizi cliente completi: acquisizione, valutazione del caso, routing e pianificazione",
474
+ "virtualParalegal": "Paralegale virtuale",
475
+ "clientPortal": "Portale cliente",
476
+ "caseManagement": "Gestione casi"
477
+ },
478
+ "retail": {
479
+ "retailKnowledge": "Assistente prodotti",
480
+ "retailKnowledgeDesc": "Rispondi a domande su prodotti, disponibilità, politiche e taglie",
481
+ "productInfo": "Informazioni prodotto",
482
+ "stockAvailability": "Disponibilità magazzino",
483
+ "returnPolicy": "Politica di reso",
484
+ "shippingFAQ": "FAQ spedizioni",
485
+ "sizeGuide": "Guida alle taglie",
486
+ "retailForms": "Servizio clienti",
487
+ "retailFormsDesc": "Gestisci ricerche di ordini, resi e registrazioni di garanzia",
488
+ "orderLookup": "Ricerca ordini",
489
+ "returnRequest": "Richiesta di reso",
490
+ "warrantyRegistration": "Registrazione garanzia",
491
+ "feedbackSurvey": "Sondaggio feedback",
492
+ "wishlist": "Raccolta wishlist",
493
+ "retailAppointments": "Prenotazione servizi",
494
+ "retailAppointmentsDesc": "Pianifica personal shopping, ritiri e servizi in negozio",
495
+ "personalShopping": "Personal shopping",
496
+ "storePickup": "Ritiro in negozio",
497
+ "serviceBooking": "Prenotazione servizi",
498
+ "consultations": "Consulenze di stile",
499
+ "fittingRoom": "Prenotazione camerino",
500
+ "retailTriage": "Routing clienti",
501
+ "retailTriageDesc": "Indirizza i clienti al reparto giusto o fai escalation dei problemi",
502
+ "departmentRouting": "Routing reparto",
503
+ "issueEscalation": "Escalation problemi",
504
+ "vipCustomers": "Clienti VIP",
505
+ "languageRouting": "Routing per lingua",
506
+ "retailAll": "Concierge virtuale",
507
+ "retailAllDesc": "Assistente shopping completo: aiuto prodotti, prenotazione servizi e supporto",
508
+ "virtualConcierge": "Concierge virtuale",
509
+ "omniChannelSupport": "Supporto omnicanale",
510
+ "personalShopperBot": "Bot personal shopper"
511
+ },
512
+ "realestate": {
513
+ "realestateKnowledge": "Informazioni immobiliari",
514
+ "realestateKnowledgeDesc": "Rispondi a domande su annunci, quartieri e processo di acquisto",
515
+ "listingInfo": "Informazioni annuncio",
516
+ "neighborhoodGuide": "Guida ai quartieri",
517
+ "mortgageFAQ": "FAQ mutui",
518
+ "buyingProcess": "Processo di acquisto",
519
+ "marketTrends": "Tendenze di mercato",
520
+ "realestateForms": "Qualificazione lead",
521
+ "realestateFormsDesc": "Qualifica acquirenti/venditori e cattura le preferenze immobiliari",
522
+ "buyerQualification": "Qualificazione acquirente",
523
+ "sellerIntake": "Acquisizione venditore",
524
+ "propertyPreferences": "Preferenze immobiliari",
525
+ "preApprovalInfo": "Info pre-approvazione",
526
+ "contactCapture": "Acquisizione contatti",
527
+ "realestateAppointments": "Pianificazione visite",
528
+ "realestateAppointmentsDesc": "Prenota visite immobiliari, open house e incontri con agenti",
529
+ "showingSchedule": "Pianificazione visite",
530
+ "openHouseRSVP": "RSVP open house",
531
+ "agentMeeting": "Incontro con agente",
532
+ "virtualTour": "Tour virtuale",
533
+ "inspectionBooking": "Prenotazione ispezione",
534
+ "realestateTriage": "Abbinamento agenti",
535
+ "realestateTriageDesc": "Abbina i lead all'agente giusto in base a necessità e località",
536
+ "buyerVsSeller": "Acquirente vs venditore",
537
+ "locationRouting": "Routing per località",
538
+ "agentMatch": "Abbinamento agenti",
539
+ "propertyTypeSpecialist": "Specialista immobiliare",
540
+ "realestateAll": "Agente virtuale",
541
+ "realestateAllDesc": "Assistente immobiliare completo: annunci, qualificazione e pianificazione",
542
+ "virtualAgent": "Agente virtuale",
543
+ "leadQualification": "Qualificazione lead",
544
+ "propertyMatchmaker": "Matchmaker immobiliare"
545
+ },
546
+ "education": {
547
+ "educationKnowledge": "Info corsi e programmi",
548
+ "educationKnowledgeDesc": "Rispondi a domande su corsi, ammissioni, aiuti finanziari e vita nel campus",
549
+ "courseCatalog": "Catalogo corsi",
550
+ "admissionsFAQ": "FAQ ammissioni",
551
+ "financialAid": "Info aiuti finanziari",
552
+ "campusInfo": "Informazioni campus",
553
+ "programRequirements": "Requisiti del programma",
554
+ "educationForms": "Domande studenti",
555
+ "educationFormsDesc": "Raccogli informazioni di iscrizione, registrazione e domanda",
556
+ "applicationForm": "Modulo di domanda",
557
+ "enrollmentInfo": "Info iscrizione",
558
+ "transcriptRequest": "Richiesta pagella",
559
+ "financialAidApp": "Domanda di aiuto finanziario",
560
+ "courseRegistration": "Registrazione corsi",
561
+ "educationAppointments": "Pianificazione accademica",
562
+ "educationAppointmentsDesc": "Prenota riunioni con consulenti, tour del campus e sessioni di tutoraggio",
563
+ "advisorMeeting": "Incontro con consulente",
564
+ "campusTour": "Tour del campus",
565
+ "admissionsInterview": "Colloquio di ammissione",
566
+ "tutoringSessions": "Sessioni di tutoraggio",
567
+ "officeHours": "Orari di ricevimento",
568
+ "educationTriage": "Routing studenti",
569
+ "educationTriageDesc": "Indirizza le richieste al reparto o team di supporto giusto",
570
+ "departmentRouting": "Routing reparto",
571
+ "studentVsProspect": "Studente vs prospect",
572
+ "academicVsAdmin": "Accademico vs amministrativo",
573
+ "urgencyLevel": "Livello di urgenza",
574
+ "educationAll": "Consulente virtuale",
575
+ "educationAllDesc": "Servizi studenti completi: informazioni, domande e pianificazione",
576
+ "virtualAdvisor": "Consulente virtuale",
577
+ "admissionsBot": "Bot ammissioni",
578
+ "studentServicesHub": "Hub servizi studenti"
579
+ },
580
+ "hospitality": {
581
+ "hospitalityKnowledge": "Informazioni ospiti",
582
+ "hospitalityKnowledgeDesc": "Rispondi a domande su servizi, ristorazione, attività e attrazioni locali",
583
+ "amenitiesInfo": "Info servizi",
584
+ "localAttractions": "Attrazioni locali",
585
+ "diningOptions": "Opzioni ristorazione",
586
+ "policyFAQ": "FAQ politiche",
587
+ "eventInfo": "Informazioni evento",
588
+ "hospitalityForms": "Preferenze ospiti",
589
+ "hospitalityFormsDesc": "Cattura preferenze camera, esigenze alimentari e dettagli per occasioni speciali prima dell'arrivo",
590
+ "roomPreferences": "Preferenze camera",
591
+ "dietaryRestrictions": "Restrizioni alimentari",
592
+ "pillowMenu": "Menù cuscini e biancheria",
593
+ "arrivalDetails": "Dettagli arrivo",
594
+ "specialOccasions": "Occasioni speciali",
595
+ "hospitalityAppointments": "Prenotazione",
596
+ "hospitalityAppointmentsDesc": "Prenota ristorazione, spa, attività e servizio in camera",
597
+ "reservationBooking": "Prenotazione",
598
+ "spaAppointment": "Appuntamento spa",
599
+ "diningReservation": "Prenotazione ristorante",
600
+ "roomService": "Servizio in camera",
601
+ "activityBooking": "Prenotazione attività",
602
+ "hospitalityTriage": "Routing ospiti",
603
+ "hospitalityTriageDesc": "Indirizza le richieste al reparto giusto o fai escalation dei problemi urgenti",
604
+ "guestVsProspect": "Ospite vs prospect",
605
+ "urgentRequests": "Richieste urgenti",
606
+ "departmentRouting": "Routing reparto",
607
+ "vipHandling": "Gestione VIP",
608
+ "hospitalityAll": "Concierge virtuale",
609
+ "hospitalityAllDesc": "Servizi ospiti completi: informazioni, prenotazioni e supporto",
610
+ "virtualConcierge": "Concierge virtuale",
611
+ "guestServicesBot": "Bot servizi ospiti",
612
+ "preArrivalConcierge": "Concierge pre-arrivo"
613
+ },
614
+ "finance": {
615
+ "financeKnowledge": "Prodotti finanziari",
616
+ "financeKnowledgeDesc": "Rispondi a domande su conti, prestiti, tassi e requisiti KYC",
617
+ "productInfo": "Informazioni prodotto",
618
+ "ratesFAQ": "FAQ tassi e commissioni",
619
+ "eligibilityGuide": "Guida all'idoneità",
620
+ "kycRequirements": "Requisiti KYC",
621
+ "complianceInfo": "Info conformità",
622
+ "financeForms": "KYC e onboarding",
623
+ "financeFormsDesc": "Raccogli documenti di identità, verifica i clienti e completa l'onboarding normativo",
624
+ "kycCollection": "Raccolta KYC",
625
+ "identityVerification": "Verifica identità",
626
+ "amlScreening": "Screening AML",
627
+ "accountOpening": "Apertura conto",
628
+ "riskProfiling": "Profilazione del rischio",
629
+ "financeAppointments": "Pianificazione consulenti",
630
+ "financeAppointmentsDesc": "Prenota incontri con consulenti, funzionari di prestito e specialisti",
631
+ "advisorMeeting": "Incontro con consulente",
632
+ "loanConsultation": "Consulenza prestito",
633
+ "accountReview": "Revisione conto",
634
+ "planningSession": "Sessione di pianificazione",
635
+ "branchVisit": "Visita in filiale",
636
+ "financeTriage": "Routing servizi",
637
+ "financeTriageDesc": "Indirizza allo specialista del prodotto giusto o fai escalation di casi complessi",
638
+ "productRouting": "Routing prodotti",
639
+ "complianceEscalation": "Escalation conformità",
640
+ "advisorMatch": "Abbinamento consulente",
641
+ "fraudEscalation": "Escalation frodi",
642
+ "financeAll": "Onboarding digitale",
643
+ "financeAllDesc": "Onboarding digitale completo: verifica KYC, abbinamento prodotti e pianificazione consulenti",
644
+ "digitalOnboarding": "Onboarding digitale",
645
+ "kycBot": "Bot KYC",
646
+ "wealthAdvisorAssistant": "Assistente consulente patrimoniale"
647
+ }
648
+ },
649
+ "knowledge": {
650
+ "title": "Knowledge Base",
651
+ "description": "Rispondi alle domande usando i tuoi documenti caricati con il recupero basato su RAG",
652
+ "example1": "Chatbot FAQ prodotti",
653
+ "example2": "Assistente per documentazione",
654
+ "example3": "Portale di conoscenza interno"
655
+ },
656
+ "formGathering": {
657
+ "title": "Raccolta form",
658
+ "description": "Raccogli progressivamente informazioni utente attraverso una conversazione naturale",
659
+ "example1": "Form di acquisizione lead",
660
+ "example2": "Onboarding clienti",
661
+ "example3": "Raccolta sondaggi e feedback"
662
+ },
663
+ "appointments": {
664
+ "title": "Prenotazione appuntamenti",
665
+ "description": "Permetti agli utenti di prenotare riunioni tramite integrazioni di calendario",
666
+ "example1": "Prenotazione consulenze vendita",
667
+ "example2": "Pianificazione appuntamenti di servizio",
668
+ "example3": "Richieste demo e riunioni"
669
+ },
670
+ "triage": {
671
+ "title": "Routing triage",
672
+ "description": "Indirizza gli utenti a bot specializzati o supporto umano in base alle loro necessità",
673
+ "example1": "Routing reparto",
674
+ "example2": "Escalation ad agenti umani",
675
+ "example3": "Orchestrazione multi-bot"
676
+ },
677
+ "singles": {
678
+ "singleKnowledge": "Assistente di conoscenza",
679
+ "singleKnowledgeDesc": "Rispondi alle domande usando i tuoi documenti caricati con recupero intelligente basato su RAG",
680
+ "scenarioFAQ": "Chatbot FAQ",
681
+ "scenarioProductInfo": "Informazioni prodotto",
682
+ "scenarioDocumentation": "Portale documentazione",
683
+ "scenarioInternalKB": "Knowledge base interna",
684
+ "scenarioPolicyLookup": "Ricerca politiche",
685
+ "singleFormGathering": "Raccoglitore dati",
686
+ "singleFormGatheringDesc": "Raccogli progressivamente informazioni strutturate attraverso una conversazione naturale",
687
+ "scenarioLeadCapture": "Acquisizione lead",
688
+ "scenarioSurvey": "Raccolta sondaggi",
689
+ "scenarioContactForm": "Form di contatto",
690
+ "scenarioFeedback": "Raccolta feedback",
691
+ "scenarioRegistration": "Registrazione eventi",
692
+ "singleAppointments": "Assistente prenotazioni",
693
+ "singleAppointmentsDesc": "Aiuta gli utenti a pianificare riunioni tramite integrazioni di calendario come Calendly o Cal.com",
694
+ "scenarioBookMeeting": "Prenotazione riunione",
695
+ "scenarioScheduleDemo": "Pianificazione demo",
696
+ "scenarioConsultation": "Prenotazione consulenze",
697
+ "scenarioServiceAppt": "Appuntamenti di servizio",
698
+ "scenarioOfficeHours": "Orari di ricevimento",
699
+ "singleTriage": "Router intelligente",
700
+ "singleTriageDesc": "Indirizza gli utenti alla destinazione giusta in base a intento, urgenza o argomento",
701
+ "scenarioRouteToAgent": "Routing agenti",
702
+ "scenarioDepartmentRouting": "Routing reparto",
703
+ "scenarioEscalation": "Gestione escalation",
704
+ "scenarioLanguageRouting": "Routing basato sulla lingua",
705
+ "scenarioVIPRouting": "Routing priorità/VIP",
706
+ "singleOpticalRead": "Estrattore visivo",
707
+ "singleOpticalReadDesc": "Estrai campi strutturati da un'immagine caricata — il modello legge, l'utente revisiona e invia",
708
+ "scenarioIdScan": "Scansione documento d'identità",
709
+ "scenarioInsuranceCard": "Acquisizione tessera assicurativa",
710
+ "scenarioReceiptExtract": "Estrazione ricevute",
711
+ "scenarioBusinessCard": "Lettore biglietti da visita",
712
+ "scenarioPrescriptionLabel": "Etichetta prescrizione"
713
+ },
714
+ "synergies": {
715
+ "synergyKnowledgeForm": "Acquisizione lead informata",
716
+ "synergyKnowledgeFormDesc": "Rispondi a domande sui prodotti per creare fiducia, poi cattura lead interessati con form contestuali",
717
+ "scenarioQualifyThenCapture": "Qualifica poi cattura",
718
+ "scenarioAnswerThenCollect": "Rispondi poi raccogli",
719
+ "scenarioContextualForms": "Form contestuali",
720
+ "scenarioEducateThenConvert": "Educa poi converti",
721
+ "scenarioSupportToLead": "Supporto → Lead",
722
+ "synergyKnowledgeAppointments": "Prenotazione consulenziale",
723
+ "synergyKnowledgeAppointmentsDesc": "Educa gli utenti su servizi/prodotti, poi lascia che prenotino quando sono pronti",
724
+ "scenarioInformThenBook": "Informa poi prenota",
725
+ "scenarioSmartScheduling": "Pianificazione intelligente",
726
+ "scenarioPreQualifyBooking": "Pre-qualifica prenotazioni",
727
+ "scenarioServiceExplainer": "Spiegatore servizi → Prenota",
728
+ "scenarioPricingToDemo": "FAQ prezzi → Demo",
729
+ "synergyKnowledgeTriage": "Escalation intelligente",
730
+ "synergyKnowledgeTriageDesc": "Risposte self-service per domande comuni, handoff fluido per problemi complessi",
731
+ "scenarioAnswerOrEscalate": "Rispondi o fai escalation",
732
+ "scenarioSmartRouting": "Routing intelligente",
733
+ "scenarioTieredSupport": "Supporto a livelli",
734
+ "scenarioDeflectOrRoute": "Devia o indirizza",
735
+ "scenarioL1Automation": "Automazione L1",
736
+ "synergyKnowledgeOpticalRead": "Scansiona e spiega",
737
+ "synergyKnowledgeOpticalReadDesc": "Estrai dati da un'immagine caricata, poi rispondi a domande di follow-up basate sulla tua knowledge base",
738
+ "scenarioScanThenAsk": "Scansiona poi chiedi",
739
+ "scenarioDocumentExplainer": "Spiegatore documenti",
740
+ "scenarioCardToPolicy": "Tessera → ricerca polizza",
741
+ "scenarioPrescriptionExplainer": "Spiegatore prescrizione",
742
+ "scenarioReceiptToReturns": "Ricevuta → FAQ resi",
743
+ "synergyFormAppointments": "Acquisizione fino alla prenotazione",
744
+ "synergyFormAppointmentsDesc": "Raccogli informazioni di qualificazione, poi offri slot di appuntamento personalizzati",
745
+ "scenarioIntakeSchedule": "Acquisisci poi pianifica",
746
+ "scenarioBookAndCapture": "Prenota e acquisisci",
747
+ "scenarioQualifyBook": "Qualifica poi prenota",
748
+ "scenarioPreVisitForm": "Form pre-visita → Prenota",
749
+ "scenarioNeedsAssessment": "Valutazione bisogni → Pianifica",
750
+ "synergyFormTriage": "Routing lead intelligente",
751
+ "synergyFormTriageDesc": "Raccogli dettagli utente, poi indirizza al membro del team o reparto perfetto",
752
+ "scenarioCollectThenRoute": "Raccogli poi indirizza",
753
+ "scenarioFormBasedRouting": "Routing basato su form",
754
+ "scenarioLeadDistribution": "Distribuzione lead",
755
+ "scenarioSkillBasedRouting": "Routing basato sulle competenze",
756
+ "scenarioTerritoryAssignment": "Assegnazione territorio",
757
+ "synergyAppointmentsTriage": "Prenotazione specialista",
758
+ "synergyAppointmentsTriageDesc": "Identifica lo specialista giusto per le esigenze dell'utente, poi prenota direttamente",
759
+ "scenarioRouteToCalendar": "Indirizza al calendario",
760
+ "scenarioSpecialistBooking": "Prenotazione specialista",
761
+ "scenarioSmartDelegation": "Delega intelligente",
762
+ "scenarioExpertMatch": "Abbinamento esperto",
763
+ "scenarioAvailabilityRouting": "Routing basato sulla disponibilità",
764
+ "synergyTriple1": "Funnel di vendita completo",
765
+ "synergyTriple1Desc": "Percorso di vendita completo: educa prospect, cattura lead e prenota demo qualificate",
766
+ "scenarioFullSalesFlow": "Flusso di vendita completo",
767
+ "scenarioCompleteOnboarding": "Onboarding completo",
768
+ "scenarioNurtureToClose": "Nutri fino alla chiusura",
769
+ "scenarioInboundSales": "Automazione vendite inbound",
770
+ "synergyTriple2": "Hub di supporto",
771
+ "synergyTriple2Desc": "Knowledge base self-service, creazione ticket ed escalation intelligente agli agenti",
772
+ "scenarioSupportEscalation": "Escalation supporto",
773
+ "scenarioIntelligentTicketing": "Ticketing intelligente",
774
+ "scenarioHelpDeskAuto": "Automazione help desk",
775
+ "scenarioIssueCapture": "Acquisizione problema → Routing",
776
+ "synergyTriple3": "Flusso di consulenza",
777
+ "synergyTriple3Desc": "Rispondi a domande, abbina all'esperto giusto e abilita la prenotazione diretta su calendario",
778
+ "scenarioMultiSpecialistBooking": "Prenotazione multi-specialista",
779
+ "scenarioSmartConsultation": "Consulenza intelligente",
780
+ "scenarioAdvisoryFlow": "Flusso servizio consulenza",
781
+ "scenarioExpertConnect": "Connetti con esperto",
782
+ "synergyTriple4": "Acquisizione completa",
783
+ "synergyTriple4Desc": "Form di acquisizione strutturati, routing intelligente ai team e pianificazione automatizzata",
784
+ "scenarioIntakeRouteBook": "Acquisisci → Indirizza → Prenota",
785
+ "scenarioCompleteLeadFlow": "Flusso lead completo",
786
+ "scenarioPatientIntake": "Flusso acquisizione paziente",
787
+ "scenarioClientOnboarding": "Onboarding cliente",
788
+ "synergyAll": "Assistente enterprise",
789
+ "synergyAllDesc": "Concierge completo: rispondi a domande, raccogli dati, indirizza intelligentemente e prenota appuntamenti",
790
+ "scenarioEnterpriseBot": "Assistente enterprise",
791
+ "scenarioFullServiceAssistant": "Bot full-service",
792
+ "scenarioDigitalConcierge": "Concierge digitale",
793
+ "scenarioVirtualReceptionist": "Receptionist virtuale",
794
+ "scenarioUnifiedSupport": "Hub di supporto unificato"
795
+ }
796
+ }
797
+ },
798
+ "modular": {
799
+ "addCalendarProvider": "Aggiungi provider di calendario",
800
+ "addUrlDestination": "Aggiungi destinazione URL",
801
+ "redirectToBot": "Reindirizza al bot",
802
+ "addRoutingDestination": "Aggiungi destinazione di routing",
803
+ "selectedBot": "Bot selezionato",
804
+ "displayName": "Nome visualizzato",
805
+ "displayNamePlaceholder": "es., Supporto vendite, Aiuto tecnico",
806
+ "description": "Descrizione",
807
+ "descriptionPlaceholder": "Descrivi quando gli utenti dovrebbero essere indirizzati qui...",
808
+ "url": "URL",
809
+ "urlPlaceholder": "https://example.com/support",
810
+ "paradigm": "Paradigma",
811
+ "protocols": "Protocolli",
812
+ "set": "Imposta",
813
+ "notGenerated": "Non generato",
814
+ "calendars": "Calendari",
815
+ "configured": "{count} configurati",
816
+ "triageRoutes": "Route triage",
817
+ "opticalReadFields": "Campi Optical Read",
818
+ "required": "Obbligatorio",
819
+ "displayNameRequired": "Il nome visualizzato è obbligatorio",
820
+ "descriptionRequired": "La descrizione è obbligatoria",
821
+ "urlRequired": "L'URL è obbligatorio",
822
+ "urlInvalid": "Inserisci un URL valido",
823
+ "addOpticalReadField": "Aggiungi campo di estrazione",
824
+ "editOpticalReadField": "Modifica campo di estrazione",
825
+ "updateOpticalReadField": "Aggiorna campo di estrazione"
826
+ },
827
+ "tabs": {
828
+ "desktop": "Desktop",
829
+ "documents": "Documenti",
830
+ "fieldsDisplay": "Visualizzazione campi",
831
+ "flow": "Flusso",
832
+ "jsonView": "Vista JSON",
833
+ "fields": "Campi",
834
+ "preview": "Anteprima"
835
+ },
836
+ "identity": {
837
+ "chatDisplayName": "Nome visualizzato finestra chat",
838
+ "chatDisplayNameHelper": "Nome mostrato nell'intestazione dell'interfaccia chat",
839
+ "personaObjective": "Persona e obiettivo",
840
+ "personaObjectivePlaceholder": "Descrivi lo scopo del tuo bot, la personalità e le istruzioni personalizzate",
841
+ "personaObjectiveHelper": "Definisci come il tuo bot deve comportarsi, con cosa deve aiutare e qualsiasi linea guida specifica.",
842
+ "welcomeMessage": "Messaggio di benvenuto",
843
+ "welcomeMessagePlaceholder": "Ciao! Come posso aiutarti oggi?",
844
+ "welcomeMessageHelper": "Il primo messaggio che gli utenti vedono quando iniziano una conversazione.",
845
+ "suggestedPrompts": "Prompt suggeriti (opzionale)",
846
+ "suggestedPromptsHelper": "Fornisci prompt di avvio rapido per aiutare gli utenti a iniziare le conversazioni",
847
+ "inputPlaceholder": "Placeholder input",
848
+ "inputPlaceholderHelper": "Testo placeholder nel campo di input messaggio",
849
+ "inputPlaceholderDefault": "Scrivi il tuo messaggio...",
850
+ "promptPlaceholder": "Con cosa puoi aiutarmi?",
851
+ "chatDisplayNamePlaceholder": "Bot",
852
+ "promptItemLabel": "Prompt"
853
+ },
854
+ "resources": {
855
+ "botName": "Imposta nome bot univoco",
856
+ "botNameHelper": "Verrà usato come identificatore univoco della risorsa. Max 50 caratteri.",
857
+ "botNamePlaceholder": "Il mio bot fantastico",
858
+ "aboutBotNames": "Informazioni sui nomi dei bot",
859
+ "botNameInfo": "I nomi delle risorse sono ricercabili nella dashboard. Usa descrizioni significative o implementa il tuo sistema.",
860
+ "botNameWarning": "Il nome non può essere modificato dopo il deployment.",
861
+ "provider": "Provider",
862
+ "selectProvider": "Seleziona un provider",
863
+ "model": "Modello",
864
+ "selectModel": "Seleziona un modello",
865
+ "apiKey": "Chiave API",
866
+ "apiKeyEnter": "Inserisci la tua chiave API",
867
+ "apiKeySelectProviderFirst": "Seleziona prima un provider",
868
+ "apiKeySavedPlaceholder": "•••••••• (usando la chiave salvata)",
869
+ "apiKeyExistingPlaceholder": "•••••••• (chiave esistente registrata — lascia vuoto per mantenere)",
870
+ "apiKeyUsingSaved": "Utilizzo della chiave API salvata:",
871
+ "apiKeyExistingConfigured": "Chiave API esistente configurata — sarà riutilizzata a meno che non ne inserisci una nuova",
872
+ "apiKeyIsSet": "Chiave API impostata",
873
+ "apiKeyClear": "Cancella",
874
+ "apiKeyAbout": "Informazioni sulle chiavi API",
875
+ "apiKeyTooltip": "La tua chiave API è crittografata e memorizzata in modo sicuro. Verrà usata per alimentare le risposte del tuo chatbot. Puoi gestire le tue chiavi API salvate nelle impostazioni.",
876
+ "apiKeyEncryptedHelper": "La tua chiave API è crittografata e memorizzata in modo sicuro",
877
+ "apiKeyLoadingSaved": "Caricamento chiavi salvate...",
878
+ "apiKeyOrUseSaved": "Oppure usa una chiave API salvata:",
879
+ "ollamaNoCredsNeeded": "Ollama si connette al tuo endpoint — nessuna chiave API necessaria.",
880
+ "ollamaHost": "URL host Ollama",
881
+ "ollamaHostHelper": "L'endpoint che il tuo bot contatterà. Lascia vuoto per usare il valore predefinito http://localhost:11434. Se il tuo bot gira in Docker e Ollama gira sull'host, usa http://host.docker.internal:11434 (Mac/Windows) o l'IP LAN del tuo host (Linux). I deployment cloud richiedono un endpoint Ollama raggiungibile pubblicamente. Richiede Ollama ≥ 0.5.0 per garantire la validità dell'envelope — i daemon più vecchi funzionano ma fanno fallback al parsing JSON best-effort.",
882
+ "ollamaHostSavedPlaceholder": "Utilizzo host salvato — cancella per inserire un nuovo URL",
883
+ "ollamaHostUsingSaved": "Utilizzo dell'host Ollama salvato:",
884
+ "ollamaHostOrUseSaved": "Oppure usa un host Ollama salvato:",
885
+ "awsCredentialsUsing": "Utilizzo delle credenziali AWS salvate:",
886
+ "awsCredentialsExisting": "Credenziali AWS esistenti configurate — saranno riutilizzate a meno che non ne inserisci di nuove qui sotto",
887
+ "awsUseIamRole": "Usa ruolo IAM (consigliato per EKS/EC2)",
888
+ "awsUseIamRoleHelper": "Usa il ruolo IAM dell'istanza/pod invece di credenziali esplicite",
889
+ "awsAccessKeyId": "AWS Access Key ID",
890
+ "awsAccessKeyIdPlaceholder": "AKIAIOSFODNN7EXAMPLE",
891
+ "awsSecretAccessKey": "AWS Secret Access Key",
892
+ "awsSecretAccessKeyPlaceholder": "wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY",
893
+ "bedrockRegion": "Regione Bedrock",
894
+ "bedrockRegionOption": "{name} ({geoPrefix} cross-region)",
895
+ "bedrockCrossRegion": "L'inferenza cross-region indirizza le richieste alla capacità disponibile nella regione {regionName}",
896
+ "regionUS": "US",
897
+ "regionEU": "EU",
898
+ "regionAPAC": "APAC",
899
+ "awsUsingIamRoleStatus": "Utilizzo ruolo IAM",
900
+ "awsCredentialsConfigured": "Credenziali AWS configurate",
901
+ "awsLoadingCredentials": "Caricamento credenziali salvate...",
902
+ "awsOrUseSaved": "Oppure usa credenziali AWS salvate:"
903
+ },
904
+ "knowledge": {
905
+ "loadingDocuments": "Caricamento documenti...",
906
+ "noDocumentsInSpace": "Nessun documento in questo spazio bot ancora.",
907
+ "selectFromBotSpace": "Seleziona dai file dello spazio bot",
908
+ "selected": "Selezionato",
909
+ "select": "Seleziona",
910
+ "skipRag": "Salta RAG",
911
+ "skipRagHelper": "Il prompt obiettivo sarà l'unica fonte di conoscenza"
912
+ },
913
+ "infoGathering": {
914
+ "formRegion": "Regione form",
915
+ "formRegionHelper": "Imposta pattern di validazione, formati dei campi ed etichette per la tua regione di destinazione",
916
+ "describeInfo": "Descrivi le informazioni che vuoi raccogliere",
917
+ "describeInfoPlaceholder": "Voglio raccogliere il nome, l'email e il nome dell'azienda dell'utente...",
918
+ "describeInfoHelperEdit": "Aggiungi una descrizione e rigenera, o modifica il JSON direttamente nella scheda Vista JSON",
919
+ "describeInfoHelper": "Descrivi i campi del form in testo semplice",
920
+ "aiFormGeneration": "Generazione form basata su AI",
921
+ "regenerateDescription": "Rigenera la struttura del form dalla tua nuova descrizione",
922
+ "generateDescription": "Genera un form strutturato dalla tua descrizione",
923
+ "errorNoDescription": "Descrivi le informazioni che vuoi raccogliere",
924
+ "errorNoApiKey": "Chiave API mancante. Torna allo Step 1 e inserisci la tua chiave API.",
925
+ "formSubmissionOptions": "Opzioni di invio form",
926
+ "sendToControlPlane": "Invia al control plane",
927
+ "sendToControlPlaneHelper": "Memorizza gli invii dei form completati nella tua dashboard per visualizzazione ed esportazione",
928
+ "webhookUrl": "URL webhook esterno (opzionale)",
929
+ "webhookUrlPlaceholder": "https://your-webhook-url.com/endpoint",
930
+ "webhookUrlHelper": "Invia anche i dati del form a un webhook esterno (es., Zapier, Make, endpoint personalizzato)",
931
+ "afterSubmitMessage": "Messaggio chat post-invio",
932
+ "afterSubmitPlaceholder": "Grazie! Iniziamo...",
933
+ "afterSubmitHelper": "Messaggio mostrato agli utenti dopo l'invio del form",
934
+ "termsAndConditions": "Termini e condizioni",
935
+ "termsPlaceholder": "Inserisci qui il testo dei tuoi termini e condizioni. Supporta la formattazione markdown...",
936
+ "termsHelper": "Se fornito, apparirà una casella di controllo obbligatoria come campo finale del form. Lascia vuoto per saltare.",
937
+ "termsInfo": "Gli utenti possono cliccare sul link \"Termini e condizioni\" per visualizzare il testo completo in un popup prima di accettare.",
938
+ "jsonViewTip": "Suggerimento: passa alla scheda \"Vista JSON\" a destra per modificare la struttura del form generato."
939
+ },
940
+ "triage": {
941
+ "addRoute": "Aggiungi route chatbot",
942
+ "deleteRoute": "Elimina route",
943
+ "deleteDestination": "Elimina destinazione",
944
+ "selectedBotUrl": "URL del bot selezionato",
945
+ "editBotDestination": "Modifica destinazione bot",
946
+ "editUrlDestination": "Modifica destinazione URL",
947
+ "selectBot": "Seleziona bot",
948
+ "loadingBots": "Caricamento bot...",
949
+ "noBotsAvailable": "Nessun bot disponibile. Crea prima un bot.",
950
+ "descriptionHelper": "Usato per il matching RAG per determinare quando indirizzare gli utenti qui",
951
+ "updateDestination": "Aggiorna destinazione"
952
+ },
953
+ "opticalRead": {
954
+ "addField": "Aggiungi campo di estrazione",
955
+ "deleteField": "Elimina campo",
956
+ "label": "Etichetta",
957
+ "labelPlaceholder": "Data di nascita",
958
+ "labelRequired": "L'etichetta è obbligatoria",
959
+ "idName": "Nome ID",
960
+ "idNamePlaceholder": "dob",
961
+ "idNameHelper": "chiave snake_case usata in extractedFields",
962
+ "idNameRequired": "Il nome ID è obbligatorio",
963
+ "idNameInvalid": "Usa solo lettere minuscole, numeri e underscore",
964
+ "idNameDuplicate": "Il nome ID deve essere univoco",
965
+ "hint": "Suggerimento",
966
+ "hintPlaceholder": "MM/GG/AAAA, fronte della patente",
967
+ "hintHelper": "Opzionale: indirizza posizione o formato. Il suggerimento è la primitiva di tuning portante.",
968
+ "noFieldsYet": "Aggiungi almeno un campo di estrazione per abilitare Optical Read.",
969
+ "providerNotSupported": "Optical Read richiede un provider con capacità visive. Anthropic e OpenAI sono supportati.",
970
+ "intro": "Dai un nome agli slot che vuoi estrarre. Il modello li risolve rispetto al proprio prior visivo — il suggerimento opzionale indirizza posizione o formato.",
971
+ "showUploadOnStart": "Mostra pulsante di upload come prompt di avvio",
972
+ "showUploadOnStartHelper": "Renderizza una card di upload accanto ai suggerimenti del primo messaggio del bot. Salta il riscaldamento conversazionale — l'utente può caricare immediatamente.",
973
+ "afterSubmitMessage": "Messaggio chat post-invio (opzionale)",
974
+ "afterSubmitMessagePlaceholder": "Grazie! Abbiamo ricevuto i tuoi dati.",
975
+ "afterSubmitMessageHelper": "Risposta del bot renderizzata nella chat dopo che l'utente invia i campi estratti. Lascia vuoto per saltare."
976
+ },
977
+ "appointments": {
978
+ "addAppointment": "Aggiungi tipo di appuntamento",
979
+ "deleteAppointment": "Elimina appuntamento",
980
+ "editCalendarProvider": "Modifica provider di calendario",
981
+ "updateCalendarProvider": "Aggiorna provider di calendario",
982
+ "calendarId": "ID calendario",
983
+ "calendarIdPlaceholder": "es., dr-rossi-generale",
984
+ "calendarIdHelper": "Identificatore univoco restituito come calendarId nella risposta",
985
+ "calendarIdRequired": "L'ID calendario è obbligatorio",
986
+ "calendarIdExists": "Questo ID calendario esiste già",
987
+ "providerName": "Nome provider",
988
+ "providerNameRequired": "Il nome del provider è obbligatorio",
989
+ "providerNameHelper": "Servizio del provider di calendario",
990
+ "popupUrl": "URL popup",
991
+ "popupUrlPlaceholder": "https://calendly.com/dr-rossi",
992
+ "popupUrlHelper": "URL lanciato quando l'utente clicca sul pulsante calendario",
993
+ "popupUrlRequired": "L'URL popup è obbligatorio",
994
+ "popupUrlInvalid": "Inserisci un URL valido",
995
+ "descriptionPlaceholder": "Descrivi quando gli utenti dovrebbero prenotare con questo provider di calendario...",
996
+ "descriptionRequired": "La descrizione è obbligatoria",
997
+ "descriptionHelper": "Usato per il matching RAG per determinare quale calendario mostrare"
998
+ },
999
+ "deployment": {
1000
+ "inProgress": "Deployment in corso...",
1001
+ "testDeployment": "Test deployment",
1002
+ "currentDeployment": "Deployment corrente",
1003
+ "testBotLive": "Il tuo bot di test è live a questo URL:",
1004
+ "botLive": "Il tuo bot è live a questo URL:",
1005
+ "testSuccess": "Test deployment riuscito!",
1006
+ "testSuccessMessage": "Il tuo bot di test è live e in esecuzione. Puoi testarlo nel pannello di anteprima a destra.",
1007
+ "productionSuccess": "Deployment di produzione riuscito!",
1008
+ "productionSuccessMessage": "Il tuo bot è ora live e pronto per l'uso in produzione.",
1009
+ "deployToProduction": "Deploy in produzione",
1010
+ "viewDeployments": "Visualizza bot",
1011
+ "previewChanges": "Anteprima modifiche (test)",
1012
+ "deployToTest": "Deploy in test",
1013
+ "updateProduction": "Aggiorna bot di produzione",
1014
+ "editMode": "Modalità modifica",
1015
+ "editModeMessage": "Il deployment aggiornerà il bot esistente con le tue modifiche. L'URL del bot rimarrà lo stesso.",
1016
+ "configSummary": "Riepilogo configurazione",
1017
+ "botName": "Nome bot:",
1018
+ "provider": "Provider:",
1019
+ "model": "Modello:",
1020
+ "documents": "Documenti:",
1021
+ "formCollection": "Raccolta form:",
1022
+ "uploaded": "caricato",
1023
+ "enabled": "Abilitato",
1024
+ "embeddings": "Embeddings",
1025
+ "embeddingsChunks": "{count} chunk",
1026
+ "editConfiguration": "Modifica configurazione",
1027
+ "aboutDeployments": "Informazioni sui deployment",
1028
+ "testDeploymentInfo": "Test deployment: crea un URL persistente per i test.",
1029
+ "productionDeploymentInfo": "Deployment di produzione: crea il tuo bot live che sarà accessibile pubblicamente.",
1030
+ "deploymentRegion": "Regione di deployment",
1031
+ "useOrgDefault": "Usa il default dell'organizzazione ({region})",
1032
+ "regionHelp": "Seleziona la regione AWS dove verrà deployato il tuo bot. Influisce su latenza e residenza dei dati.",
1033
+ "none": "Nessuno",
1034
+ "saving": "Salvataggio…",
1035
+ "saveChanges": "Salva modifiche",
1036
+ "saveConfiguration": "Salva configurazione",
1037
+ "saveFailed": "Salvataggio fallito",
1038
+ "saveErrorFallback": "Salvataggio della configurazione fallito",
1039
+ "buildFailed": "Build fallita",
1040
+ "buildErrorFallback": "Build dell'artefatto fallita",
1041
+ "building": "Build in corso…",
1042
+ "buildArtifact": "Build artefatto",
1043
+ "configurationSaved": "Configurazione salvata",
1044
+ "configurationSavedDesc": "Salvato come <mono>{name}</mono>. Costruisci lo ZIP eseguibile quando sei pronto.",
1045
+ "artifactReadyCached": "Artefatto pronto (in cache)",
1046
+ "artifactBuilt": "Artefatto costruito",
1047
+ "artifactReadyDesc": "Il tuo artefatto bot <mono>{name}</mono> è pronto per il download.",
1048
+ "downloadArtifact": "Scarica artefatto",
1049
+ "downloadArtifactWithDocs": "Scarica con documenti",
1050
+ "previewHelp": "Prova il tuo bot live nel pannello a destra. Quando le risposte ti sembrano giuste, salva e poi scarica la configurazione. Costruisci l'artefatto eseguibile quando sei pronto."
1051
+ },
1052
+ "previews": {
1053
+ "identity": {
1054
+ "fallbackBotName": "Bot",
1055
+ "fallbackPlaceholder": "Scrivi il tuo messaggio...",
1056
+ "fallbackFirstMessage": "Ciao! Come posso aiutarti oggi?",
1057
+ "minimize": "Minimizza",
1058
+ "minimizeChat": "Minimizza chat",
1059
+ "botMessage": "Messaggio del bot",
1060
+ "suggestedPrompts": "Prompt suggeriti",
1061
+ "chatMessage": "Messaggio chat",
1062
+ "typeYourMessageAria": "Scrivi il tuo messaggio",
1063
+ "sendMessage": "Invia messaggio"
1064
+ },
1065
+ "appointments": {
1066
+ "fallbackBotName": "Bot appuntamenti",
1067
+ "noProviders": "Nessun provider di calendario configurato ancora",
1068
+ "noProvidersHint": "Clicca su \"Aggiungi provider di calendario\" per iniziare",
1069
+ "userQuery": "Query utente",
1070
+ "calendarIconAlt": "Icona calendario"
1071
+ },
1072
+ "triage": {
1073
+ "fallbackBotName": "Bot triage",
1074
+ "noRoutes": "Nessuna destinazione di routing configurata ancora",
1075
+ "noRoutesHint": "Clicca su \"Aggiungi destinazione di routing\" per iniziare",
1076
+ "user": "Utente",
1077
+ "evaluatesAndRoutes": "Valuta e indirizza"
1078
+ },
1079
+ "opticalRead": {
1080
+ "noFields": "Nessun campo di estrazione configurato ancora",
1081
+ "noFieldsHint": "Clicca su \"Aggiungi campo di estrazione\" per iniziare",
1082
+ "clientPreviewLabel": "Come lo vedranno gli utenti",
1083
+ "editButton": "Modifica",
1084
+ "sendButton": "Invia",
1085
+ "previewNote": "Gli input sono renderizzati disabilitati fino all'estrazione. Gli utenti toccano Modifica per correggere, Invia per inviare."
1086
+ },
1087
+ "knowledge": {
1088
+ "unlinkTitle": "Scollega da questo bot (il file rimane nello spazio bot)",
1089
+ "deleteTitle": "Elimina documento definitivamente",
1090
+ "deleteConfirm": "Sei sicuro di voler eliminare \"{name}\"? Questo rimuoverà definitivamente il file e non può essere annullato.",
1091
+ "deleteError": "Eliminazione del file fallita",
1092
+ "uploadedDocuments": "Documenti caricati",
1093
+ "noUploadedDocs": "Nessun documento caricato",
1094
+ "uploadDocsLeft": "Carica documenti a sinistra",
1095
+ "linkedFromBotSpace": "Collegato dallo spazio bot",
1096
+ "noLinkedDocs": "Nessun documento collegato",
1097
+ "selectSharedFilesHint": "Seleziona file condivisi dallo spazio bot",
1098
+ "linkedTooltip": "I documenti caricati diventano parte di questo botspace per default",
1099
+ "linkedFooter": "I documenti collegati restano nello spazio bot quando scollegati da questo bot.",
1100
+ "ragInfo": "Questi documenti saranno elaborati e usati per fornire contesto alle risposte del tuo bot tramite RAG (Retrieval-Augmented Generation).",
1101
+ "fileCount": "{count} {count, plural, one {file} other {files}}",
1102
+ "untitled": "Senza titolo",
1103
+ "unknown": "Sconosciuto",
1104
+ "fileFallback": "FILE",
1105
+ "embedding": {
1106
+ "title": "Embedding vettoriali",
1107
+ "ready": "Pronto",
1108
+ "notGenerated": "Non generato",
1109
+ "chunks": "Chunk",
1110
+ "model": "Modello",
1111
+ "sourceDocuments": "Documenti sorgente",
1112
+ "generated": "Generato",
1113
+ "embeddedFiles": "File embedded",
1114
+ "technicalDetails": "Dettagli tecnici",
1115
+ "noEmbeddingsYet": "Nessun embedding ancora",
1116
+ "uploadFirst": "Carica prima i documenti nella scheda Documenti.",
1117
+ "clickToGenerate": "Clicca sotto per chunkare e fare embedding dei tuoi documenti localmente.",
1118
+ "generating": "Generazione…",
1119
+ "embeddingDocs": "Embedding documenti in corso…",
1120
+ "regenerate": "Rigenera embedding",
1121
+ "generate": "Genera embedding vettoriali",
1122
+ "errorNoDocuments": "Carica almeno un documento prima",
1123
+ "errorGenerationFailed": "Generazione embedding fallita",
1124
+ "doneStatus": "Fatto! {count} chunk embedded con {model}.",
1125
+ "regenWarning": "Se cambi il set di documenti, rigenera per mantenere l'artefatto sincronizzato.",
1126
+ "vectorModeInfo": "In modalità vettoriale, il bot fa embedding delle query in-process usando il modello ONNX multilingual-e5-small incluso ed esegue la similarità coseno localmente. Nessuna dipendenza dal factory a runtime."
1127
+ }
1128
+ },
1129
+ "form": {
1130
+ "validate": "Valida",
1131
+ "validateInput": "Valida input",
1132
+ "selectOption": "Seleziona un'opzione...",
1133
+ "noStructure": "Nessuna struttura form generata",
1134
+ "noStructureHint": "Genera un form per vedere l'anteprima",
1135
+ "editJsonTitle": "Modifica struttura form (JSON)",
1136
+ "openLargerView": "Apri in vista più grande",
1137
+ "expand": "Espandi",
1138
+ "generatedJsonLabel": "Struttura form generata (JSON)",
1139
+ "validJson": "JSON valido",
1140
+ "invalidJson": "JSON non valido",
1141
+ "jsonParseError": "Errore di parsing JSON:",
1142
+ "editJsonHelper": "Modifica questo JSON per personalizzare la struttura del form. Le modifiche saranno riflesse nella scheda Visualizzazione campi.",
1143
+ "branches": "Diramazioni",
1144
+ "requiredBadge": "Obbligatorio",
1145
+ "piiBadge": "PII"
1146
+ },
1147
+ "bot": {
1148
+ "missingConfig": "Aggiungi un provider, un modello e una chiave API nello step 1 per avviare il bot di anteprima.",
1149
+ "livePreview": "Anteprima live",
1150
+ "resetPreview": "Reset anteprima",
1151
+ "iframeTitle": "Anteprima bot",
1152
+ "skippedInPreview": "(saltato in anteprima)",
1153
+ "webhookSideEffect": "Il webhook invierà POST a {url}",
1154
+ "webhookNoUrl": "(nessun URL)",
1155
+ "submitFormSideEffect": "Il form verrebbe inviato al control plane",
1156
+ "genericSideEffect": "Effetto collaterale saltato in anteprima"
1157
+ }
1158
+ },
1159
+ "botSummary": {
1160
+ "title": "Riepilogo bot",
1161
+ "whyFillThis": "Perché compilarlo?",
1162
+ "tooltipLine1": "Il riepilogo bot aiuta altri bot nella tua rete a capire cosa fa questo bot e quale conoscenza possiede.",
1163
+ "tooltipLine2": "Questo abilita routing, triage e orchestrazione multi-bot più intelligenti.",
1164
+ "description": "Descrivi il ruolo di questo bot nella tua rete.",
1165
+ "notSystemPrompt": "Non è un system prompt",
1166
+ "placeholder": "Descrivi cosa fa questo bot e la conoscenza che possiede. Es., 'Gestisce richieste di fatturazione con accesso a documenti sui prezzi e FAQ.'",
1167
+ "characters": "caratteri",
1168
+ "optionalBadge": "Opzionale - Fai il deploy per salvare e usare questo riepilogo nella tua rete."
1169
+ }
1170
+ },
1171
+ "settings": {
1172
+ "title": "Impostazioni",
1173
+ "subtitle": "Gestisci le impostazioni e le preferenze del tuo account",
1174
+ "tabs": {
1175
+ "apiKeys": "Chiavi API",
1176
+ "account": "Account",
1177
+ "servicePlan": "Piano di servizio",
1178
+ "languages": "Lingue",
1179
+ "botSpaces": "Spazi bot",
1180
+ "builderConfig": "Configurazione builder",
1181
+ "region": "Regione",
1182
+ "auditLogs": "Audit log",
1183
+ "admin": "Admin"
1184
+ },
1185
+ "languages": {
1186
+ "title": "Preferenze lingua",
1187
+ "description": "Scegli la tua lingua preferita per l'interfaccia",
1188
+ "preferredLanguage": "Lingua preferita",
1189
+ "languageHelper": "Questa impostazione sarà applicata a tutte le tue sessioni",
1190
+ "saveLanguage": "Salva lingua",
1191
+ "saveSuccess": "Preferenza lingua salvata con successo",
1192
+ "saveError": "Salvataggio della preferenza lingua fallito",
1193
+ "aboutTitle": "Informazioni sulle impostazioni lingua",
1194
+ "aboutItem1": "La tua preferenza lingua è memorizzata nel tuo account",
1195
+ "aboutItem2": "Le modifiche avranno effetto dopo il salvataggio",
1196
+ "aboutItem3": "Alcuni contenuti potrebbero non essere ancora tradotti",
1197
+ "locales": {
1198
+ "en": "English",
1199
+ "es": "Spanish (Español)",
1200
+ "fr": "French (Français)",
1201
+ "de": "German (Deutsch)",
1202
+ "pt": "Portuguese (Português)",
1203
+ "ja": "Japanese (日本語)",
1204
+ "zh": "Chinese (中文)",
1205
+ "ko": "Korean (한국어)",
1206
+ "uk": "Ukrainian (Українська)",
1207
+ "ar": "Arabic (العربية)",
1208
+ "nl": "Dutch (Nederlands)",
1209
+ "sw": "Swahili (Kiswahili)"
1210
+ }
1211
+ },
1212
+ "region": {
1213
+ "title": "Regione di deployment",
1214
+ "description": "Configura la regione AWS predefinita per i deployment dei bot",
1215
+ "currentRegion": "Regione predefinita attuale",
1216
+ "selectRegion": "Seleziona regione predefinita",
1217
+ "regionHelp": "I nuovi deployment useranno questa regione per default. Gli utenti possono sovrascrivere questa impostazione per deployment.",
1218
+ "saveSuccess": "Regione predefinita aggiornata con successo",
1219
+ "unsavedChanges": "Hai modifiche non salvate",
1220
+ "infoTitle": "Informazioni sulle impostazioni regione",
1221
+ "infoDescription": "La regione di deployment determina dove gira l'infrastruttura del tuo bot. Scegliere una regione più vicina ai tuoi utenti può migliorare i tempi di risposta. I singoli deployment possono sovrascrivere questa impostazione predefinita."
1222
+ },
1223
+ "account": {
1224
+ "title": "Informazioni account",
1225
+ "emailAddress": "Indirizzo email",
1226
+ "userId": "ID utente",
1227
+ "logout": "Logout",
1228
+ "loggingOut": "Logout in corso...",
1229
+ "logoutConfirm": "Sei sicuro di voler effettuare il logout?",
1230
+ "logoutNote": "Sarai disconnesso dal tuo account",
1231
+ "dangerZone": "Zona pericolosa",
1232
+ "deleteAccount": "Elimina account",
1233
+ "deleteAdminWarning": "Elimina definitivamente il tuo account e tutti i dati associati inclusi bot, spazi bot e account contributor che sono affiliati solo alla tua organizzazione. Questa azione non può essere annullata.",
1234
+ "deleteUserWarning": "Elimina definitivamente il tuo account e tutti i tuoi dati personali inclusi bot, documenti e chiavi API. Le tue appartenenze agli spazi bot saranno rimosse. Questa azione non può essere annullata."
1235
+ },
1236
+ "servicePlan": {
1237
+ "title": "Piano di servizio",
1238
+ "description": "Visualizza il tuo piano attuale, utilizzo e funzionalità disponibili",
1239
+ "currentPlan": "Il tuo piano di abbonamento attuale",
1240
+ "usage": "Utilizzo attuale",
1241
+ "deployedBots": "Bot deployati",
1242
+ "botSpaces": "Spazi bot",
1243
+ "users": "Utenti",
1244
+ "includedFeatures": "Funzionalità incluse",
1245
+ "allPlans": "Piani disponibili",
1246
+ "current": "Attuale",
1247
+ "bots": "bot",
1248
+ "spaces": "spazi",
1249
+ "usersLabel": "utenti",
1250
+ "organization": "Organizzazione",
1251
+ "needMore": "Hai bisogno di più?",
1252
+ "contactUs": "Contattaci per discutere l'upgrade del tuo piano o soluzioni enterprise personalizzate."
1253
+ },
1254
+ "apiKeys": {
1255
+ "title": "Chiavi API",
1256
+ "description": "Salva le chiavi API dei tuoi provider LLM per facilità di riutilizzo tra i deployment",
1257
+ "addKey": "+ Aggiungi chiave API",
1258
+ "addNewKey": "Aggiungi nuova chiave API",
1259
+ "name": "Nome",
1260
+ "namePlaceholder": "es., La mia chiave OpenAI",
1261
+ "provider": "Provider",
1262
+ "apiKey": "Chiave API",
1263
+ "apiKeyPlaceholder": "Inserisci la tua chiave API",
1264
+ "saving": "Salvataggio...",
1265
+ "saveKey": "Salva chiave API",
1266
+ "loading": "Caricamento chiavi API...",
1267
+ "noKeys": "Nessuna chiave API salvata ancora",
1268
+ "noKeysHint": "Aggiungi la tua prima chiave API per iniziare",
1269
+ "added": "Aggiunta {date}",
1270
+ "deleteConfirm": "Sei sicuro di voler eliminare questa chiave API?",
1271
+ "saveSuccess": "Chiave API salvata con successo",
1272
+ "deleteSuccess": "Chiave API eliminata con successo",
1273
+ "loadError": "Caricamento delle chiavi API fallito",
1274
+ "saveError": "Salvataggio della chiave API fallito",
1275
+ "deleteError": "Eliminazione della chiave API fallita",
1276
+ "nameAndKeyRequired": "Nome e chiave API sono obbligatori",
1277
+ "awsRegion": "Regione AWS",
1278
+ "authentication": "Autenticazione",
1279
+ "useIamRole": "Usa ruolo IAM",
1280
+ "useIamRoleHint": "Usa il ruolo IAM collegato al pod Kubernetes (consigliato per la produzione)",
1281
+ "useExplicitCredentials": "Usa credenziali esplicite",
1282
+ "useExplicitCredentialsHint": "Fornisci direttamente AWS access key e secret key",
1283
+ "awsAccessKeyId": "AWS Access Key ID",
1284
+ "awsSecretAccessKey": "AWS Secret Access Key",
1285
+ "defaultBotConfig": {
1286
+ "title": "Configurazione bot predefinita",
1287
+ "description": "Seleziona una chiave API e un modello da usare come predefinito quando crei nuovi bot con il builder.",
1288
+ "selectKey": "Chiave API predefinita",
1289
+ "selectModel": "Modello predefinito",
1290
+ "noDefault": "Nessun predefinito (usa selezione automatica)",
1291
+ "selectModelPlaceholder": "Seleziona un modello",
1292
+ "selectKeyFirst": "Seleziona una chiave API per vedere i modelli disponibili",
1293
+ "currentSelection": "Predefinito attuale",
1294
+ "noModel": "Nessun modello selezionato",
1295
+ "save": "Salva predefinito"
1296
+ }
1297
+ },
1298
+ "botSpaces": {
1299
+ "title": "Spazi bot",
1300
+ "description": "Organizza i chatbot in spazi e controlla l'accesso dei contributor",
1301
+ "createSpace": "+ Crea spazio bot",
1302
+ "createNewSpace": "Crea nuovo spazio bot",
1303
+ "name": "Nome",
1304
+ "namePlaceholder": "es., supporto-clienti",
1305
+ "nameHint": "Sono consentiti solo lettere, numeri, underscore e trattini",
1306
+ "descriptionLabel": "Descrizione",
1307
+ "descriptionPlaceholder": "Descrizione opzionale per questo spazio bot",
1308
+ "creating": "Creazione...",
1309
+ "create": "Crea spazio bot",
1310
+ "loading": "Caricamento spazi bot...",
1311
+ "noSpaces": "Nessuno spazio bot creato ancora",
1312
+ "noSpacesHint": "Crea il tuo primo spazio bot per organizzare i tuoi chatbot",
1313
+ "botCount": "{count} bot",
1314
+ "created": "Creato {date}",
1315
+ "invite": "Invita",
1316
+ "manage": "Gestisci",
1317
+ "deleteConfirm": "Sei sicuro di voler eliminare questo spazio bot? Tutti i bot al suo interno saranno eliminati definitivamente.",
1318
+ "createSuccess": "Spazio bot creato con successo",
1319
+ "deleteSuccess": "Spazio bot eliminato con successo",
1320
+ "loadError": "Caricamento degli spazi bot fallito",
1321
+ "createError": "Creazione dello spazio bot fallita",
1322
+ "deleteError": "Eliminazione dello spazio bot fallita",
1323
+ "nameRequired": "Il nome è obbligatorio",
1324
+ "nameInvalid": "Il nome può contenere solo lettere, numeri, underscore e trattini",
1325
+ "aboutTitle": "Informazioni sugli spazi bot",
1326
+ "aboutItem1": "Gli spazi bot ti permettono di raggruppare chatbot correlati",
1327
+ "aboutItem2": "Concedi ai contributor accesso in lettura o scrittura a spazi specifici",
1328
+ "aboutItem3": "Gli admin hanno accesso completo a tutti gli spazi bot nell'organizzazione",
1329
+ "invitationSent": "Invito inviato con successo"
1330
+ },
1331
+ "auditLogs": {
1332
+ "title": "Audit log",
1333
+ "description": "Visualizza tutte le azioni eseguite nella tua organizzazione",
1334
+ "exportCsv": "Esporta CSV",
1335
+ "exportJson": "Esporta JSON",
1336
+ "loadError": "Caricamento degli audit log fallito",
1337
+ "externalIntegration": "Integrazione esterna",
1338
+ "webhookDescription": "Invia audit log a un SIEM esterno o servizio di logging tramite webhook.",
1339
+ "webhookUrl": "URL webhook",
1340
+ "webhookUrlPlaceholder": "https://your-siem.example.com/webhook",
1341
+ "enableWebhook": "Abilita webhook",
1342
+ "hmacEnabled": "Firma HMAC abilitata",
1343
+ "webhookSecretWarning": "Webhook Secret (copia ora - non sarà più mostrato)",
1344
+ "saveSettings": "Salva impostazioni",
1345
+ "testWebhook": "Testa webhook",
1346
+ "regenerateSecret": "Rigenera secret",
1347
+ "regenerateConfirm": "Rigenerare il secret del webhook? Dovrai aggiornare il tuo endpoint ricevente.",
1348
+ "webhookSaved": "Impostazioni webhook salvate",
1349
+ "secretRegenerated": "Nuovo secret generato",
1350
+ "testSuccess": "Test webhook inviato con successo",
1351
+ "saveError": "Salvataggio delle impostazioni webhook fallito",
1352
+ "testError": "Test webhook fallito",
1353
+ "regenerateError": "Rigenerazione del secret fallita",
1354
+ "payloadFormat": "Formato payload webhook",
1355
+ "payloadDescription": "Ogni evento di audit viene inviato come richiesta POST con header:",
1356
+ "headerEvent": "X-Audit-Event: event_type",
1357
+ "headerTimestamp": "X-Audit-Timestamp: timestamp ISO",
1358
+ "headerSignature": "X-Audit-Signature: sha256=hmac (se secret configurato)"
1359
+ },
1360
+ "admin": {
1361
+ "title": "Dashboard admin",
1362
+ "description": "Gestisci gli utenti e visualizza informazioni a livello di sistema",
1363
+ "allUsers": "Tutti gli utenti",
1364
+ "loadingUsers": "Caricamento utenti...",
1365
+ "noUsers": "Nessun utente trovato",
1366
+ "loadError": "Caricamento degli utenti fallito",
1367
+ "tableHeaders": {
1368
+ "name": "Nome",
1369
+ "email": "Email",
1370
+ "organization": "Organizzazione",
1371
+ "role": "Ruolo",
1372
+ "created": "Creato"
1373
+ },
1374
+ "you": "Tu",
1375
+ "stats": {
1376
+ "totalUsers": "Utenti totali",
1377
+ "admins": "Admin",
1378
+ "contributors": "Contributor"
1379
+ }
1380
+ },
1381
+ "builderConfig": {
1382
+ "title": "Configurazione builder",
1383
+ "description": "Configura quale modello AI alimenta il bot builder e imposta i default per la creazione dei bot",
1384
+ "builderTitle": "Driver del modello builder",
1385
+ "builderDescription": "Seleziona quale modello AI alimenta l'interfaccia del bot builder. Questo modello gestisce conversazioni ed esecuzione strumenti.",
1386
+ "defaultBotTitle": "Modello predefinito per la creazione di bot",
1387
+ "defaultBotDescription": "Pre-seleziona queste impostazioni quando crei nuovi bot tramite il builder. Gli utenti possono sovrascrivere durante il deployment.",
1388
+ "provider": "Provider",
1389
+ "apiKey": "Chiave API",
1390
+ "model": "Modello",
1391
+ "selectProvider": "Seleziona provider...",
1392
+ "selectKey": "Seleziona chiave API...",
1393
+ "selectModel": "Seleziona modello...",
1394
+ "noKeysForProvider": "Nessuna chiave API salvata per questo provider. Aggiungine una nella scheda Chiavi API.",
1395
+ "useSameAsBuilder": "Usa le stesse impostazioni del builder",
1396
+ "saveConfig": "Salva configurazione",
1397
+ "saveSuccess": "Configurazione builder salvata con successo",
1398
+ "saveError": "Salvataggio della configurazione builder fallito",
1399
+ "aboutTitle": "Informazioni sulla configurazione builder",
1400
+ "aboutItem1": "Il modello builder gestisce l'interfaccia conversazionale di creazione bot",
1401
+ "aboutItem2": "Le impostazioni bot predefinite sono pre-selezionate quando si fa il deploy tramite il builder",
1402
+ "aboutItem3": "L'uso degli strumenti è supportato da Claude, GPT, Gemini e altri",
1403
+ "displaySettings": {
1404
+ "title": "Impostazioni di visualizzazione",
1405
+ "description": "Configura come l'assistente Modulo appare nell'interfaccia",
1406
+ "disableAnimation": "Disabilita animazione helper",
1407
+ "disableAnimationHint": "Mostra Modulo come icona statica invece che come helper animato"
1408
+ }
1409
+ },
1410
+ "mojulo": {
1411
+ "title": "Impostazioni",
1412
+ "subtitle": "Configura le chiavi API che alimentano i tuoi bot e le credenziali cloud usate per deployarli.",
1413
+ "noKeyGate": "I builder hanno bisogno di una chiave provider LLM per funzionare. Aggiungine una nella scheda Chiavi LLM e torna indietro.",
1414
+ "tabs": {
1415
+ "llm": "Chiavi LLM",
1416
+ "provider": "Chiavi provider",
1417
+ "language": "Impostazione lingua"
1418
+ },
1419
+ "form": {
1420
+ "addKey": "Aggiungi una chiave",
1421
+ "name": "Nome visualizzato",
1422
+ "provider": "Provider",
1423
+ "apiKey": "Chiave API",
1424
+ "ollamaHost": "URL host",
1425
+ "makeDefault": "Rendi questa la chiave predefinita",
1426
+ "ollamaNoDefault": "Ollama non può essere predefinito — il chat builder ha bisogno di un provider cloud.",
1427
+ "saving": "Salvataggio…",
1428
+ "save": "Salva chiave",
1429
+ "saveError": "Salvataggio fallito"
1430
+ },
1431
+ "list": {
1432
+ "title": "Chiavi memorizzate",
1433
+ "loading": "Caricamento…",
1434
+ "empty": "Nessuna chiave ancora.",
1435
+ "defaultBadge": "predefinito",
1436
+ "makeDefault": "Rendi predefinito",
1437
+ "delete": "Elimina"
1438
+ },
1439
+ "llm": {
1440
+ "title": "Chiavi LLM",
1441
+ "description": "Alimenta il bot builder e viene integrata in ogni bot che compili.",
1442
+ "defaultName": "Predefinito",
1443
+ "placeholder": "sk-…",
1444
+ "bedrockPlaceholder": "{\"region\":\"us-east-1\",\"accessKeyId\":\"…\",\"secretAccessKey\":\"…\"}",
1445
+ "ollamaPlaceholder": "http://localhost:11434",
1446
+ "providers": {
1447
+ "anthropic": "Anthropic",
1448
+ "openai": "OpenAI",
1449
+ "bedrock": "AWS Bedrock (incolla le credenziali JSON)",
1450
+ "ollama": "Ollama (locale — incolla l'URL dell'host)"
1451
+ }
1452
+ },
1453
+ "provider": {
1454
+ "title": "Chiavi provider",
1455
+ "description": "Credenziali cloud-host. Usate quando deployi un bot su un provider cloud dal control plane.",
1456
+ "defaultName": "Fly.io",
1457
+ "placeholder": "fo1_…",
1458
+ "providers": {
1459
+ "fly": "Fly.io"
1460
+ }
1461
+ },
1462
+ "language": {
1463
+ "title": "Impostazione lingua",
1464
+ "description": "Scegli la lingua usata nell'interfaccia del control plane.",
1465
+ "label": "Lingua interfaccia"
1466
+ }
1467
+ }
1468
+ },
1469
+ "deployments": {
1470
+ "title": "Deployment",
1471
+ "loading": "Caricamento deployment...",
1472
+ "empty": "Nessun deployment in questo spazio bot",
1473
+ "columns": {
1474
+ "botName": "Nome bot",
1475
+ "status": "Stato",
1476
+ "deployed": "Deployato",
1477
+ "by": "Da"
1478
+ },
1479
+ "history": {
1480
+ "title": "Cronologia deployment",
1481
+ "noHistory": "Nessuna cronologia di deployment ancora",
1482
+ "historyWillAppear": "La cronologia apparirà dopo il prossimo deployment",
1483
+ "event": "Evento",
1484
+ "status": "Stato",
1485
+ "date": "Data",
1486
+ "by": "Da",
1487
+ "config": "Configurazione"
1488
+ },
1489
+ "embed": {
1490
+ "title": "Script embed",
1491
+ "description": "Copia questo script per integrare il chatbot nel tuo sito web:"
1492
+ },
1493
+ "confirmDelete": "Sei sicuro di voler eliminare \"{name}\"? Questa operazione distruggerà il deployment e non può essere annullata."
1494
+ },
1495
+ "cloudDeploy": {
1496
+ "title": "Deploy su cloud",
1497
+ "backToDashboard": "← Torna alla dashboard",
1498
+ "loading": "Caricamento…",
1499
+ "botLabel": "Bot:",
1500
+ "protocolsLabel": "protocolli: {protocols}",
1501
+ "statusPills": {
1502
+ "pending": "In attesa",
1503
+ "deploying": "In deployment",
1504
+ "running": "In esecuzione",
1505
+ "paused": "In pausa",
1506
+ "failed": "Fallito",
1507
+ "destroyed": "Distrutto"
1508
+ },
1509
+ "artifact": {
1510
+ "title": "Ultimo artefatto",
1511
+ "status": "Stato",
1512
+ "configHash": "Hash configurazione",
1513
+ "lastBuiltHash": "Hash ultima build",
1514
+ "artifactPath": "Percorso artefatto",
1515
+ "notBuiltYet": "— (non ancora costruito)",
1516
+ "staleWarning": "Configurazione modificata dall'ultima build. Il cloud deploy farà automaticamente il rebuild, o puoi farlo ora.",
1517
+ "missingWarning": "Nessun artefatto ancora. Il cloud deploy lo costruirà automaticamente, o puoi costruirlo ora per l'anteprima.",
1518
+ "buildZip": "Build ZIP",
1519
+ "rebuildZip": "Rebuild ZIP",
1520
+ "downloadZip": "Scarica .zip"
1521
+ },
1522
+ "provider": {
1523
+ "title": "Provider",
1524
+ "fly": {
1525
+ "name": "Fly.io",
1526
+ "description": "Macchina single-region + volume persistente"
1527
+ }
1528
+ },
1529
+ "fly": {
1530
+ "title": "Opzioni Fly.io",
1531
+ "region": "Regione",
1532
+ "regionHint": "Codice regione Fly a 3 lettere (iad, sjc, lhr, nrt, ecc.)",
1533
+ "volumeSize": "Dimensione volume (GB)",
1534
+ "volumeHint": "Storage persistente per SQLite (1GB è sufficiente per la maggior parte dei bot)",
1535
+ "cpuCount": "Numero CPU",
1536
+ "cpuHint": "CPU condivise",
1537
+ "memory": "Memoria (MB)",
1538
+ "memoryHint": "1024 MB consigliati",
1539
+ "tokenNote": "Usa il tuo <mono>FLY_API_TOKEN</mono> dall'env del control plane. Il tuo account, il tuo conto.",
1540
+ "deploy": "Deploy",
1541
+ "redeploy": "Redeploy",
1542
+ "deploying": "Deployment…"
1543
+ },
1544
+ "status": {
1545
+ "title": "Stato",
1546
+ "provider": "Provider",
1547
+ "appName": "Nome app",
1548
+ "url": "URL",
1549
+ "region": "Regione",
1550
+ "lastDeployed": "Ultimo deploy",
1551
+ "errorPrefix": "errore: {error}",
1552
+ "destroy": "Distruggi"
1553
+ },
1554
+ "errors": {
1555
+ "deployFailed": "Deploy fallito ({status})",
1556
+ "destroyFailed": "Distruzione fallita ({status})",
1557
+ "buildFailed": "Build fallita ({status})"
1558
+ },
1559
+ "confirmDestroy": "Distruggere l'app cloud, la macchina e il volume? I dati delle conversazioni sul volume saranno eliminati definitivamente."
1560
+ },
1561
+ "analytics": {
1562
+ "title": "Analytics",
1563
+ "loading": "Caricamento analytics...",
1564
+ "loadingConversations": "Caricamento analytics conversazioni...",
1565
+ "analyzingQuestions": "Analisi domande utenti...",
1566
+ "failedToLoad": "Caricamento del deployment fallito",
1567
+ "failedToLoadAnalytics": "Caricamento dei dati analytics fallito",
1568
+ "chatbotMetrics": "Metriche chatbot",
1569
+ "conversationAnalytics": "Analytics conversazioni",
1570
+ "topQuestions": "Domande e argomenti principali degli utenti",
1571
+ "metrics": {
1572
+ "age": "Età",
1573
+ "uptime": "Uptime",
1574
+ "documents": "Documenti",
1575
+ "lastUpdated": "Ultimo aggiornamento",
1576
+ "totalConversations": "Conversazioni totali",
1577
+ "totalMessages": "Messaggi totali",
1578
+ "formStarts": "Avvii form",
1579
+ "formCompletes": "Completamenti form",
1580
+ "completionRate": "Tasso di completamento {rate}%",
1581
+ "avgMessagesPerConv": "Media messaggi/conv"
1582
+ },
1583
+ "badges": {
1584
+ "formCollection": "Raccolta form",
1585
+ "live": "Live"
1586
+ },
1587
+ "searchTerms": {
1588
+ "longPhrases": "Frasi lunghe",
1589
+ "phrases": "Frasi",
1590
+ "words": "Parole",
1591
+ "analyzed": "Analizzati {count} messaggi utente",
1592
+ "noData": "Nessun dato di conversazione disponibile ancora",
1593
+ "noDataHint": "I dati appariranno qui dopo che gli utenti interagiranno con il tuo chatbot"
1594
+ },
1595
+ "uptime": {
1596
+ "inProgress": "In corso...",
1597
+ "failed": "Fallito",
1598
+ "notAvailable": "N/D"
1599
+ }
1600
+ },
1601
+ "conversations": {
1602
+ "title": "Conversazioni",
1603
+ "totalConversations": "{count} conversazioni totali",
1604
+ "total": "{count} totali",
1605
+ "dashboardLink": "← Dashboard",
1606
+ "backToDashboard": "← Torna alla dashboard",
1607
+ "tabs": {
1608
+ "conversations": "Conversazioni",
1609
+ "storage": "Storage"
1610
+ },
1611
+ "unreachable": {
1612
+ "title": "Bot non raggiungibile",
1613
+ "message": "Il control plane non è riuscito a raggiungere questo bot. Potrebbe essere fermato, oppure l'URL o la chiave API potrebbero essere cambiati. Riconnettiti dalla dashboard per visualizzare le conversazioni.",
1614
+ "reconnect": "Riconnetti"
1615
+ },
1616
+ "search": {
1617
+ "dataSource": "Sorgente dati",
1618
+ "conversationId": "ID conversazione",
1619
+ "partialId": "ID parziale...",
1620
+ "partialIdShort": "id parziale",
1621
+ "from": "Da",
1622
+ "to": "A",
1623
+ "search": "Cerca",
1624
+ "searching": "Ricerca in corso...",
1625
+ "last24h": "Ultime 24h",
1626
+ "last7days": "Ultimi 7 giorni",
1627
+ "clear": "Cancella",
1628
+ "resultsFound": "{count} risultato trovato",
1629
+ "resultsFoundPlural": "{count} risultati trovati",
1630
+ "result": "{count} risultato",
1631
+ "results": "{count} risultati",
1632
+ "noMatch": "Nessuna conversazione corrisponde alla tua ricerca",
1633
+ "noMatchShort": "Nessuna conversazione corrispondente.",
1634
+ "searchToFind": "Cerca per trovare conversazioni",
1635
+ "searchByIdOrDate": "Cerca per ID o data per trovare conversazioni.",
1636
+ "useIdOrDate": "Usa ID conversazione, intervallo di date, o entrambi"
1637
+ },
1638
+ "timeAgo": {
1639
+ "days": "{count}g fa",
1640
+ "hours": "{count}h fa",
1641
+ "minutes": "{count}m fa"
1642
+ },
1643
+ "detail": {
1644
+ "started": "Iniziata:",
1645
+ "startedAt": "Iniziata {timestamp}",
1646
+ "turns": "{count} turni",
1647
+ "last": "Ultima:",
1648
+ "lastAt": "Ultima {timestamp}",
1649
+ "turn": "Turno {number}",
1650
+ "user": "Utente",
1651
+ "assistant": "Assistente",
1652
+ "ragContext": "Contesto RAG",
1653
+ "ragContextShort": "Contesto RAG",
1654
+ "verifyChain": "Verifica catena",
1655
+ "showMetadata": "Mostra sorgenti e metadati",
1656
+ "showMetadataShort": "Mostra metadati",
1657
+ "selectConversation": "Seleziona una conversazione per visualizzare i messaggi",
1658
+ "selectConversationShort": "Seleziona una conversazione per visualizzare i suoi turni.",
1659
+ "loadingMessages": "Caricamento messaggi...",
1660
+ "loading": "Caricamento…"
1661
+ },
1662
+ "storage": {
1663
+ "loading": "Caricamento informazioni storage...",
1664
+ "loadingShort": "Caricamento…",
1665
+ "volumeCapacity": "Capacità volume",
1666
+ "volumeCapacityShort": "Capacità volume",
1667
+ "used": "{used} usati di {total}",
1668
+ "usedOfTotal": "{used} di {total}",
1669
+ "available": "{amount} disponibili",
1670
+ "statsConversations": "Conversazioni",
1671
+ "statsTurns": "Turni totali",
1672
+ "statsTurnsShort": "Turni",
1673
+ "statsDbSize": "Dimensione database",
1674
+ "statsDbSizeShort": "Dimensione DB",
1675
+ "autoExtendPolicy": "Politica di auto-estensione",
1676
+ "autoExtendDescription": "Il volume si auto-estende al {threshold}% di capacità, aggiungendo {increment}GB per espansione, fino a un massimo di {limit}GB.",
1677
+ "exportTitle": "Esporta conversazioni",
1678
+ "exportTitleShort": "Esporta",
1679
+ "exportDescription": "Scarica tutte le conversazioni come file JSON.",
1680
+ "exportDescriptionShort": "Scarica tutte le conversazioni da questo bot come JSON.",
1681
+ "exportButton": "Esporta tutte le conversazioni (JSON)",
1682
+ "exportButtonShort": "Esporta JSON",
1683
+ "exporting": "Esportazione...",
1684
+ "refresh": "Aggiorna informazioni storage",
1685
+ "retry": "Riprova"
1686
+ },
1687
+ "loadMore": "Carica altro",
1688
+ "loadingMore": "Caricamento…",
1689
+ "errors": {
1690
+ "fetchConversations": "Recupero delle conversazioni fallito",
1691
+ "fetchDetails": "Recupero dei dettagli conversazione fallito",
1692
+ "fetchStorage": "Recupero delle informazioni storage fallito",
1693
+ "exportFailed": "Esportazione delle conversazioni fallita",
1694
+ "close": "Chiudi"
1695
+ }
1696
+ },
1697
+ "submissions": {
1698
+ "title": "Invii form",
1699
+ "description": "Visualizza gli invii del form raccolti da {botName}",
1700
+ "total": "({count} totali)",
1701
+ "dashboardLink": "← Dashboard",
1702
+ "backToDashboard": "← Torna alla dashboard",
1703
+ "unreachable": {
1704
+ "title": "Bot non raggiungibile",
1705
+ "message": "Il control plane non è riuscito a raggiungere questo bot. Potrebbe essere fermato, oppure l'URL o la chiave API potrebbero essere cambiati. Riconnettiti dalla dashboard per visualizzare gli invii.",
1706
+ "reconnect": "Riconnetti"
1707
+ },
1708
+ "search": {
1709
+ "last24h": "Ultime 24h",
1710
+ "last7days": "Ultimi 7 giorni",
1711
+ "last30days": "Ultimi 30 giorni",
1712
+ "from": "Da",
1713
+ "to": "A",
1714
+ "search": "Cerca",
1715
+ "searching": "Ricerca in corso...",
1716
+ "export": "Esporta CSV"
1717
+ },
1718
+ "list": {
1719
+ "title": "Invii",
1720
+ "shown": "({count} mostrati)",
1721
+ "loading": "Caricamento...",
1722
+ "noSubmissions": "Nessun invio trovato per questo periodo.",
1723
+ "searchToView": "Cerca per visualizzare gli invii.",
1724
+ "fields": "{count} campi"
1725
+ },
1726
+ "detail": {
1727
+ "title": "Dettagli invio",
1728
+ "conversationId": "ID conversazione:",
1729
+ "submitted": "Inviato:",
1730
+ "formData": "Dati form",
1731
+ "field": "Campo",
1732
+ "value": "Valore",
1733
+ "metadata": "Metadati",
1734
+ "selectSubmission": "Seleziona un invio per visualizzare i dettagli"
1735
+ }
1736
+ },
1737
+ "logs": {
1738
+ "title": "Log live",
1739
+ "refresh": "Aggiorna log",
1740
+ "refreshing": "Aggiornamento...",
1741
+ "loading": "Caricamento log...",
1742
+ "search": {
1743
+ "label": "Cerca log",
1744
+ "placeholder": "Cerca messaggi, livelli, istanze..."
1745
+ },
1746
+ "lineCount": {
1747
+ "label": "Righe da mostrare",
1748
+ "lines": "{count} righe"
1749
+ },
1750
+ "autoRefresh": {
1751
+ "label": "Auto-aggiornamento",
1752
+ "every10s": "Aggiorna ogni 10 secondi"
1753
+ },
1754
+ "noLogs": "Nessun log disponibile",
1755
+ "noMatch": "Nessun log corrisponde alla tua ricerca",
1756
+ "showing": "Mostrate {filtered} di {total} voci di log",
1757
+ "filteredBy": "(filtrato per \"{query}\")"
1758
+ },
1759
+ "accessLevels": {
1760
+ "owner": "proprietario",
1761
+ "admin": "admin",
1762
+ "write": "scrittura",
1763
+ "read": "lettura"
1764
+ },
1765
+ "errors": {
1766
+ "generic": "Si è verificato un errore. Riprova.",
1767
+ "failedToFetch": "Recupero dei dati fallito",
1768
+ "failedToLoad": "Caricamento fallito",
1769
+ "failedToSave": "Salvataggio fallito",
1770
+ "failedToDelete": "Eliminazione del deployment fallita",
1771
+ "failedToAssign": "Assegnazione dello spazio bot fallita",
1772
+ "notFound": "Non trovato",
1773
+ "error": "Errore"
1774
+ },
1775
+ "deleteAccount": {
1776
+ "title": "Elimina account",
1777
+ "loadingInfo": "Caricamento informazioni account...",
1778
+ "permanentWarning": "Questa azione è permanente e non può essere annullata.",
1779
+ "willBeDeleted": "Sarà eliminato definitivamente:",
1780
+ "deployments": "Deployment (Bot)",
1781
+ "documents": "Documenti",
1782
+ "apiKeys": "Chiavi API",
1783
+ "botSpaces": "Spazi bot",
1784
+ "contributorsToDelete": "Account contributor da eliminare",
1785
+ "contributorsNote": "Questi contributor sono solo membri degli spazi bot della tua organizzazione.",
1786
+ "organization": "Organizzazione",
1787
+ "adminDeleteNote": "Come admin, eliminare il tuo account eliminerà anche tutti i dati dell'organizzazione e gli account contributor che sono affiliati solo alla tua organizzazione.",
1788
+ "userDeleteNote": "Le tue appartenenze agli spazi bot saranno rimosse, ma gli spazi bot e gli altri utenti non saranno interessati.",
1789
+ "continue": "Continua",
1790
+ "confirmPrompt": "Per confermare l'eliminazione, digita il tuo indirizzo email:",
1791
+ "confirmEmail": "Conferma la tua email",
1792
+ "emailPlaceholder": "Digita la tua email per confermare",
1793
+ "deleting": "Eliminazione...",
1794
+ "deleteMyAccount": "Elimina il mio account",
1795
+ "errors": {
1796
+ "loadFailed": "Caricamento delle informazioni account fallito",
1797
+ "loadError": "Errore nel caricamento delle informazioni account",
1798
+ "emailMismatch": "Digita il tuo indirizzo email esattamente per confermare",
1799
+ "deleteFailed": "Eliminazione dell'account fallita",
1800
+ "deleteError": "Errore nell'eliminazione dell'account"
1801
+ }
1802
+ },
1803
+ "botSpaceInvite": {
1804
+ "title": "Invita a {spaceName}",
1805
+ "description": "Invia un invito per collaborare in questo spazio bot. Riceverà un'email con un link per unirsi.",
1806
+ "emailLabel": "Indirizzo email",
1807
+ "emailPlaceholder": "collega@azienda.com",
1808
+ "accessLabel": "Livello di accesso",
1809
+ "accessRead": "Lettura - Può visualizzare i bot in questo spazio",
1810
+ "accessWrite": "Scrittura - Può creare e modificare bot",
1811
+ "accessAdmin": "Admin - Accesso completo incluso l'invito di altri",
1812
+ "accessNote": "Gli utenti invitati si uniranno come contributor della tua organizzazione.",
1813
+ "sending": "Invio in corso...",
1814
+ "sendInvitation": "Invia invito",
1815
+ "errors": {
1816
+ "sendFailed": "Invio dell'invito fallito"
1817
+ }
1818
+ },
1819
+ "auditLogTable": {
1820
+ "loading": "Caricamento audit log...",
1821
+ "noLogs": "Nessun audit log trovato",
1822
+ "noLogsHint": "I log appariranno qui mentre le azioni vengono eseguite",
1823
+ "headers": {
1824
+ "time": "Ora",
1825
+ "event": "Evento",
1826
+ "actor": "Attore",
1827
+ "resource": "Risorsa",
1828
+ "outcome": "Risultato"
1829
+ },
1830
+ "events": {
1831
+ "authLoginSuccess": "Login",
1832
+ "authLoginFailure": "Login fallito",
1833
+ "authLogout": "Logout",
1834
+ "authSignup": "Registrazione",
1835
+ "deploymentCreate": "Deploy creato",
1836
+ "deploymentRedeploy": "Redeployato",
1837
+ "deploymentDelete": "Deploy eliminato",
1838
+ "botSpaceCreate": "Spazio creato",
1839
+ "botSpaceDelete": "Spazio eliminato",
1840
+ "botSpaceMemberAdd": "Membro aggiunto",
1841
+ "botSpaceMemberRemove": "Membro rimosso",
1842
+ "documentUpload": "Doc caricato",
1843
+ "documentDelete": "Doc eliminato",
1844
+ "apiKeyCreate": "Chiave API creata",
1845
+ "apiKeyDelete": "Chiave API eliminata",
1846
+ "userInvite": "Utente invitato",
1847
+ "userInviteAccept": "Invito accettato",
1848
+ "auditWebhookUpdate": "Webhook aggiornato",
1849
+ "auditLogsExport": "Log esportati"
1850
+ },
1851
+ "outcomes": {
1852
+ "success": "successo",
1853
+ "failure": "fallimento",
1854
+ "denied": "negato"
1855
+ },
1856
+ "details": {
1857
+ "timestamp": "Timestamp completo",
1858
+ "requestId": "ID richiesta",
1859
+ "ipAddress": "Indirizzo IP",
1860
+ "userAgent": "User Agent",
1861
+ "resource": "Risorsa",
1862
+ "metadata": "Metadati"
1863
+ },
1864
+ "showing": "Mostrati {shown} di {total} log",
1865
+ "loadMore": "Carica altri"
1866
+ },
1867
+ "auditLogFilters": {
1868
+ "eventTypes": {
1869
+ "allEvents": "Tutti gli eventi",
1870
+ "authentication": "Autenticazione",
1871
+ "deployments": "Deployment",
1872
+ "botSpaces": "Spazi bot",
1873
+ "documents": "Documenti",
1874
+ "apiKeys": "Chiavi API",
1875
+ "usersInvites": "Utenti e inviti",
1876
+ "conversations": "Conversazioni",
1877
+ "settings": "Impostazioni",
1878
+ "auditSystem": "Sistema di audit"
1879
+ },
1880
+ "outcomes": {
1881
+ "all": "Tutti",
1882
+ "success": "Successo",
1883
+ "failure": "Fallimento",
1884
+ "denied": "Negato"
1885
+ },
1886
+ "dateRange": "Intervallo date",
1887
+ "from": "Da",
1888
+ "to": "A",
1889
+ "clear": "Cancella"
1890
+ },
1891
+ "data": {
1892
+ "navLabel": "Dati",
1893
+ "title": "Dati fleet",
1894
+ "subtitle": "Sfoglia e aggrega l'attività di conversazione su ogni bot connesso. Il contenuto delle conversazioni resta sul bot — vengono uniti in-process solo i conteggi.",
1895
+ "loading": "Caricamento…",
1896
+ "tabs": {
1897
+ "explorer": "Esploratore",
1898
+ "sql": "SQL",
1899
+ "analytics": "Analytics"
1900
+ },
1901
+ "fleet": {
1902
+ "unreachableBanner": "{unreachable} di {total} bot non raggiungibili — i risultati potrebbero essere parziali."
1903
+ },
1904
+ "explorer": {
1905
+ "filters": {
1906
+ "conversationId": "L'ID conversazione contiene",
1907
+ "startDate": "Iniziata dopo",
1908
+ "endDate": "Iniziata prima"
1909
+ },
1910
+ "search": "Cerca",
1911
+ "searching": "Ricerca in corso…",
1912
+ "clear": "Cancella",
1913
+ "hint": "Inserisci un frammento di ID conversazione o un intervallo di date per estendere la ricerca a ogni bot connesso.",
1914
+ "pagination": {
1915
+ "showing": "Mostrate {start} – {end} di {total}",
1916
+ "previous": "Precedente",
1917
+ "next": "Successiva",
1918
+ "truncatedNotice": "Risultati limitati alle prime 500 conversazioni del fleet. Restringi l'intervallo di date per risultati più vecchi."
1919
+ },
1920
+ "noConversations": "Nessuna conversazione corrisponde al filtro."
1921
+ },
1922
+ "sql": {
1923
+ "placeholder": "SELECT bot_name, conversations_7d FROM bot_health ORDER BY conversations_7d DESC",
1924
+ "runQuery": "Esegui query",
1925
+ "running": "Esecuzione…",
1926
+ "exportCsv": "Esporta CSV",
1927
+ "exportJson": "Esporta JSON",
1928
+ "keyboardHint": "Premi Cmd/Ctrl + Invio per eseguire",
1929
+ "rowCount": "{count} righe",
1930
+ "truncated": "(troncato a 10.000)",
1931
+ "noResults": "Nessuna riga",
1932
+ "help": "Query di partenza",
1933
+ "starterQueries": {
1934
+ "title": "Query di partenza",
1935
+ "hint": "Ogni query legge dalle tabelle di rollup in memoria assemblate per ogni richiesta dagli endpoint analytics di ciascun bot. Clicca per caricare.",
1936
+ "dailyStats": "Statistiche conversazione giornaliere del fleet",
1937
+ "botHealth": "Salute bot (ultimi 7 giorni)",
1938
+ "protocolDistribution": "Distribuzione di utilizzo dei protocolli",
1939
+ "mostActiveBots": "Bot più attivi questa settimana",
1940
+ "staleBots": "Bot non visti nelle ultime 24h",
1941
+ "dailyByBot": "Attività giornaliera unita ai nomi dei bot"
1942
+ }
1943
+ },
1944
+ "schema": {
1945
+ "availableTables": "Riferimento schema",
1946
+ "clickToShow": "(clicca per mostrare)",
1947
+ "clickToHide": "(clicca per nascondere)",
1948
+ "note": "Nota:",
1949
+ "scopeNote": "Queste tabelle sono costruite nella memoria di processo a ogni query — una riga per bot per le tabelle di rollup, popolate chiamando gli endpoint analytics di ciascun bot connesso. Il contenuto grezzo dei turni non è esposto; per quello, usa la scheda Esploratore per analizzare una singola conversazione."
1950
+ },
1951
+ "analytics": {
1952
+ "loading": "Caricamento rollup fleet…",
1953
+ "dateRange": {
1954
+ "last7days": "Ultimi 7 giorni",
1955
+ "last14days": "Ultimi 14 giorni",
1956
+ "last30days": "Ultimi 30 giorni",
1957
+ "last90days": "Ultimi 90 giorni"
1958
+ },
1959
+ "summary": {
1960
+ "totalConversations": "Conversazioni",
1961
+ "totalTurns": "Turni",
1962
+ "avgTurnsPerConversation": "Media turni/conv",
1963
+ "activeBots": "Bot raggiungibili"
1964
+ },
1965
+ "charts": {
1966
+ "dailyConversations": "Volume turni giornaliero",
1967
+ "topBotsByActivity": "Top bot per volume di turni",
1968
+ "activityHeatmap": "Heatmap attività (ultimi 7 giorni)"
1969
+ },
1970
+ "noData": "Nessuna attività in questo periodo.",
1971
+ "noActivityData": "Nessuna attività negli ultimi 7 giorni.",
1972
+ "convs": "conv",
1973
+ "days": {
1974
+ "sun": "Dom",
1975
+ "mon": "Lun",
1976
+ "tue": "Mar",
1977
+ "wed": "Mer",
1978
+ "thu": "Gio",
1979
+ "fri": "Ven",
1980
+ "sat": "Sab"
1981
+ }
1982
+ },
1983
+ "table": {
1984
+ "headers": {
1985
+ "bot": "Bot",
1986
+ "started": "Iniziata",
1987
+ "duration": "Durata",
1988
+ "turns": "Turni",
1989
+ "conversationId": "ID conversazione"
1990
+ }
1991
+ }
1992
+ },
1993
+ "documentUploader": {
1994
+ "title": "Carica documenti",
1995
+ "description": "Carica documenti che il tuo chatbot userà per RAG (Retrieval-Augmented Generation)",
1996
+ "uploading": "Caricamento...",
1997
+ "chooseFiles": "Scegli file",
1998
+ "dropFilesHere": "Trascina i file qui",
1999
+ "dragAndDropHint": "oppure trascina e rilascia i file qui",
2000
+ "fileTypes": "PDF, TXT, MD, DOC, DOCX",
2001
+ "uploadedDocuments": "Documenti caricati ({count})",
2002
+ "noDocumentsYet": "Nessun documento caricato ancora",
2003
+ "noDocumentsHint": "Clicca \"Scegli file\" per iniziare",
2004
+ "skippedFiles": "Alcuni file sono stati saltati. Solo file PDF, TXT, MD, DOC, DOCX sono supportati.",
2005
+ "deleteConfirm": "Sei sicuro di voler eliminare questo file?",
2006
+ "uploadFailed": "Caricamento fallito",
2007
+ "uploadFailedFallback": "Caricamento dei file fallito",
2008
+ "deleteFailed": "Eliminazione fallita",
2009
+ "deleteFailedFallback": "Eliminazione del file fallita"
2010
+ },
2011
+ "chatBuilder": {
2012
+ "title": "AI Bot Builder",
2013
+ "subtitle": "Descrivi il bot che vuoi costruire e lo creerò per te",
2014
+ "loading": "Caricamento AI Builder...",
2015
+ "newChat": "Nuova chat",
2016
+ "recentChats": "Chat recenti",
2017
+ "noPreviousChats": "Nessuna chat precedente",
2018
+ "botPreview": "Anteprima bot",
2019
+ "viewDeployedBot": "Visualizza bot deployato",
2020
+ "selectWorkspace": "Seleziona area di lavoro",
2021
+ "selectWorkspacePrompt": "Seleziona un'area di lavoro per iniziare a costruire",
2022
+ "noWorkspaces": "Nessuna area di lavoro disponibile",
2023
+ "createWorkspaceFirst": "Creane prima una",
2024
+ "backToDashboard": "Torna alla dashboard",
2025
+ "welcome": {
2026
+ "title": "Costruisci un bot con l'AI",
2027
+ "description": "Descrivi il bot che vuoi creare, carica documenti rilevanti, e ti aiuterò a configurarlo e deployarlo. Nessuna codifica richiesta.",
2028
+ "quickPrompts": {
2029
+ "customerSupport": {
2030
+ "title": "Bot di supporto clienti",
2031
+ "description": "Rispondi a domande sui prodotti",
2032
+ "prompt": "Ho bisogno di un bot di supporto clienti che possa rispondere a domande sul nostro prodotto"
2033
+ },
2034
+ "leadCapture": {
2035
+ "title": "Bot di acquisizione lead",
2036
+ "description": "Raccogli informazioni sui visitatori",
2037
+ "prompt": "Crea un bot di acquisizione lead che raccolga nome, email e info aziendali"
2038
+ },
2039
+ "faqAssistant": {
2040
+ "title": "Assistente FAQ",
2041
+ "description": "Rispondi a domande comuni",
2042
+ "prompt": "Aiutami a costruire un bot FAQ usando la nostra documentazione"
2043
+ },
2044
+ "onboarding": {
2045
+ "title": "Bot di onboarding",
2046
+ "description": "Guida i nuovi utenti",
2047
+ "prompt": "Voglio creare un bot che aiuti a fare l'onboarding dei nuovi clienti"
2048
+ }
2049
+ }
2050
+ },
2051
+ "input": {
2052
+ "placeholder": "Descrivi il bot che vuoi costruire...",
2053
+ "defaultPlaceholder": "Scrivi un messaggio...",
2054
+ "dropFilesHere": "Trascina i file qui...",
2055
+ "dropToAttach": "Trascina i file per allegarli al tuo messaggio",
2056
+ "hint": "Premi Invio per inviare, Shift+Invio per andare a capo. Trascina i file o clicca sulla clip per allegare.",
2057
+ "hintShort": "Premi Invio per inviare, Shift+Invio per andare a capo",
2058
+ "hintWithAttach": "Trascina e rilascia file o clicca su allega. Premi Invio per inviare.",
2059
+ "attachFiles": "Allega file",
2060
+ "attachDocuments": "Allega documenti"
2061
+ },
2062
+ "tools": {
2063
+ "toolsExecuted": "{count} strumento eseguito",
2064
+ "toolsExecutedPlural": "{count} strumenti eseguiti",
2065
+ "uploadDocument": "Carica documento",
2066
+ "generateForm": "Genera form",
2067
+ "deployBot": "Deploy bot",
2068
+ "listDeployments": "Elenca deployment",
2069
+ "checkDeploymentStatus": "Controlla stato deployment",
2070
+ "destroyDeployment": "Distruggi deployment",
2071
+ "getAnalytics": "Ottieni analytics",
2072
+ "getFormSubmissions": "Ottieni invii form",
2073
+ "listWorkspaces": "Elenca aree di lavoro",
2074
+ "listDocuments": "Elenca documenti",
2075
+ "listApiKeys": "Elenca chiavi API"
2076
+ },
2077
+ "documentPicker": {
2078
+ "title": "Seleziona documenti",
2079
+ "noDocuments": "Nessun documento in quest'area di lavoro",
2080
+ "uploadFirst": "Carica prima i documenti per usarli per il tuo bot",
2081
+ "selected": "{count} documento selezionato",
2082
+ "selectedPlural": "{count} documenti selezionati",
2083
+ "useSelected": "Usa selezionati"
2084
+ },
2085
+ "errors": {
2086
+ "failedToSend": "Invio del messaggio fallito",
2087
+ "failedToLoadSession": "Caricamento della sessione fallito",
2088
+ "failedToLoadDocuments": "Caricamento dei documenti fallito"
2089
+ },
2090
+ "invertedPanel": {
2091
+ "createABot": "Crea un bot",
2092
+ "editBot": "Modifica {name}",
2093
+ "fallbackBotName": "Bot",
2094
+ "private": "Privato",
2095
+ "createTitle": "Che tipo di bot posso aiutarti a costruire?",
2096
+ "createDescription": "Puoi anche allegare documenti per dargli conoscenza. Carica un file, o chiedi di fare riferimento ai documenti nello spazio bot.",
2097
+ "buildWithWizard": "Costruisci con il wizard (configurazione passo dopo passo)",
2098
+ "editTitle": "Modifica {name}",
2099
+ "editFallbackName": "il tuo bot",
2100
+ "editDescription": "Dimmi cosa vorresti cambiare. Caricherò la tua configurazione attuale e ti aiuterò ad aggiornarla.",
2101
+ "editExamples": "Esempi: \"Cambia il saluto\", \"Aggiungi un nuovo campo del form\", \"Aggiorna il nome del bot\"",
2102
+ "errorPrefix": "Errore:",
2103
+ "inputPlaceholder": "Descrivi cosa dovrebbe fare il tuo bot...",
2104
+ "adjustMessage": "Vorrei aggiustare la configurazione"
2105
+ },
2106
+ "status": {
2107
+ "ready": "Pronto",
2108
+ "processing": "Elaborazione",
2109
+ "awaitingConfirmation": "In attesa di conferma",
2110
+ "deploying": "In deployment",
2111
+ "deployed": "Deployato",
2112
+ "editing": "In modifica"
2113
+ },
2114
+ "success": {
2115
+ "botBuilt": "Bot costruito!",
2116
+ "botSaved": "Bot salvato",
2117
+ "botBuiltMessage": "Il tuo bot <strong>{name}</strong> è costruito e pronto per il download.",
2118
+ "botSavedMessage": "Il tuo bot <strong>{name}</strong> è salvato. Costruiscilo dal tuo spazio bot quando sei pronto.",
2119
+ "liveUrl": "URL live",
2120
+ "embedCode": "Codice embed",
2121
+ "downloadArtifact": "Scarica artefatto",
2122
+ "downloadWithDocs": "Scarica con documenti",
2123
+ "openBot": "Apri bot",
2124
+ "viewInBotSpace": "Visualizza nello spazio bot"
2125
+ }
2126
+ },
2127
+ "login": {
2128
+ "subtitle": "Accedi per continuare",
2129
+ "username": "Nome utente",
2130
+ "password": "Password",
2131
+ "signIn": "Accedi",
2132
+ "signingIn": "Accesso in corso…",
2133
+ "signOut": "Esci",
2134
+ "invalid": "Nome utente o password non validi"
2135
+ }
2136
+ }