Realtime & Soketi
Ρυθμίστε real-time updates, private channels, tenant authorization και reconnect behavior χωρίς έκθεση secrets στο frontend.
Πώς λειτουργεί
Browser connection
Ο browser συνδέεται με public app key, host και TLS settings.
Private channel authorization
Το WordPress ελέγχει user, tenant και channel πριν υπογράψει subscription.
Event publishing
Μόνο server-side code χρησιμοποιεί secret για publish.
Reconnect και offline state
Η εφαρμογή χειρίζεται προσωρινή αποσύνδεση χωρίς απώλεια βασικής λειτουργίας.
Ρύθμιση βήμα-βήμα
Δημιουργήστε app credentials
App ID, key, secret και cluster/host στο Soketi environment.
Ρυθμίστε host, port και TLS
Σε production χρησιμοποιήστε ασφαλή WebSocket σύνδεση.
Αποθηκεύστε το secret server-side
Το secret δεν εμφανίζεται σε JavaScript ή HTML source.
Υλοποιήστε private auth endpoint
Ελέγξτε nonce/session, role και tenant πριν την υπογραφή.
Δοκιμάστε reconnect
Offline/online transition, expired session και πολλαπλά tabs.
Tenant isolation στα channels
- Τα channel names περιλαμβάνουν μη προβλέψιμο ή ελεγχόμενο tenant context.
- Ο client δεν αποφασίζει μόνος του σε ποιο tenant ανήκει.
- Το auth endpoint επιβεβαιώνει membership και capability.
- Το server secret δεν εκτίθεται ποτέ στο frontend.
- Τα payloads περιέχουν μόνο όσα απαιτούνται για UI update.
Στείλτε event identifiers ή ελάχιστα UI-safe δεδομένα και ανακτήστε τα υπόλοιπα μέσω εξουσιοδοτημένου API.
Σενάρια δοκιμών
| Σενάριο | Αναμενόμενο αποτέλεσμα |
|---|---|
| Authorized doctor | Συνδέεται μόνο στα επιτρεπτά private channels. |
| Secretary | Λαμβάνει μόνο λειτουργικά events. |
| Wrong tenant | Authorization denied. |
| Expired session | Reconnect αποτυγχάνει μέχρι νέα authentication. |
| Server restart | Ο client επανασυνδέεται χωρίς duplicate listeners. |
Συχνές ερωτήσεις
Γιατί ο client συνδέεται αλλά δεν λαμβάνει events;
Ελέγξτε channel name, auth response, publish credentials, event name και frontend listener.
Μπορεί να λειτουργεί χωρίς realtime;
Η βασική εφαρμογή πρέπει να διαθέτει fallback μέσω refresh ή polling όπου είναι πρακτικά αναγκαίο.
Συνεχίστε με σχετικές ρυθμίσεις
Επιστροφή στην τεκμηρίωση
Συνεχίστε τη ρύθμιση του Nutrition Hub με τη σωστή σειρά.