
Γλώσσα 🇨🇾 Ελληνικά (Κύπρος)
Ξεκινώντας
Διαμόρφωση
Προσαρμογή
Για προχωρημένους
Προσθήκη Ενσωματωμένων Ζωντανών Σχολίων σε Έγγραφα, Βιβλία κ.λπ.
Το FastComments Collab Chat επιτρέπει στους χρήστες να επισημαίνουν και να σχολιάζουν οποιοδήποτε κείμενο στο site σας, δημιουργώντας νηματοειδείς συζητήσεις συνδεδεμένες με συγκεκριμένες επιλογές κειμένου. Οι χρήστες μπορούν να επιλέξουν λέξεις, προτάσεις ή ολόκληρες παραγράφους για να ξεκινήσουν συνεργατικές συζητήσεις απευθείας μέσα στο περιεχόμενό σας.
Αυτό το χαρακτηριστικό είναι ιδανικό για ανατροφοδότηση επιμέλειας, περιβάλλοντα συνεργατικής ανάγνωσης, εκπαιδευτικές πλατφόρμες, ανασκόπηση εγγράφων και κάθε σενάριο όπου θέλετε να υπάρχουν συζητήσεις με συμφραζόμενα προσδεδεμένες σε συγκεκριμένο κείμενο.
Σημειώστε ότι αυτά τα έγγραφα αφορούν συγκεκριμένα τη λειτουργία Collab Chat. Μπορείτε να προσθέσετε σχολιασμό για περιεχόμενο με πολλές σελίδες, όπως Βιβλία, με thread-per-page, χωρίς να χρησιμοποιήσετε το Collab Chat. Η FastComments επίσης δεν χρεώνει ανά σελίδα ή ανά νήμα. Το Collab Chat αφορά συγκεκριμένα όταν θέλετε να επιτρέψετε στους χρήστες να επιλέγουν κείμενο και να σχολιάζουν την επισημασμένη ενότητα του κειμένου.
Μπορείτε να δείτε ένα παράδειγμα εδώ.
Ξεκινώντας 
Γρήγορη Εκκίνηση
Η έναρξη με το Collab Chat είναι απλή. Χρειάζεστε το script του FastComments Collab Chat, ένα στοιχείο HTML που περιέχει το κείμενο που θέλετε να σχολιάσετε, και ένα αντικείμενο ρυθμίσεων με το Tenant ID σας.
Εγκατάσταση
Προσθέστε το script του Collab Chat στη σελίδα σας:

Βασική Υλοποίηση
Ορίστε ένα ελάχιστο παράδειγμα:
Run 
Αντικαταστήστε 'demo' με το πραγματικό Tenant ID του FastComments, εάν δεν το έχετε ήδη, το οποίο μπορείτε να βρείτε στο πίνακα ελέγχου FastComments.
Πώς Λειτουργεί
Μόλις αρχικοποιηθεί, οι χρήστες μπορούν να επιλέξουν οποιοδήποτε κείμενο εντός του στοχευόμενου στοιχείου. Μετά από μια μικρή καθυστέρηση (3.5 δευτερόλεπτα σε desktop), εμφανίζεται μια προτροπή που τους επιτρέπει να ξεκινήσουν μια συζήτηση. Όταν δημιουργηθεί μια συζήτηση, εμφανίζεται οπτική επισήμανση στο κείμενο. Άλλοι χρήστες μπορούν να περάσουν το δείκτη πάνω από την επισήμανση ή να την κλικάρουν για να δουν και να συμμετάσχουν στη συζήτηση. Όλες οι συζητήσεις συγχρονίζονται σε πραγματικό χρόνο για όλους τους επισκέπτες.
Ζωντανή Επίδειξη
Μπορείτε να δείτε το Collab Chat σε δράση στη σελίδα ζωντανής επίδειξης.
Επόμενα Βήματα
Τώρα που τα βασικά λειτουργούν, μπορείτε να προσαρμόσετε την εμφάνιση και τη συμπεριφορά στον οδηγό Επιλογών Διαμόρφωσης. Δείτε τον οδηγό Συμπεριφοράς Επιλογής Κειμένου για να κατανοήσετε πώς λειτουργεί η επιλογή κειμένου. Μάθετε για το styling και την υποστήριξη σκοτεινής λειτουργίας στον οδηγό Προσαρμογής. Για προχωρημένες ενσωματώσεις, εξερευνήστε την Αναφορά API.
Βιβλιοθήκες frontend
Όλες οι frontend βιβλιοθήκες του FastComments (react, vue, angular, κ.λπ.) περιλαμβάνουν το Collab Chat.
Παραδείγματα 
Βασικό Παράδειγμα
Ο πιο απλός τρόπος για να χρησιμοποιήσετε το Collab Chat είναι να στοχεύσετε ένα μόνο δοχείο περιεχομένου. Αυτό το παράδειγμα δείχνει πώς να ενεργοποιήσετε τις σημειώσεις κειμένου σε ένα άρθρο:
Run 
Παράδειγμα με Προσαρμοσμένο URL ID (Ανά Σελίδα Βιβλίου, Άρθρο, κ.λπ.)
Κατ' προεπιλογή, το Collab Chat χρησιμοποιεί το URL της σελίδας σε συνδυασμό με τη διαδρομή του στοιχείου και το εύρος κειμένου για να αναγνωρίσει συνομιλίες. Μπορείτε να παρέχετε ένα προσαρμοσμένο urlId για να έχετε μεγαλύτερο έλεγχο στον τρόπο ομαδοποίησης των συνομιλιών:

Αυτό είναι χρήσιμο εάν η δομή του URL αλλάζει αλλά θέλετε να διατηρήσετε τις ίδιες συνομιλίες, ή εάν θέλετε να μοιράζεστε τις ίδιες σημειώσεις συνομιλίας σε πολλές σελίδες.
Παράδειγμα με Σκοτεινή Λειτουργία
Εάν ο ιστότοπός σας έχει σκούρο φόντο, ενεργοποιήστε την υποστήριξη σκοτεινής λειτουργίας για να εξασφαλίσετε ότι το UI της συνομιλίας εμφανίζεται σωστά:
Run 
Παράδειγμα με Απενεργοποιημένη Επάνω Γραμμή
Κατ' προεπιλογή, το Collab Chat εμφανίζει μια επάνω γραμμή με τον αριθμό χρηστών και τον αριθμό συζητήσεων. Μπορείτε να την απενεργοποιήσετε:
Run 
Παράδειγμα με Callback Ενημέρωσης Αριθμού Σχολίων
Μπορείτε να παρακολουθείτε πότε προστίθενται ή ενημερώνονται σχόλια χρησιμοποιώντας το callback commentCountUpdated:

Παράδειγμα με Πολλαπλές Ενότητες
Μπορείτε να αρχικοποιήσετε το Collab Chat σε πολλαπλές ξεχωριστές ενότητες της σελίδας σας. Κάθε ενότητα θα έχει τις δικές της ανεξάρτητες σημειώσεις:

Προσθήκη ζωντανών σχολίων σε διαδικτυακά βιβλία 
Μπορείτε να αρχικοποιήσετε το Collab Chat ανά σελίδα, αν το επιθυμείτε, και να έχετε ξεχωριστά νήματα ανά σελίδα· απλώς περάστε την παράμετρο urlId
μια τιμή όπως book-one-page1. Αυτή η διαμόρφωση λειτουργεί επίσης με το κανονικό widget σχολιασμού.
Επιλογές διαμόρφωσης 
Επισκόπηση
Το FastComments Collab Chat επεκτείνει το τυπικό widget σχολιασμού του FastComments, οπότε κληρονομεί όλες τις επιλογές διαμόρφωσης από το βασικό widget ενώ προσθέτει μερικές επιλογές ειδικές για επισημάνσεις κειμένου.
Απαιτούμενη Διαμόρφωση
tenantId
Απαιτείται το Tenant ID του FastComments σας. Μπορείτε να το βρείτε στον πίνακα ελέγχου FastComments.

Επιλογές Ειδικές για το Collab Chat
urlId
Από προεπιλογή, το Collab Chat δημιουργεί ένα μοναδικό αναγνωριστικό για κάθε συνομιλία βασισμένο στο URL της σελίδας, στη διαδρομή DOM προς το στοιχείο και στο επιλεγμένο εύρος κειμένου. Μπορείτε να το παρακάμψετε με ένα προσαρμοσμένο urlId.

Αυτό είναι χρήσιμο όταν η δομή των URL σας μπορεί να αλλάξει αλλά θέλετε να διατηρήσετε τις ίδιες συνομιλίες, ή όταν θέλετε να μοιραστείτε επισημάνσεις μεταξύ πολλαπλών σελίδων.
topBarTarget
Ελέγχει την εμφάνιση της επάνω γραμμής που δείχνει τον αριθμό χρηστών και τον αριθμό συζητήσεων. Ορίστε σε null για να απενεργοποιήσετε πλήρως την επάνω γραμμή, ή δώστε ένα DOM στοιχείο για να την αποδώσετε σε μια συγκεκριμένη θέση.

hasDarkBackground
Ενεργοποιήστε το στυλ σκοτεινής λειτουργίας όταν η σελίδα σας έχει σκουρό φόντο. Αυτή η ανίχνευση γίνεται αυτόματα, αλλά ίσως θέλετε να την παρακάμψετε.

commentCountUpdated
Συνάρτηση callback που εκτελείται κάθε φορά που αλλάζει ο αριθμός σχολίων. Χρήσιμο για ενημέρωση στοιχείων διεπαφής όπως badges ή τίτλοι σελίδων.

Κληρονομημένες Επιλογές Διαμόρφωσης
Επειδή το Collab Chat επεκτείνει το πρότυπο widget σχολιασμού, μπορείτε να χρησιμοποιήσετε οποιαδήποτε επιλογή διαμόρφωσης από το βασικό widget FastComments. Ακολουθούν μερικές συνήθεις χρησιμοποιούμενες επιλογές:
locale
Ορίστε τη γλώσσα για τη διεπαφή του widget. Το FastComments υποστηρίζει δεκάδες γλώσσες.

readonly
Κάντε όλες τις συνομιλίες μόνο για ανάγνωση. Οι χρήστες μπορούν να δουν υπάρχουσες επισημάνσεις αλλά δεν μπορούν να δημιουργήσουν νέες ή να απαντήσουν.

sso and simpleSSO
Ενσωματώστε με το σύστημα πιστοποίησής σας χρησιμοποιώντας Single Sign-On.

Δείτε την τεκμηρίωση SSO για πλήρεις λεπτομέρειες σχετικά με τις επιλογές πιστοποίησης.
maxReplyDepth
Ελέγξτε πόσα επίπεδα βάθους μπορούν να έχουν οι απαντήσεις. Από προεπιλογή, το Collab Chat το ορίζει σε 0, που σημαίνει ότι όλα τα σχόλια είναι επίπεδα (χωρίς εμφωλευμένες απαντήσεις). Μπορείτε να αλλάξετε αυτό εάν θέλετε νηματικές συνομιλίες.

Εσωτερική Διαμόρφωση
Αυτές οι επιλογές ορίζονται αυτόματα από το Collab Chat και δεν πρέπει να παρακαμφθούν:
Το productId ορίζεται αυτόματα σε 3 για το Collab Chat. Η επέκταση floating-chat φορτώνεται αυτόματα για να παρέχει τη λειτουργικότητα παραθύρου συνομιλίας. Το widget εντοπίζει αυτόματα κινητές συσκευές (οθόνες κάτω από 768px πλάτος) και προσαρμόζει τη διεπαφή ανάλογα.
Πλήρες Παράδειγμα
Ακολουθεί ένα παράδειγμα που δείχνει πολλές επιλογές διαμόρφωσης μαζί:

Για μια πλήρη λίστα όλων των διαθέσιμων επιλογών διαμόρφωσης που κληρονομούνται από το βασικό widget, δείτε την κύρια τεκμηρίωση διαμόρφωσης του FastComments.
Συμπεριφορά επιλογής κειμένου 
Πώς Λειτουργεί η Επιλογή Κειμένου
Όταν οι χρήστες επιλέγουν κείμενο μέσα στο περιέκτη Collab Chat, το widget καταγράφει αυτήν την επιλογή και τους επιτρέπει να ξεκινήσουν μια συζήτηση. Η επιλογή μπορεί να είναι τόσο μικρή όσο μια μεμονωμένη λέξη ή τόσο μεγάλη όσο πολλαπλές παραγράφους που διασχίζουν διαφορετικά στοιχεία.
Καθυστέρηση Επιλογής
Σε επιτραπέζιες συσκευές, υπάρχει καθυστέρηση 3,5 δευτερολέπτων μεταξύ της επιλογής κειμένου από τον χρήστη και της εμφάνισης της προτροπής για συζήτηση. Αυτό αποτρέπει το αναβόσβημα της UI όταν οι χρήστες απλώς επισημαίνουν κείμενο για αντιγραφή ή ανάγνωση. Σε κινητές συσκευές, η προτροπή εμφανίζεται αμέσως καθώς η επιλογή κειμένου είναι πιο σκόπιμη σε οθόνες αφής.
Μοναδικά Αναγνωριστικά Συζητήσεων
Κάθε συζήτηση παίρνει ένα μοναδικό urlId που συνδυάζει το URL της σελίδας, τη διαδρομή του στοιχείου DOM και το σειριαποιημένο εύρος κειμένου. Αυτό εξασφαλίζει ότι κάθε επιλογή κειμένου δημιουργεί μια ξεχωριστή συζήτηση που μπορεί να βρεθεί ξανά αργότερα.
Εάν παρέχετε ένα προσαρμοσμένο urlId στη ρύθμισή σας, θα συνδυαστεί με τη διαδρομή του στοιχείου και το εύρος κειμένου για να δημιουργήσει το τελικό αναγνωριστικό.
Οπτικές Επισημάνσεις
Όταν υπάρχει συζήτηση για μια συγκεκριμένη επιλογή κειμένου, το κείμενο αυτό λαμβάνει οπτική επισήμανση. Η επισήμανση υλοποιείται χρησιμοποιώντας χρώματα φόντου και εμφανίζεται κατά το hover ή όταν το σχετικό παράθυρο συνομιλίας είναι ανοικτό.
Το σύστημα επισήμανσης λειτουργεί τυλίγοντας το επιλεγμένο κείμενο σε ένα ειδικό στοιχείο που μπορεί να έχει στυλ. Αυτή η προσέγγιση εξασφαλίζει ότι οι επισήμανσεις παραμένουν ακριβείς ακόμα και όταν η υποκείμενη δομή HTML είναι πολύπλοκη.
Θέση Παραθύρου Συζήτησης
Όταν ένας χρήστης κλικάρει πάνω σε μια επισήμανση ή δημιουργεί μια νέα επισήμανση, ένα παράθυρο συζήτησης εμφανίζεται κοντά στο επιλεγμένο κείμενο. Το widget υπολογίζει αυτόματα την καλύτερη θέση για αυτό το παράθυρο με βάση τον διαθέσιμο χώρο του viewport.
Το σύστημα τοποθέτησης χρησιμοποιεί κλάσεις CSS όπως to-right, to-left, to-top, και to-bottom για να υποδείξει προς ποια κατεύθυνση πρέπει να επεκτείνεται το παράθυρο συζήτησης από την επισήμανση. Σε κινητές συσκευές (οθόνες μικρότερες των 768px πλάτους), το παράθυρο συζήτησης εμφανίζεται πάντα σε πλήρη οθόνη για καλύτερη χρηστικότητα.
Διαστάσεις Παραθύρου Συζήτησης
Τα παράθυρα συζήτησης έχουν πλάτος 410px σε επιτραπέζιες συσκευές με διάκενο 20px και ένα οπτικό βέλος 16px που δείχνει προς το επισημασμένο κείμενο. Αυτές οι διαστάσεις είναι σταθερές για να εξασφαλιστεί συνεπής συμπεριφορά, αλλά μπορείτε να προσαρμόσετε την εμφάνιση με CSS.
Επιλογές Που Διασχίζουν Στοιχεία
Οι χρήστες μπορούν να επιλέξουν κείμενο που εκτείνεται σε πολλαπλά στοιχεία HTML, όπως επισημαίνοντας από το μέσο μιας παραγράφου έως την αρχή μιας άλλης. Το σύστημα σειριοποίησης εύρους χειρίζεται αυτό σωστά και θα επισημάνει όλο το επιλεγμένο κείμενο ακόμη και πέρα από τα όρια των στοιχείων.
Συμβατότητα Περιηγητή
Το σύστημα επιλογής κειμένου χρησιμοποιεί το πρότυπο window.getSelection() API το οποίο υποστηρίζεται σε όλους τους σύγχρονους περιηγητές. Για παλαιότερες εκδόσεις του Internet Explorer, υπάρχει fallback στο document.selection για συμβατότητα.
Διατήρηση Επιλογής
Μόλις δημιουργηθεί μια συζήτηση για μια επιλογή κειμένου, αυτή η επισήμανση παραμένει ακόμη και αν η σελίδα φορτωθεί ξανά. Το σειριαποιημένο εύρος και η διαδρομή DOM επιτρέπουν στο widget να επαναφέρει τις επισήμανσεις στην ακριβώς ίδια θέση όταν οι χρήστες επιστρέψουν στη σελίδα.
Αυτό λειτουργεί αξιόπιστα εφόσον το περιεχόμενο της σελίδας παραμένει σταθερό. Εάν αλλάξετε το κείμενο ή αναδιαρθρώσετε το HTML σας, υπάρχουσες επισήμανσεις μπορεί να μην ευθυγραμμίζονται πλέον σωστά με το κείμενο. Για αυτόν τον λόγο, είναι καλύτερο να αποφύγετε σημαντικές αλλαγές περιεχομένου σε σελίδες με ενεργές επισημάνσεις, ή να εξετάσετε τη μετανάστευση των επισημάνσεων όταν οι αλλαγές περιεχομένου είναι απαραίτητες.
Προσαρμογή 
Υποστήριξη Σκοτεινής Λειτουργίας
Δυναμική Σκοτεινή Λειτουργία
Εάν η σκοτεινή λειτουργία του ιστότοπού σας ελέγχεται με την προσθήκη της κλάσης .dark στο στοιχείο body, το UI του Collab Chat θα την σέβεται αυτόματα χωρίς να απαιτείται επανεκκίνηση. Τα στυλ του widget έχουν σχεδιαστεί ώστε να ανταποκρίνονται στην παρουσία αυτής της κλάσης.

Προσαρμογή Στυλ με CSS
Μπορείτε να προσαρμόσετε την εμφάνιση των επισημάνσεων, των παραθύρων συνομιλίας και άλλων στοιχείων χρησιμοποιώντας CSS. Το widget προσθέτει συγκεκριμένες κλάσεις που μπορείτε να στοχεύσετε στο stylesheet σας.
Οι επισημάνσεις κειμένου χρησιμοποιούν το σύστημα στυλ φυσαλίδων σχολίων του FastComments, οπότε οποιεσδήποτε προσαρμογές έχετε εφαρμόσει στο τυπικό widget σχολιασμού θα επηρεάσουν επίσης το Collab Chat.
Προσαρμογή Πάνω Μπάρας
Η πάνω μπάρα εμφανίζει τον αριθμό των χρηστών online και τον αριθμό των συζητήσεων. Μπορείτε να προσαρμόσετε τη θέση της παρέχοντας ένα προσαρμοσμένο στοιχείο ως το topBarTarget:

Ή απενεργοποιήστε το εντελώς θέτοντάς το σε null:

Συμπεριφορά σε Κινητά
Σε οθόνες κάτω από 768px πλάτος, το Collab Chat αλλάζει αυτόματα σε διάταξη βελτιστοποιημένη για κινητά. Τα παράθυρα συνομιλίας εμφανίζονται πλήρους οθόνης αντί να αιωρούνται δίπλα στο κείμενο, και η καθυστέρηση επιλογής αφαιρείται για πιο άμεση αλληλεπίδραση.
Αυτή η συμπεριφορά είναι ενσωματωμένη και δεν απαιτεί καμία ρύθμιση. Το widget ανιχνεύει αυτόματα το μέγεθος της οθόνης και προσαρμόζεται αναλόγως.
Εμφάνιση Παραθύρου Συνομιλίας
Τα παράθυρα συνομιλίας έχουν πλάτος 410px σε επιτραπέζιους υπολογιστές με ένα βέλος 16px που δείχνει στο επισημασμένο κείμενο. Τα παράθυρα τοποθετούνται αυτόματα με βάση τον διαθέσιμο χώρο στο viewport, χρησιμοποιώντας κλάσεις τοποθέτησης όπως to-right, to-left, to-top, και to-bottom.
Μπορείτε να προσθέσετε προσαρμοσμένο CSS για να ρυθμίσετε χρώματα, γραμματοσειρές, διαστήματα ή άλλες οπτικές ιδιότητες αυτών των παραθύρων. Τα παράθυρα συνομιλίας χρησιμοποιούν την ίδια δομή συστατικών με το τυπικό widget του FastComments, οπότε κληρονομούν οποιεσδήποτε παγκόσμιες προσαρμογές έχετε εφαρμόσει.
Τοπικοποίηση
Το Collab Chat υποστηρίζει όλες τις ίδιες επιλογές τοπικοποίησης με το τυπικό widget του FastComments. Ορίστε την επιλογή locale για να εμφανίζεται το κείμενο του UI σε διαφορετικές γλώσσες:

Το FastComments υποστηρίζει δεκάδες γλώσσες. Η ρύθμιση του locale επηρεάζει όλο το κείμενο του UI συμπεριλαμβανομένων προτροπών, κουμπιών και κειμένου υποκατάστασης.
Κληρονομούμενες Επιλογές Προσαρμογής
Δεδομένου ότι το Collab Chat επεκτείνει το τυπικό widget σχολιασμού, κληρονομεί όλες τις επιλογές προσαρμογής από το βασικό widget. Αυτό περιλαμβάνει προσαρμοσμένες CSS κλάσεις, προσαρμοσμένες μεταφράσεις, προσαρμογή avatar, μορφοποίηση ημερομηνιών και πολλά άλλα.
Δείτε την κύρια τεκμηρίωση προσαρμογής του FastComments για την πλήρη λίστα των διαθέσιμων επιλογών προσαρμογής.
Εργασία με Προσαρμοσμένες Γραμματοσειρές
Εάν ο ιστότοπός σας χρησιμοποιεί προσαρμοσμένες γραμματοσειρές, το UI του Collab Chat θα κληρονομήσει αυτές τις γραμματοσειρές από το CSS της σελίδας σας. Ενδέχεται να χρειαστεί να δημιουργήσετε έναν κανόνα προσαρμογής για το widget και να @import οποιεσδήποτε γραμματοσειρές στο προσαρμοσμένο CSS αυτού του κανόνα εάν εσείς
θέλετε το αιωρούμενο παράθυρο συνομιλίας να χρησιμοποιεί τις ίδιες γραμματοσειρές.
Συγχρονισμός σε πραγματικό χρόνο 
Ενημερώσεις σε Πραγματικό Χρόνο
Το Collab Chat χρησιμοποιεί συνδέσεις WebSocket για να συγχρονίζει όλες τις συνομιλίες σε πραγματικό χρόνο σε όλους τους συνδεδεμένους χρήστες. Όταν κάποιος δημιουργεί μια νέα επισήμανση, προσθέτει ένα σχόλιο ή διαγράφει μια συζήτηση, όλοι οι άλλοι χρήστες που βλέπουν την ίδια σελίδα βλέπουν την ενημέρωση αμέσως χωρίς ανανέωση.
Πώς λειτουργεί ο Συγχρονισμός με WebSocket
Όταν αρχικοποιείτε το Collab Chat, το widget δημιουργεί μια σύνδεση WebSocket με τους διακομιστές του FastComments. Αυτή η σύνδεση παραμένει ανοιχτή για τη διάρκεια της συνεδρίας του χρήστη και ακούει για ενημερώσεις σχετικές με την τρέχουσα σελίδα.
Το σύστημα WebSocket χρησιμοποιεί τρεις τύπους μηνυμάτων εκπομπής για το Collab Chat. Το γεγονός new-text-chat πυροδοτείται όταν κάποιος δημιουργεί μια νέα επισήμανση στη σελίδα. Το γεγονός updated-text-chat πυροδοτείται όταν κάποιος ενημερώνει μια υπάρχουσα συνομιλία. Το γεγονός deleted-text-chat πυροδοτείται όταν κάποιος διαγράφει μια επισήμανση.
Σύστημα Broadcast ID
Για να αποτραπούν φαινόμενα ηχώ όπου οι χρήστες βλέπουν τις δικές τους ενέργειες να εκπέμπονται πίσω σε αυτούς, κάθε ενημέρωση περιλαμβάνει ένα μοναδικό broadcastId. Όταν ένας χρήστης δημιουργεί ή ενημερώνει μια επισήμανση, ο client του δημιουργεί ένα UUID για αυτή την ενέργεια. Όταν το WebSocket εκπέμπει ξανά την ενημέρωση σε όλους τους clients, ο αρχικός client αγνοεί την ενημέρωση επειδή ταιριάζει με το δικό του broadcastId.
Αυτό εξασφαλίζει ομαλή αλληλεπίδραση όπου οι χρήστες βλέπουν τις αλλαγές τους αμέσως στο UI χωρίς να περιμένουν την επιστροφή μέσω του διακομιστή, ενώ ταυτόχρονα όλοι οι άλλοι χρήστες λαμβάνουν την ενημέρωση.
Ζωντανός Αριθμός Χρηστών
Η πάνω μπάρα εμφανίζει τον αριθμό των χρηστών που αυτή τη στιγμή βλέπουν τη σελίδα. Αυτός ο αριθμός ενημερώνεται σε πραγματικό χρόνο καθώς οι χρήστες μπαίνουν και φεύγουν. Ο αριθμός χρηστών παρέχεται μέσω της ίδιας σύνδεσης WebSocket και αυξομειώνεται αυτόματα με βάση τα γεγονότα σύνδεσης και αποσύνδεσης.
Ανθεκτικότητα Σύνδεσης
Εάν η σύνδεση WebSocket διακοπεί λόγω προβλημάτων δικτύου ή συντήρησης διακομιστή, το widget προσπαθεί αυτόματα να επανασυνδεθεί. Κατά την περίοδο επανασύνδεσης, οι χρήστες μπορούν ακόμη να αλληλεπιδρούν με υπάρχουσες επισημάνσεις, αλλά δεν θα βλέπουν ενημερώσεις σε πραγματικό χρόνο από άλλους χρήστες μέχρι να αποκατασταθεί η σύνδεση.
Μόλις επανασυνδεθεί, το widget επανασυγχρονίζεται για να διασφαλίσει ότι δεν χάθηκαν ενημερώσεις. Αυτό γίνεται διαφανώς χωρίς να απαιτείται παρέμβαση του χρήστη.
Προβληματισμοί για το Εύρος Ζώνης
Τα μηνύματα WebSocket είναι ελαφριά και περιέχουν μόνο τις απαραίτητες πληροφορίες που χρειάζονται για τον συγχρονισμό της κατάστασης. Η δημιουργία μιας νέας επισήμανσης συνήθως χρησιμοποιεί λιγότερο από 1KB εύρους ζώνης. Το σύστημα περιλαμβάνει επίσης έξυπνη ομαδοποίηση για να μειώσει τη συχνότητα των μηνυμάτων κατά τις περιόδους υψηλής δραστηριότητας.
Τα στατιστικά χρήσης σας στον πίνακα ελέγχου του FastComments παρακολουθούν τα pubSubMessageCount και pubSubBandwidth ώστε να μπορείτε να παρακολουθείτε τη δραστηριότητα συγχρονισμού σε πραγματικό χρόνο σε όλο το site σας.
Συγχρονισμός μεταξύ καρτελών
Εάν ένας χρήστης έχει την ίδια σελίδα ανοιχτή σε πολλαπλές καρτέλες του προγράμματος περιήγησης, οι ενημερώσεις σε μια καρτέλα εμφανίζονται αμέσως στις άλλες καρτέλες. Αυτό λειτουργεί μέσω του ίδιου μηχανισμού συγχρονισμού WebSocket και δεν απαιτεί επιπλέον ρύθμιση.
Ασφάλεια
Τα μηνύματα WebSocket μεταδίδονται μέσω ασφαλών συνδέσεων (WSS) και περιλαμβάνουν επικύρωση tenant ώστε να διασφαλίζεται ότι οι χρήστες λαμβάνουν μόνο ενημερώσεις για συνομιλίες που έχουν εξουσιοδότηση να δουν. Ο διακομιστής επικυρώνει όλες τις ενέργειες πριν τις εκπέμψει για να αποτραπεί μη εξουσιοδοτημένη πρόσβαση ή παραποίηση.
Αναφορά API 
Επισκόπηση API
Το Collab Chat παρέχει τρία REST API τελικά σημεία για τη διαχείριση συνομιλιών κειμένου προγραμματιστικά. Αυτά τα τελικά σημεία σας επιτρέπουν να ανακτήσετε, να δημιουργήσετε και να διαγράψετε σημειώσεις χωρίς να χρησιμοποιήσετε το widget του προγράμματος περιήγησης.
Πρόκειται για δημόσια τελικά σημεία που αυθεντικοποιούν τους χρήστες μέσω των cookies του προγράμματος περιήγησης. Δεν χρησιμοποιούν κλειδιά API. Οι χρήστες πρέπει να είναι συνδεδεμένοι στο FastComments στον περιηγητή τους για να έχουν πρόσβαση σε αυτά τα τελικά σημεία.
Βασικό URL
Όλα τα API τελικά σημεία του Collab Chat βρίσκονται κάτω από:

Έλεγχος ταυτότητας
Αυτά τα τελικά σημεία αυθεντικοποιούν χρήστες μέσω cookies του προγράμματος περιήγησης. Δεν χρησιμοποιούν κλειδιά API. Οι χρήστες πρέπει να είναι συνδεδεμένοι στο FastComments στον περιηγητή τους για να έχουν πρόσβαση σε αυτά τα τελικά σημεία.
Λήψη όλων των συνομιλιών
Ανακτήστε όλες τις συνομιλίες κειμένου για μια συγκεκριμένη σελίδα.
Τελικό Σημείο

Παράμετροι
tenantId (παράμετρος διαδρομής, απαραίτητη) είναι το FastComments Tenant ID σας.
urlId (παράμετρος ερωτήματος, απαραίτητη) είναι ο αναγνωριστής σελίδας για τον οποίο θέλετε να ανακτήσετε τις συνομιλίες.
Απόκριση
Η απόκριση περιλαμβάνει την κατάσταση του API, πληροφορίες για τη συνεδρία του τρέχοντος χρήστη εάν υπάρχει αυθεντικοποίηση, έναν πίνακα με συνομιλίες με τα αναγνωριστικά τους, τις διευθύνσεις URL και τα εύρη κειμένου, έναν καθαρισμένο αναγνωριστή URL, μια ένδειξη εάν ο τρέχων χρήστης είναι διαχειριστής ιστότοπου ή συντονιστής, καθώς και λεπτομέρειες σύνδεσης WebSocket για ζωντανή συγχρονισμό που περιλαμβάνουν tenantIdWS, urlIdWS, και userIdWS.
Παράδειγμα Αιτήματος

Παράδειγμα Απάντησης

Δημιουργία Συνομιλίας
Δημιουργήστε μια νέα συνομιλία κειμένου για μια συγκεκριμένη επιλογή κειμένου.
Τελικό Σημείο

Παράμετροι
tenantId (παράμετρος διαδρομής, απαραίτητη) είναι το FastComments Tenant ID σας.
Το σώμα του αιτήματος πρέπει να είναι JSON και να περιλαμβάνει τα ακόλουθα απαιτούμενα πεδία.
urlId (string, απαραίτητο) είναι ο βασικός αναγνωριστής σελίδας.
urlIdWithRange (string, απαραίτητο) είναι το URL σε συνδυασμό με το εύρος κειμένου, για παράδειγμα my-page:p:0:15,0:45{abc123}.
pageTitle (string, απαραίτητο) είναι ο τίτλος της σελίδας.
selector (string, απαραίτητο) είναι η διαδρομή DOM προς το στοιχείο που περιέχει το επιλεγμένο κείμενο.
range (string, απαραίτητο) είναι το σειριοποιημένο εύρος κειμένου στη μορφή startOffset:endOffset,startOffset:endOffset{checksum}.
createdFromCommentId (string, απαραίτητο) είναι το ID του σχολίου που ξεκίνησε αυτή τη συνομιλία.
broadcastId (string, απαραίτητο) είναι ένα UUID για ζωντανό συγχρονισμό ώστε να αποφεύγονται τα φαινόμενα ηχούς.
Απόκριση
Η απόκριση περιλαμβάνει την κατάσταση του API και το ID της νεοδημιουργηθείσας συνομιλίας.
Παράδειγμα Αιτήματος

Παράδειγμα Απάντησης

Διαγραφή Συνομιλίας
Διαγράψτε μια υπάρχουσα συνομιλία κειμένου. Αυτό το τελικό σημείο απαιτεί δικαιώματα διαχειριστή ή συντονιστή, ή η συνομιλία πρέπει να έχει δημιουργηθεί από τον αυθεντικοποιημένο χρήστη.
Τελικό Σημείο

Παράμετροι
tenantId (παράμετρος διαδρομής, απαραίτητη) είναι το FastComments Tenant ID σας.
chatId (παράμετρος διαδρομής, απαραίτητη) είναι το ID της συνομιλίας που θέλετε να διαγράψετε.
broadcastId (σώμα αιτήματος, απαραίτητο) είναι ένα UUID για ζωντανό συγχρονισμό.
Παράδειγμα Αιτήματος

Παράδειγμα Απάντησης

Περιορισμός Ρυθμού
Αυτά τα τελικά σημεία υπόκεινται στα στάνταρ όρια ρυθμού του FastComments API. Το middleware περιορισμού ρυθμού εφαρμόζεται ανά tenant για να αποτραπεί η κατάχρηση ενώ επιτρέπεται η κανονική χρήση.
Απαντήσεις Σφάλματος
Όλα τα τελικά σημεία επιστρέφουν τα τυπικά HTTP status codes. Μια απόκριση 400 υποδεικνύει μη έγκυρες παραμέτρους αιτήματος. Μια απόκριση 401 σημαίνει αποτυχία αυθεντικοποίησης. Μια απόκριση 403 υποδεικνύει ανεπαρκή δικαιώματα. Μια απόκριση 404 σημαίνει ότι η συνομιλία δεν βρέθηκε. Μια απόκριση 429 υποδεικνύει υπέρβαση του ορίου ρυθμού.
Οι απαντήσεις σφάλματος περιλαμβάνουν ένα JSON σώμα με λεπτομέρειες:

Παρακολούθηση Χρήσης
Η δημιουργία συνομιλιών αυξάνει το μετρικό χρήση conversationCreateCount. Όλη η δραστηριότητα συγχρονισμού WebSocket αυξάνει τα pubSubMessageCount και pubSubBandwidth. Μπορείτε να παρακολουθείτε αυτά τα μετρικά στο πίνακα ελέγχου του FastComments κάτω από την ανάλυση χρήσης.
Έχετε ερωτήσεις;
Αυτό είναι όλο για το FastComments Collab Chat! Εάν έχετε οποιεσδήποτε ερωτήσεις, χρειάζεστε βοήθεια με την υλοποίηση, ή έχετε προτάσεις για χαρακτηριστικά, παρακαλούμε ενημερώστε μας παρακάτω ή επικοινωνήστε με την ομάδα υποστήριξής μας.
Για ζωντανά παραδείγματα, δείτε το Govscent.org που χρησιμοποιεί το Collab Chat σε παραγωγή.