Skip to main content

Configuration de la passerelle

# MyFab OPC UA Gateway  
Passerelle de collecte de données OPC UA pour intégration dans OpenProd.

---

## 🔧 Prérequis

- Python 3 installé sur la machine (testé avec Python 3.6+, Ubuntu 18.04 minimum)
- PostgreSQL (la base `opcua` sera créée automatiquement si absente)
- Le service Flask nécessite les librairies suivantes (installées via `requirements.txt`) à l'aide de la commande :
```bash
pip install -r ~/myfab/myfab_iot/myfab_client_opc/requirements.txt
```

  - `flask`
  - `pytz`
  - `psycopg2`
  - `opcua`

---

## 📦 Installation du service

### 1. Copier le fichier de service systemd  
```bash
sudo cp ~/myfab/myfab_iot/myfab_client_opc/opcua-gateway.service /etc/systemd/system/
```

### 2. Recharger les services systemd  
```bash
sudo systemctl daemon-reload
```

### 3. Activer le service au démarrage de la machine  
```bash
sudo systemctl enable opcua-gateway
```

### 4. Démarrer le service manuellement  
```bash
sudo systemctl start opcua-gateway
```

### 5. Vérifier que tout fonctionne  
```bash
sudo systemctl status opcua-gateway
```

---

## 🧪 Vérification du fonctionnement

- Lancer un navigateur ou un outil type Postman et appeler :
  ```
  http://localhost:5000/get_servers
  ```

- Si tout est OK, le service répond avec les serveurs enregistrés (ou une liste vide si aucun).

---

## 🛑 Pour arrêter le service  
```bash
sudo systemctl stop opcua-gateway
```

---

## 🚀 Pour redémarrer le service  
```bash
sudo systemctl restart opcua-gateway
```
## Erreurs récurrentes :
Un problème de droits peut empêcher le démarrage du service vérifier que vous êtes propriétaire du chemin ~/ et des fichiers et dossiers sous ce chemin.
Exemple de résolution :
```bash
openprod@user:/etc/systemd/system $ sudo chown -R openprod:openprod /home/openprod/
```