Import initial din SVN ROAAUTO/Trunk @HEAD
This commit is contained in:
128
COMUN/utile/chatbot/README.md
Normal file
128
COMUN/utile/chatbot/README.md
Normal file
@@ -0,0 +1,128 @@
|
||||
# Chatbot Maria - Romfast Support
|
||||
|
||||
Un chatbot de suport tehnic pentru sistemul ROA, construit cu Flowise embed.
|
||||
|
||||
## Funcționalități
|
||||
|
||||
- **Chatbot integrat**: Interface de chat folosind Flowise embed library
|
||||
- **Suport pentru URL parametri**: Permite trimiterea directă a mesajelor prin URL
|
||||
- **Două moduri de afișare**:
|
||||
- Chat widget standard cu prompt-uri predefinite
|
||||
- Modal de răspuns direct pentru mesaje din URL
|
||||
- **Gestionare robustă a caracterelor speciale**: Suport pentru URL-uri cu secvențe de encoding problematice
|
||||
|
||||
## Testare
|
||||
|
||||
### 1. Test de bază
|
||||
Deschide fișierul direct în browser:
|
||||
```
|
||||
chatbot_maria.html
|
||||
```
|
||||
|
||||
### 2. Test cu mesaj din URL
|
||||
Testează funcția de mesaj direct prin URL:
|
||||
```
|
||||
chatbot_maria.html?message=Cum%20se%20actualizeaza%20tokenul%20eFactura?
|
||||
```
|
||||
|
||||
### 3. Test cu caractere speciale
|
||||
Testează cu mesaje care conțin caractere speciale (cazul problematic):
|
||||
```
|
||||
chatbot_maria.html?message=F:%20Header%20(1)%20sectiune%20Company%20(1)%20sectiune%20BankAccount%20(1)%20eroare%20structura:%20grupul%20%27%BankAccount_choice0%27%20ar%20fi%20trebuit%20sa%20apara%20de%20minimum%201%20ori,%20dar%20apare%20efectiv%20de%200%20ori
|
||||
```
|
||||
|
||||
### 4. Debugging în Browser
|
||||
|
||||
Pentru a vedea ce se întâmplă în timpul testării:
|
||||
|
||||
1. **Deschide Developer Tools**: F12 în browser
|
||||
2. **Mergi la tab-ul Console**
|
||||
3. **Încarcă pagina cu parametrul URL**
|
||||
4. **Monitorizează log-urile**:
|
||||
- `"Parametru decodat cu URLSearchParams:"` - prima încercare
|
||||
- `"Valoare brută din URL (fallback):"` - dacă URLSearchParams nu funcționează
|
||||
- `"Parametru decodat cu metoda sigură:"` - rezultatul final
|
||||
- `"Se trimite mesajul direct prin API:"` - confirmă că mesajul e trimis
|
||||
- `"Status răspuns:"` - codul de răspuns al API-ului
|
||||
- `"Răspuns primit de la API:"` - răspunsul de la chatbot
|
||||
|
||||
### 5. Verificare Funcționalitate
|
||||
|
||||
**Testul a reușit dacă**:
|
||||
- ✅ Nu vezi erori "URI malformed" în console
|
||||
- ✅ Vezi mesajul decodat în console
|
||||
- ✅ Vezi "Se trimite mesajul direct prin API"
|
||||
- ✅ Vezi răspunsul API în modal
|
||||
|
||||
**Semnale de probleme**:
|
||||
- ❌ "Eroare la decodarea parametrului URL"
|
||||
- ❌ "URI malformed"
|
||||
- ❌ Pagina nu afișează nimic
|
||||
- ❌ Request-ul API eșuează cu timeout
|
||||
|
||||
### 6. Testare Offline
|
||||
|
||||
Poți testa funcțiile de decodificare fără server:
|
||||
|
||||
1. **Deschide Developer Tools** (F12)
|
||||
2. **Mergi la tab-ul Console**
|
||||
3. **Testează manual funcțiile**:
|
||||
|
||||
```javascript
|
||||
// Test URLSearchParams
|
||||
const urlParams = new URLSearchParams("?message=test%20cu%20caractere%20speciale");
|
||||
console.log(urlParams.get('message'));
|
||||
|
||||
// Test cu URL problematic
|
||||
const problematicUrl = "?message=F:%20Header%20(1)%20sectiune%20Company%20(1)%20sectiune%20BankAccount%20(1)%20eroare%20structura:%20grupul%20%27%BankAccount_choice0%27%20ar%20fi%20trebuit%20sa%20apara%20de%20minimum%201%20ori,%20dar%20apare%20efectiv%20de%200%20ori";
|
||||
const testParams = new URLSearchParams(problematicUrl);
|
||||
console.log(testParams.get('message'));
|
||||
```
|
||||
|
||||
## Configurare API
|
||||
|
||||
Chatbot-ul se conectează la:
|
||||
- **API Host**: `https://mutual-special-koala.ngrok-free.app`
|
||||
- **Chatflow ID**: `d4911620-07fe-41f8-adb4-f2f52d6ec766`
|
||||
|
||||
Pentru modificare, editează valorile în secțiunea JavaScript:
|
||||
```javascript
|
||||
const apiHost = "https://mutual-special-koala.ngrok-free.app";
|
||||
const chatflowId = "d4911620-07fe-41f8-adb4-f2f52d6ec766";
|
||||
```
|
||||
|
||||
## Troubleshooting
|
||||
|
||||
### Problema: "URI malformed"
|
||||
**Soluție**: Implementarea actuală gestionează automat această problemă prin decodificare sigură chunk-by-chunk.
|
||||
|
||||
### Problema: API nu răspunde
|
||||
**Verificări**:
|
||||
1. API host-ul este accesibil
|
||||
2. Chatflow ID-ul este corect
|
||||
3. Conexiunea la internet funcționează
|
||||
4. Nu sunt blocate request-urile CORS
|
||||
|
||||
### Problema: Pagina nu se încarcă
|
||||
**Verificări**:
|
||||
1. Fișierul HTML este valid
|
||||
2. CDN-ul Flowise este accesibil: `https://cdn.jsdelivr.net/npm/flowise-embed/dist/web.js`
|
||||
3. Nu sunt erori JavaScript în console
|
||||
|
||||
### Problema: Mesajul nu se trimite
|
||||
**Verificări**:
|
||||
1. Parametrul URL este corect
|
||||
2. Mesajul nu este gol după decodificare
|
||||
3. API-ul acceptă request-ul
|
||||
4. Nu sunt erori de timeout (30 secunde)
|
||||
|
||||
## Prompt-uri Predefinite
|
||||
|
||||
Chatbot-ul afișează următoarele prompt-uri standard când nu este specificat un mesaj în URL:
|
||||
|
||||
- Cum se actualizeaza tokenul eFactura?
|
||||
- Cand se completeaza codul de plata pentru declaratia SAFT?
|
||||
- Care sunt pasii pentru emiterea unei facturi service auto?
|
||||
- Cum se valideaza o comanda service auto?
|
||||
- Cum se deschide o comanda service auto?
|
||||
- Cum se modifica datele initiale ale unei comenzi service auto?
|
||||
Reference in New Issue
Block a user