Αυτοί οι οδηγοί αντιστοιχίζουν τις έννοιες ενός κλάδου στα αντικείμενα που έχει σήμερα η πλατφόρμα (bouquets, lines, πακέτα, λογαριασμοί διανομέων, κόμβοι, το API). Είναι εννοιολογικές αντιστοιχίσεις, όχι λειτουργίες ειδικές για κλάδο, και ο λογαριασμός διανομέα είναι ανατεθειμένος λογαριασμός, όχι απομονωμένος tenant.
Εννοιολογική αντιστοίχιση
Τίποτα στον πίνακα δεν λέγεται ομάδα ή μέλος. Ο πίνακας δείχνει ποιο αντικείμενο παίζει ποιον ρόλο· τα κεφάλαια παρακάτω τα στήνουν με αυτή τη σειρά.
| Στον κλάδο σας | Στην πλατφόρμα | Πού στον πίνακα |
|---|---|---|
| Τροφοδοσία αγώνα ή προπόνησης | Ζωντανό κανάλι: ένα stream με τις πηγές, το EPG και τις μορφές εξόδου του | Streams → προσθήκη ζωντανού stream (URL πηγής ή αποστολή RTMP) |
| Βιβλιοθήκη ανάλυσης και επανάληψης | Κατάλογος VOD: ταινίες και σειρές με σεζόν και επεισόδια, κατηγορίες και μεταδεδομένα | Movies και Series, ή η εργασία VOD ingest |
| Πακέτο ομάδας ή διοργάνωσης | Bouquet: ονομασμένο σύνολο καναλιών, ταινιών ή σειρών που παραχωρεί ένα πακέτο | Bouquets, από Streams και Movies / Series |
| Πρόσβαση μέλους ή οικογένειας | Line: μία πρόσβαση με το πακέτο, τα bouquets, τη λήξη, το όριο συνδέσεων και τις εξόδους της | Lines → προσθήκη, ή κωδικοί ενεργοποίησης, ή το Reseller API |
| Σεζόν ή περίοδος συνδρομής | Ημερομηνία λήξης του line, που ανανεώνεται με πακέτο, credit ή το API | Η ημερομηνία λήξης του line και η διάρκεια του πακέτου |
| Λογαριασμός προσωπικού ομάδας ή ακαδημίας | Λογαριασμός μεταπωλητή: ανατεθειμένος πίνακας με credits, δικαιώματα και δικά του lines | Users → προσθήκη μεταπωλητή· Groups για τα δικαιώματά του |
| Ενσωμάτωση καταστήματος ή διαχείρισης συλλόγου | Reseller API και webhooks: οι λειτουργίες του πίνακα από το δικό σας σύστημα | Κλειδιά Reseller API και webhooks στον πίνακα του μεταπωλητή |
Προαπαιτούμενα
Τι να έχετε πριν την εγκατάσταση.
- Έναν διακομιστή (Ubuntu 22.04 ή 24.04) με δημόσια διεύθυνση ή domain και αρκετό εύρος ζώνης upstream για τους αγώνες που σκοπεύετε να μεταδώσετε.
- Την κάμερα και τον encoder στο γήπεδο που μπορεί να στέλνει RTMP, και τα καταγεγραμμένα αρχεία προπόνησης και ανάλυσης που ήδη κρατούν οι προπονητές σας.
- Μια απόφαση για το ποιος βλέπει τι: ποιες ομάδες μοιράζονται υλικό, ποιοι αγώνες είναι μόνο για μέλη και ποιο προσωπικό παίρνει λογαριασμό πίνακα.
Εγκατάσταση υποδομής
Πρώτα η ακαδημία, ένα node όταν το χρειάζονται οι ημέρες αγώνων.
- Εκτελέστε το πρόγραμμα εγκατάστασης στον διακομιστή της ακαδημίας και βάλτε τον πίνακα πίσω από reverse proxy με TLS· ορίστε τα trusted proxies ώστε τα logs και οι κανόνες IP να βλέπουν την πραγματική διεύθυνση του θεατή.
- Ορίστε το playback base URL στη δημόσια διεύθυνση στην οποία φτάνουν οι θεατές, ώστε οι σύνδεσμοι που εκδίδει ο πίνακας να λειτουργούν από το σπίτι.
- Αν πολλές οικογένειες βλέπουν τον ίδιο αγώνα, εγγράψτε ένα node από τους Servers· ο πίνακας το εγκαθιστά μέσω SSH και διανέμει από αυτό το ζωντανό κανάλι.
- Δημιουργήστε έναν λογαριασμό συνεργάτη (reseller) για το προπονητικό προσωπικό με δικαιώματα για τον κατάλογο και κανένα για τα lines των μελών.
Οργάνωση περιεχομένου
Ομάδες και σεζόν ως κατηγορίες, πρόσβαση ως bouquets.
- Δημιουργήστε κατηγορίες ανά ηλικιακή κατηγορία και ανά σεζόν, και σειρές για διοργανώσεις με ένα επεισόδιο ανά αγώνα.
- Δημιουργήστε ένα bouquet ανά υλικό ανάλυσης ομάδας, ένα για τα ζωντανά κανάλια αγώνων και ένα για ολόκληρη την ακαδημία.
- Δημιουργήστε ένα πακέτο ανά είδος συνδρομής: τα bouquets που χορηγεί, με τη σεζόν ως διάρκεια και μια τιμή σε credits αν το πουλά το προσωπικό.
- Ονομάστε τα bouquets από την ομάδα ή τη διοργάνωση στην οποία ανήκουν, ώστε το προσωπικό να ξέρει ποιο πακέτο να δώσει σε μια οικογένεια.
Ρύθμιση συνεργατών (reseller)
Προσωπικό που διαχειρίζεται τα δικά του μέλη, αν το θέλει ο σύλλογος.
- Δημιουργήστε μια ομάδα με δικαιώματα καταλόγου για τους προπονητές και μια ομάδα με δικαιώματα lines για τον γραμματέα μελών.
- Προσθέστε τον καθένα ως reseller με την αντίστοιχη ομάδα· δώστε credits στον γραμματέα μόνο αν οι συνδρομές πωλούνται μέσω του πίνακα.
- Μια δορυφορική ακαδημία ή ένας σύλλογος οπαδών με δικά του μέλη παίρνει δικό του λογαριασμό συνεργάτη και δικά του πακέτα.
Ρύθμιση πρόσβασης μελών και οικογενειών
Ένα line ανά μέλος ή ανά οικογένεια.
- Δημιουργήστε ένα κλειδί Reseller API για το κατάστημα ή το σύστημα διαχείρισης του συλλόγου και κρατήστε το στα μυστικά αυτού του συστήματος.
- Κατά την εγγραφή το σύστημα καλεί action=create_line με το πακέτο της συνδρομής και ένα request id· η σεζόν είναι η διάρκεια του πακέτου.
- Ορίστε τις μέγιστες συνδέσεις στις συσκευές που χρειάζεται μια οικογένεια (συνήθως τρεις ή τέσσερις) ώστε μια συνδρομή να μη μοιράζεται πέρα από το νοικοκυριό.
- Για μια δοκιμαστική ημέρα αγώνα, προσθέστε ένα line από Lines → add με δοκιμαστικό πακέτο, ή εκτυπώστε κωδικούς ενεργοποίησης για τους οπαδούς στην εξέδρα.
Βιβλιοθήκη ανάλυσης και επανάληψης
Αγώνες και προπονήσεις κατά παραγγελία.
- Ανεβάστε κάθε αγώνα ή προπόνηση ως πηγή επεισοδίου, ή εισάγετέ τα με τη διεργασία VOD ingest· κρατήστε την ημερομηνία, τον αντίπαλο και την ομάδα στον τίτλο.
- Συνδέστε την εγγραφή με το bouquet της ομάδας μέσω της σειράς της, ώστε μόνο τα lines αυτής της ομάδας να τη βλέπουν.
- Ελέγξτε την αναπαραγωγή με ένα δοκιμαστικό line κάθε συνδρομής για να επιβεβαιώσετε ποιος βλέπει τι.
Τροφοδοσίες αγώνων και προπονήσεων
Μια κάμερα γηπέδου ως ζωντανό κανάλι.
- Προσθέστε ένα ζωντανό stream για κάθε encoder στο γήπεδο (RTMP push) και βάλτε το στο bouquet της ημέρας αγώνα.
- Ενεργοποιήστε το catch-up ώστε μια οικογένεια που μπαίνει αργά να μπορεί να γυρίσει πίσω και προσθέστε την εγγραφή στη βιβλιοθήκη μετά τον τελικό σφυρίχτη.
- Σε μια πολυάσχολη ημέρα αγώνα, ελέγξτε ότι το node παίρνει το κανάλι μία φορά από το origin και εξυπηρετεί τους θεατές που κατευθύνονται σε αυτό.
Λήξη συνδρομής
Η πρόσβαση ακολουθεί τη σεζόν.
- Ένα line λήγει στο τέλος της περιόδου του πακέτου του· το κατάστημα το ανανεώνει με action=renew_line όταν πληρωθεί η συνδρομή της επόμενης σεζόν.
- Εγγράψτε το κατάστημα στα webhooks για να στέλνει υπενθύμιση στο line.expiring και να κλείνει τη συνδρομή στο line.expired.
- Ένας παίκτης που φεύγει στη μέση της σεζόν απενεργοποιείται από το κατάστημα με action=disable_line· το line διατηρείται για τα αρχεία.
Ενσωμάτωση με το κατάστημα ή το λογισμικό του συλλόγου
Τα συστήματα οδηγούν την πρόσβαση· ο player παίζει.
- Εγκαταστήστε το connector της πλατφόρμας εμπορίου σας (WooCommerce, Shopify και άλλα) στην πλευρά του καταστήματος ώστε μια αγορά να δημιουργεί το line και μια πληρωμή να το ανανεώνει.
- Ένα σύστημα διαχείρισης συλλόγου ή έκδοσης εισιτηρίων συνδέεται μέσω του Reseller API και webhooks· δεν υπάρχει εγγενές connector γι' αυτό.
- Δεν υπάρχει ενιαία σύνδεση (single sign-on) για θεατές: τα μέλη συνδέονται στον player με τα διαπιστευτήρια του line τους, που τους στέλνει το κατάστημα.
Ζητήματα ασφάλειας
Το υλικό της ομάδας μένει στην ομάδα.
- Εξυπηρετήστε τον πίνακα και το playback base URL μέσω TLS και ορίστε το TRUSTED_PROXIES στο reverse proxy σας.
- Σύνδεση δύο παραγόντων για κάθε λογαριασμό του πίνακα και ομάδες δικαιωμάτων ώστε ο γραμματέας να μην μπορεί να αλλάξει τον κατάλογο και οι προπονητές να μη βλέπουν τα lines.
- Υπογεγραμμένοι σύνδεσμοι αναπαραγωγής που λήγουν, όριο συνδέσεων ανά line και δέσιμο σε IP ή χώρα για τα lines προσωπικού.
- Κρυπτογραφημένα αντίγραφα ασφαλείας της βάσης με εξωτερικό αντίγραφο και το audit log για κάθε αλλαγή lines και καταλόγου.
Αντιμετώπιση προβλημάτων
Οι συνηθισμένοι πρώτοι έλεγχοι.
- Ένας γονέας βλέπει την ανάλυση της πρώτης ομάδας: ελέγξτε το πακέτο του line και τα bouquets που χορηγεί.
- Ένα νέο μέλος δεν έχει πρόσβαση μετά την πληρωμή: ελέγξτε το log κλήσεων του Reseller API για το αίτημα του καταστήματος και την ημερομηνία λήξης του line.
- Η τροφοδοσία του αγώνα κολλά στην έναρξη: ελέγξτε το upload του encoder στο γήπεδο και το heartbeat του node αν ένα εξυπηρετεί τους θεατές.
- Το audit log δείχνει τη διεύθυνση του proxy: ορίστε το TRUSTED_PROXIES στον proxy και επανεκκινήστε τον πίνακα.