
Γλώσσα 🇬🇷 Ελληνικά
Ξεκινώντας
Διαμόρφωση
Προσαρμογή
Για Προχωρημένους
Προσθέστε Ενσωματωμένα Ζωντανά Σχόλια σε Έγγραφα, Βιβλία κ.λπ.
Το FastComments Collab Chat επιτρέπει στους χρήστες να επισημαίνουν και να σχολιάζουν οποιοδήποτε κείμενο στον ιστότοπό σας, δημιουργώντας συζητήσεις με νήματα συνδεδεμένες σε συγκεκριμένες επιλογές κειμένου. Οι χρήστες μπορούν να επιλέξουν λέξεις, προτάσεις ή ολόκληρες παραγράφους για να ξεκινήσουν συνεργατικές συζητήσεις απευθείας μέσα στο περιεχόμενό σας.
Αυτή η λειτουργία είναι ιδανική για επιμελητική ανατροφοδότηση, περιβάλλοντα συνεργατικής ανάγνωσης, εκπαιδευτικές πλατφόρμες, αναθεώρηση εγγράφων και κάθε σενάριο όπου θέλετε συζητήσεις με συμφραζόμενα αγκυρωμένες σε συγκεκριμένο κείμενο.
Σημειώστε ότι αυτά τα έγγραφα αφορούν ειδικά τη λειτουργικότητα του Collab Chat. Μπορείτε να προσθέσετε σχολιασμό για περιεχόμενο με πολλές σελίδες, όπως Books, με thread-per-page, without using 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 και την υποστήριξη dark mode στον οδηγό Προσαρμογής. Για προχωρημένες ενσωματώσεις, εξερευνήστε την Αναφορά API.
Βιβλιοθήκες frontend
Όλες οι frontend βιβλιοθήκες της FastComments (react, vue, angular, κ.λπ.) έχουν Collab Chat.
Παραδείγματα 
Βασικό Παράδειγμα
Ο απλούστερος τρόπος χρήσης του Collab Chat είναι να στοχεύσετε ένα μόνο περιέκτη περιεχομένου. Αυτό το παράδειγμα δείχνει πώς να ενεργοποιήσετε τις σημειώσεις κειμένου σε ένα άρθρο:
Run 
Παράδειγμα με Προσαρμοσμένο URL ID (ανά σελίδα βιβλίου, άρθρο κ.λπ.)
Κατά προεπιλογή, το Collab Chat χρησιμοποιεί το URL της σελίδας σε συνδυασμό με τη διαδρομή του στοιχείου και το εύρος κειμένου για να αναγνωρίζει τις συζητήσεις. Μπορείτε να παρέχετε προσαρμοσμένο urlId για να έχετε μεγαλύτερο έλεγχο στον τρόπο ομαδοποίησης των συζητήσεων:

Αυτό είναι χρήσιμο εάν η δομή του URL σας αλλάζει αλλά θέλετε να διατηρήσετε τις ίδιες συζητήσεις, ή εάν θέλετε να μοιράζεστε τις ίδιες σημειώσεις συζήτησης σε πολλαπλές σελίδες.
Παράδειγμα με Σκοτεινή Λειτουργία
Εάν ο ιστότοπός σας έχει σκούρο φόντο, ενεργοποιήστε τη υποστήριξη σκοτεινής λειτουργίας για να διασφαλίσετε ότι το UI του chat εμφανίζεται σωστά:
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
Μια συνάρτηση επιστροφής κλήσης που εκτελείται κάθε φορά που αλλάζει ο αριθμός σχολίων. Αυτό είναι χρήσιμο για την ενημέρωση στοιχείων UI όπως badges ή τίτλους σελίδας.

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

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

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

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

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

Για μια πλήρη λίστα όλων των διαθέσιμων επιλογών διαμόρφωσης που κληρονομούνται από το βασικό widget, δείτε την κύρια τεκμηρίωση διαμόρφωσης του FastComments.
Συμπεριφορά Επιλογής Κειμένου 
Πώς λειτουργεί η επιλογή κειμένου
Όταν οι χρήστες επιλέγουν κείμενο μέσα στο δοχείο Collab Chat, το widget καταγράφει αυτήν την επιλογή και τους επιτρέπει να ξεκινήσουν μια συζήτηση. Η επιλογή μπορεί να είναι τόσο μικρή όσο μια μεμονωμένη λέξη ή τόσο μεγάλη όσο πολλαπλές παραγράφους που εκτείνονται σε διαφορετικά στοιχεία.
Καθυστέρηση επιλογής
Σε επιτραπέζιες συσκευές, υπάρχει καθυστέρηση 3,5 δευτερολέπτων μεταξύ της στιγμής που ο χρήστης επιλέγει κείμενο και της εμφάνισης του προτροπής συζήτησης. Αυτό αποφεύγει το τρεμόπαιγμα της διεπαφής όταν οι χρήστες απλώς επισημαίνουν κείμενο για αντιγραφή ή ανάγνωση. Σε κινητές συσκευές, η προτροπή εμφανίζεται αμέσως καθώς η επιλογή κειμένου είναι πιο σκόπιμη σε οθόνες αφής.
Μοναδικά αναγνωριστικά συνομιλιών
Κάθε συνομιλία παίρνει ένα μοναδικό urlId που συνδυάζει το URL της σελίδας, το μονοπάτι του στοιχείου στο DOM και τη σειριοποιημένη περιοχή κειμένου. Αυτό διασφαλίζει ότι κάθε επιλογή κειμένου δημιουργεί μια ξεχωριστή συνομιλία που μπορεί να βρεθεί ξανά αργότερα.
Εάν παρέχετε ένα προσαρμοσμένο urlId στη ρύθμισή σας, θα συνδυαστεί με το μονοπάτι του στοιχείου και την περιοχή κειμένου για να δημιουργήσει το τελικό αναγνωριστικό.
Οπτικές επισημάνσεις
Όταν υπάρχει συζήτηση για μια συγκεκριμένη επιλογή κειμένου, το κείμενο αυτό λαμβάνει μια οπτική επισήμανση. Η επισήμανση υλοποιείται χρησιμοποιώντας χρώματα φόντου και εμφανίζεται όταν ο δείκτης του ποντικιού βρίσκεται πάνω ή όταν το συνδεδεμένο παράθυρο συνομιλίας είναι ανοιχτό.
Το σύστημα επισήμανσης λειτουργεί τυλίγοντας το επιλεγμένο κείμενο σε ένα ειδικό στοιχείο που μπορεί να μορφοποιηθεί. Αυτή η προσέγγιση διασφαλίζει ότι οι επισημάνσεις παραμένουν ακριβείς ακόμη και όταν η υποκείμενη δομή HTML είναι πολύπλοκη.
Τοποθέτηση παραθύρου συνομιλίας
Όταν ένας χρήστης κάνει κλικ σε μια επισήμανση ή δημιουργεί μια νέα σημείωση, εμφανίζεται ένα παράθυρο συνομιλίας κοντά στο επιλεγμένο κείμενο. Το widget υπολογίζει αυτόματα την καλύτερη θέση για αυτό το παράθυρο με βάση τον διαθέσιμο χώρο του viewport.
Το σύστημα τοποθέτησης χρησιμοποιεί κλάσεις CSS όπως to-right, to-left, to-top, και to-bottom για να υποδείξει προς ποια κατεύθυνση πρέπει να επεκταθεί το παράθυρο συνομιλίας από την επισήμανση. Σε κινητές συσκευές (οθόνες κάτω των 768px), το παράθυρο συνομιλίας εμφανίζεται πάντα σε πλήρη οθόνη για καλύτερη ευχρηστία.
Διαστάσεις παραθύρου συνομιλίας
Τα παράθυρα συνομιλίας είναι 410px πλάτος σε επιτραπέζιους υπολογιστές με απόσταση 20px και ένα οπτικό βέλος 16px που δείχνει προς το επισημασμένο κείμενο. Αυτές οι διαστάσεις είναι σταθερές για να εξασφαλίσουν συνεπή συμπεριφορά, αλλά μπορείτε να προσαρμόσετε την εμφάνιση με CSS.
Επιλογές που διασχίζουν πολλαπλά στοιχεία
Οι χρήστες μπορούν να επιλέξουν κείμενο που εκτείνεται σε πολλά στοιχεία HTML, όπως να επισημάνουν από το μέσο μιας παραγράφου μέχρι την αρχή μιας άλλης. Το σύστημα σειριοποίησης περιοχής χειρίζεται αυτό σωστά και θα επισημάνει όλο το επιλεγμένο κείμενο ακόμα και όταν διασχίζει όρια στοιχείων.
Συμβατότητα περιηγητή
Το σύστημα επιλογής κειμένου χρησιμοποιεί το τυπικό API window.getSelection() το οποίο υποστηρίζεται σε όλους τους σύγχρονους περιηγητές. Για παλαιότερες εκδόσεις του Internet Explorer, υπάρχει fallback στο document.selection για συμβατότητα.
Διατήρηση επιλογής
Μόλις δημιουργηθεί μια συνομιλία για μια επιλογή κειμένου, αυτή η σημείωση διατηρείται ακόμη και αν η σελίδα φορτωθεί ξανά. Η σειριοποιημένη περιοχή και το μονοπάτι DOM επιτρέπουν στο widget να αποκαταστήσει τις επισημάνσεις στην ακριβή ίδια θέση όταν οι χρήστες επιστρέψουν στη σελίδα.
Αυτό λειτουργεί αξιόπιστα εφόσον το περιεχόμενο της σελίδας σας παραμένει σταθερό. Εάν αλλάξετε το περιεχόμενο του κειμένου ή αναδιαρθρώσετε το HTML σας, οι υπάρχουσες σημειώσεις ενδέχεται να μην ευθυγραμμίζονται σωστά με το κείμενο. Για τον λόγο αυτό, είναι καλύτερο να αποφεύγετε μεγάλες αλλαγές περιεχομένου σε σελίδες με ενεργές σημειώσεις, ή να εξετάσετε τη μετανάστευση των σημειώσεων όταν οι αλλαγές περιεχομένου είναι απαραίτητες.
Προσαρμογή 
Υποστήριξη Σκοτεινής Λειτουργίας
Δυναμική Σκοτεινή Λειτουργία
If your site's dark mode is controlled by adding a .dark class to the body element, the Collab Chat UI will automatically respect this without requiring reinitialization. The widget's styles are designed to respond to the presence of this class.

Προσαρμοσμένο στυλ με CSS
You can customize the appearance of highlights, chat windows, and other elements using CSS. The widget adds specific classes that you can target in your stylesheet.
Text highlights use the FastComments comment bubble styling system, so any customizations you've applied to the standard commenting widget will also affect Collab Chat.
Προσαρμογή επάνω μπάρας
The top bar shows the number of users online and the number of discussions. You can customize its position by providing a custom element as the topBarTarget:

Or disable it entirely by setting it to null:

Συμπεριφορά σε κινητές συσκευές
On screens under 768px wide, Collab Chat automatically switches to a mobile-optimized layout. Chat windows appear fullscreen instead of floating next to the text, and the selection delay is removed for more immediate interaction.
This behavior is built-in and doesn't require any configuration. The widget detects screen size automatically and adjusts accordingly.
Εμφάνιση παραθύρου συνομιλίας
Chat windows are 410px wide on desktop with a 16px arrow pointing to the highlighted text. The windows position themselves automatically based on available viewport space, using positioning classes like to-right, to-left, to-top, and to-bottom.
You can add custom CSS to adjust colors, fonts, spacing, or other visual properties of these windows. The chat windows use the same component structure as the standard FastComments widget, so they inherit any global customizations you've applied.
Τοπικοποίηση
Collab Chat supports all the same localization options as the standard FastComments widget. Set the locale option to display UI text in different languages:

FastComments supports dozens of languages. The locale setting affects all UI text including prompts, buttons, and placeholder text.
Κληρονομημένες επιλογές προσαρμογής
Since Collab Chat extends the standard commenting widget, it inherits all customization options from the base widget. This includes custom CSS classes, custom translations, avatar customization, date formatting, and much more.
See the main FastComments customization documentation for the complete list of customization options available.
Χρήση προσαρμοσμένων γραμματοσειρών
If your site uses custom fonts, the Collab Chat UI will inherit those fonts from your page's CSS. You may have to create a widget customization rule and @import any fonts in the custom CSS in that rule if you
want the floating chat window to use the same fonts.
Ζωντανός Συγχρονισμός 
Ενημερώσεις σε Πραγματικό Χρόνο
Το Collab Chat χρησιμοποιεί συνδέσεις WebSocket για να συγχρονίζει όλες τις συνομιλίες σε πραγματικό χρόνο σε όλους τους συνδεδεμένους χρήστες. Όταν κάποιος δημιουργεί μια νέα σημείωση, προσθέτει ένα σχόλιο ή διαγράφει μια συζήτηση, όλοι οι άλλοι χρήστες που βλέπουν την ίδια σελίδα βλέπουν την ενημέρωση αμέσως χωρίς να χρειάζεται ανανέωση.
Πώς λειτουργεί ο συγχρονισμός WebSocket
Όταν αρχικοποιείτε το Collab Chat, το widget ανοίγει μια σύνδεση WebSocket προς τους διακομιστές της FastComments. Αυτή η σύνδεση παραμένει ανοιχτή για τη διάρκεια της συνεδρίας του χρήστη και ακούει για ενημερώσεις σχετικές με την τρέχουσα σελίδα.
Το σύστημα WebSocket χρησιμοποιεί τρεις τύπους broadcast μηνυμάτων για το Collab Chat. Το event new-text-chat ενεργοποιείται όταν κάποιος δημιουργεί μια νέα σημείωση στη σελίδα. Το event updated-text-chat ενεργοποιείται όταν κάποιος ενημερώνει μια υπάρχουσα συζήτηση. Το event deleted-text-chat ενεργοποιείται όταν κάποιος διαγράφει μια σημείωση.
Σύστημα Broadcast ID
Για να αποτραπεί το φαινόμενο ηχώ όπου οι χρήστες βλέπουν τις δικές τους ενέργειες να εκπέμπονται ξανά σε αυτούς, κάθε ενημέρωση περιλαμβάνει ένα μοναδικό broadcastId. Όταν ένας χρήστης δημιουργεί ή ενημερώνει μια σημείωση, ο client του δημιουργεί ένα UUID για αυτήν την ενέργεια. Όταν το WebSocket εκπέμπει την ενημέρωση πίσω σε όλους τους clients, ο αρχικός client αγνοεί την ενημέρωση επειδή ταιριάζει με το δικό του broadcastId.
Αυτό εξασφαλίζει ομαλή αλληλεπίδραση όπου οι χρήστες βλέπουν τις αλλαγές τους αμέσως στο UI χωρίς να περιμένουν την εμπρόσθια-οπισθιά μετάδοση μέσω του διακομιστή, ενώ ταυτόχρονα διασφαλίζεται ότι όλοι οι άλλοι χρήστες λαμβάνουν την ενημέρωση.
Ζωντανή καταμέτρηση χρηστών
Η επάνω γραμμή εμφανίζει τον αριθμό των χρηστών που αυτή τη στιγμή βλέπουν τη σελίδα. Αυτή η καταμέτρηση ενημερώνεται σε πραγματικό χρόνο καθώς οι χρήστες συνδέονται και αποσυνδέονται. Ο αριθμός χρηστών παρέχεται μέσω της ίδιας σύνδεσης WebSocket και αυξομειώνεται αυτόματα βάσει των γεγονότων σύνδεσης και αποσύνδεσης.
Ανθεκτικότητα σύνδεσης
Εάν η σύνδεση WebSocket διακοπεί λόγω προβλημάτων δικτύου ή συντήρησης του διακομιστή, το widget προσπαθεί αυτόματα να επανασυνδεθεί. Κατά τη διάρκεια της περιόδου επανασύνδεσης, οι χρήστες μπορούν να συνεχίσουν να αλληλεπιδρούν με τις υπάρχουσες σημειώσεις, αλλά δεν θα βλέπουν ενημερώσεις σε πραγματικό χρόνο από άλλους χρήστες μέχρι να αποκατασταθεί η σύνδεση.
Μόλις επανασυνδεθεί, το widget επανασυγχρονίζει για να διασφαλίσει ότι δεν χάθηκαν ενημερώσεις. Αυτό συμβαίνει διαφανώς χωρίς να απαιτείται παρέμβαση του χρήστη.
Θέματα εύρους ζώνης
Τα μηνύματα WebSocket είναι ελαφριά και περιέχουν μόνο τις απαραίτητες πληροφορίες που χρειάζονται για τον συγχρονισμό της κατάστασης. Η δημιουργία μιας νέας σημείωσης συνήθως καταναλώνει λιγότερο από 1KB εύρους ζώνης. Το σύστημα περιλαμβάνει επίσης έξυπνη ομαδοποίηση για τη μείωση της συχνότητας των μηνυμάτων κατά τις περιόδους υψηλής δραστηριότητας.
Τα στατιστικά χρήσης σας στον πίνακα ελέγχου FastComments παρακολουθούν τα pubSubMessageCount και pubSubBandwidth ώστε να μπορείτε να επιβλέπετε τη δραστηριότητα συγχρονισμού σε πραγματικό χρόνο στις τοποθεσίες σας.
Συγχρονισμός μεταξύ καρτελών
Εάν ένας χρήστης έχει την ίδια σελίδα ανοιχτή σε πολλαπλές καρτέλες του προγράμματος περιήγησης, οι ενημερώσεις σε μια καρτέλα εμφανίζονται αμέσως στις άλλες καρτέλες. Αυτό λειτουργεί μέσω του ίδιου μηχανισμού συγχρονισμού WebSocket και δεν απαιτεί καμία επιπλέον ρύθμιση.
Ασφάλεια
Τα μηνύματα WebSocket μεταδίδονται μέσω ασφαλών συνδέσεων (WSS) και περιλαμβάνουν tenant validation για να διασφαλιστεί ότι οι χρήστες λαμβάνουν μόνο ενημερώσεις για συνομιλίες που έχουν εξουσιοδότηση να βλέπουν. Ο διακομιστής επικυρώνει όλες τις λειτουργίες πριν τις εκπέμψει για να αποτρέψει μη εξουσιοδοτημένη πρόσβαση ή παραποίηση.
Αναφορά API 
Επισκόπηση API
Το Collab Chat παρέχει τρία REST API σημεία τερματισμού για τη διαχείριση συνομιλιών κειμένου προγραμματιστικά. Αυτά τα σημεία τερματισμού σας επιτρέπουν να ανακτάτε, να δημιουργείτε και να διαγράφετε σημειώσεις χωρίς να χρησιμοποιείτε το widget του προγράμματος περιήγησης.
Πρόκειται για δημόσια σημεία τερματισμού που ταυτοποιούν τους χρήστες μέσω cookies του προγράμματος περιήγησης. Δεν χρησιμοποιούν API keys. Οι χρήστες πρέπει να έχουν συνδεθεί στο FastComments στο πρόγραμμα περιήγησής τους για να έχουν πρόσβαση σε αυτά τα σημεία τερματισμού.
Βασικό URL
Όλα τα API σημεία τερματισμού του Collab Chat βρίσκονται κάτω από:

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

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

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

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

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

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

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

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

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

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

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