# Senthia Video Intelligence — PHP + JavaScript + Bootstrap

Aplicație fără Laravel, fără Composer, fără Node. Rulează direct pe Apache/cPanel/VPS cu PHP 8.1+.

## 1. Upload pe server

Urcă toate fișierele în:

```bash
/home/senthia/video.senthia.app
```

Document Root pentru subdomeniu:

```txt
/home/senthia/video.senthia.app
```

Nu există folder `public`. `index.php` este direct în root-ul aplicației.

## 2. Permisiuni

```bash
cd /home/senthia/video.senthia.app
chmod -R 775 data storage
```

## 3. Configurare

```bash
cp config/config.example.php config/config.php
```

Editează:

```bash
nano config/config.php
```

Setări importante:

```php
'google_project_id' => 'PROJECT_ID_GOOGLE',
'google_bucket' => 'BUCKET_NAME',
'google_service_account_json' => __DIR__ . '/../storage/google-service-account.json',
'openai_api_key' => 'sk-...', // opțional
```

## 4. Google service account

Pune cheia JSON aici:

```txt
/home/senthia/video.senthia.app/storage/google-service-account.json
```

Permisiuni recomandate pe service account:

- Storage Admin
- Video Intelligence Admin

## 5. Activează API-urile Google

În Google Cloud Console activează:

- Cloud Storage API
- Cloud Video Intelligence API

Creează bucket, de exemplu:

```txt
senthia-video-prod
```

## 6. PHP.ini pentru video mare

Pentru test, setează ceva de genul:

```ini
upload_max_filesize = 1024M
post_max_size = 1024M
max_execution_time = 3600
memory_limit = 1024M
```

În cPanel se face din MultiPHP INI Editor. Pe VPS poate fi în `/etc/php/8.1/apache2/php.ini`.

## 7. Test rapid

Accesează:

```txt
https://video.senthia.app
```

Încarcă un video scurt, apoi apasă:

```txt
Pornește Google AI
```

Apoi, pe pagina raportului, apasă periodic:

```txt
Verifică status
```

## 8. Cum funcționează

1. PHP primește video.
2. PHP îl salvează în `data/uploads`.
3. PHP obține Google OAuth token din service account JSON.
4. PHP urcă video în Google Cloud Storage.
5. PHP pornește Google Video Intelligence.
6. Google procesează async.
7. PHP verifică operațiunea.
8. Când este gata, PHP calculează metrici și generează raport Senthia.
9. Dacă există `openai_api_key`, raportul este generat cu OpenAI. Dacă nu, se folosește raport fallback local.

## 9. Troubleshooting

### Pagina nu merge

Verifică:

```bash
ls -la /home/senthia/video.senthia.app/index.php
```

Document root trebuie să fie aplicația, nu `/public`.

### Upload eșuat

Mărește `upload_max_filesize` și `post_max_size`.

### Google token error

Verifică:

- cheia JSON există;
- calea din `config/config.php` este corectă;
- service account are rolurile potrivite;
- billing este activ.

### Google Video Intelligence error

Verifică dacă API-ul este activat și video-ul a fost uploadat în bucket.

## 10. Limitări MVP

Această versiune folosește Google Video Intelligence generic. Pentru produs comercial avansat, următorul pas este:

- definire zone restaurant;
- timeline per masă;
- extragere cadre-cheie;
- analiză OpenAI Vision pe momente critice;
- heatmap;
- diferențiere ospătar/client prin reguli sau model custom.
