Τι να κάνετε αν το chat-bot απαντάει δύο φορές στον αέρα
Πρώτα προσδιορίστε τον τύπο του διπλότυπου
Δύο ίδιες απαντήσεις στη σειρά — δεν είναι μία βλάβη, αλλά τουλάχιστον δύο διαφορετικές. Πρώτη περίπτωση: το bot έλαβε ένα event, αλλά δύο φορές. Δεύτερη: το event ήρθε ένα, αλλά το έστειλε δύο φορές. Αντιμετωπίζονται διαφορετικά, γι' αυτό μην ξεκινάτε με τη διόρθωση του κώδικα — ξεκινήστε από τα logs.
Ανοίξτε το journal του bot και βρείτε τη στιγμή του διπλότυπου. Στη συνέχεια κοιτάξτε δύο πεδία: το αναγνωριστικό του event και την ώρα λήψης.
- Δύο αιτήματα με το ίδιο event_id (ή message_id, notification_id — το όνομα εξαρτάται από την πλατφόρμα) και διαφορά σε χιλιοστά του δευτερολέπτου — αυτό είναι επαναλαμβανόμενη παράδοση του ίδιου event. Αναζητήστε deduplication.
- Δύο αιτήματα με διαφορετικά αναγνωριστικά — στο κανάλι είναι πραγματικά εγγεγραμμένοι δύο handlers. Αναζητήστε τη δεύτερη εγγραφή.
Αν δεν υπάρχουν καθόλου logs, ξεκινήστε από τα πάνελ των πλατφορμών: εκεί φαίνεται ποιος είναι εγγεγραμμένος στα events του καναλιού.
Πώς φαίνεται η διπλή εγγραφή στα πάνελ
Οι πλατφόρμες δεν δείχνουν «το bot είναι συνδεδεμένο δύο φορές» σε μία γραμμή. Τα σημάδια είναι διάσπαρτα σε διάφορες ενότητες.
Twitch
Ελέγξτε την ενότητα Connections στις ρυθμίσεις του λογαριασμού — εκεί υπάρχει η λίστα των συνδεδεμένων εφαρμογών. Το ίδιο bot μπορεί να είναι εξουσιοδοτημένο και ως εφαρμογή του καναλιού και ως εφαρμογή του προσωπικού σας λογαριασμού. Επιπλέον, οι εγγραφές EventSub ζουν ξεχωριστά: η εφαρμογή μπορεί να διατηρεί ενεργή εγγραφή στο channel.chat.message αφού απενεργοποιήσατε την ενσωμάτωση στο πάνελ. Ένα δεύτερο instance του bot, που εκτελείται τοπικά, λαμβάνει επίσης events ισότιμα με το ενεργό.
YouTube
Εδώ συχνότερα φταίει όχι το ίδιο το bot, αλλά η πρόσβαση στο chat: το bot είναι συνδεδεμένο στη μετάδοση και ως moderator και ως ξεχωριστός λογαριασμός-συμμετέχων. Κοιτάξτε τη λίστα των moderators και τη λίστα των εξουσιοδοτημένων εφαρμογών του καναλιού. Ξεχωριστά — αν το bot λειτουργεί μέσω πολλών projects του Google Cloud, τα κλειδιά μπορεί να περνούν από δύο διαφορετικές διαδρομές.
Discord
Η πιο χαρακτηριστική περίπτωση: δύο εφαρμογές με το ίδιο token στον ίδιο server. Και οι δύο βλέπουν το μήνυμα στο κανάλι και και οι δύο απαντούν σε αυτό. Ελέγξτε τη λίστα των bots στον server και βεβαιωθείτε ότι στο κανάλι δεν είναι συνδεδεμένο δεύτερο webhook με το ίδιο όνομα.
Το μειονέκτημα αυτής της διαδρομής — χρειάζεστε πρόσβαση όχι μόνο στο bot, αλλά και στα πάνελ του καναλιού. Αν το κανάλι το διαχειρίζονται πολλά άτομα, το δεύτερο instance μπορεί να το σήκωσε κάποιος άλλος, και εσείς να μην το γνωρίζετε.
Επανάληψη webhook: γιατί το event έρχεται δύο φορές
Μια εξωτερική υπηρεσία παραδίδει το webhook και περιμένει επιβεβαίωση. Δεν την έλαβε στον καθορισμένο χρόνο — το στέλνει ξανά. Το δεύτερο αίτημα φέρει το ίδιο event, αλλά το bot το αντιλαμβάνεται ως νέο και απαντά ξανά. Αυτό συμβαίνει σε οποιοδήποτε κόλλημα του server: όσο μεγαλύτερο το φορτίο, τόσο συχνότερα.
Αντιμετωπίζεται με deduplication στην πλευρά του bot. Χρειάζεται ένα κλειδί που είναι ίδιο για όλα τα αντίγραφα του ίδιου event και μοναδικό για διαφορετικά. Το κλειδί λαμβάνεται από το σώμα του αιτήματος ή από τις κεφαλίδες — αυτό εξαρτάται από το API, αλλά το σχήμα είναι το ίδιο.
Παράδειγμα κλειδιού deduplication
Φανταστείτε ένα webhook για νέο donation. Στο σώμα έρχεται ένα αντικείμενο με πεδίο id — μοναδικό αριθμό συναλλαγής, που δεν αλλάζει κατά την επαναλαμβανόμενη παράδοση. Η λογική είναι η εξής:
- Κατά τη λήψη του αιτήματος, εξάγετε το id από το σώμα.
- Ελέγξτε στην αποθήκη (Redis, πίνακας στη βάση) αν εμφανίστηκε τις τελευταίες, ας πούμε, 24 ώρες.
- Αν εμφανίστηκε — απαντήστε στην υπηρεσία «έγινε αποδεκτό» και μη στείλετε τίποτα στο chat.
- Αν όχι — καταγράψτε το και επεξεργαστείτε το ως συνήθως.
Το κλειδί πρέπει να είναι ακριβώς από το event, και όχι δικό σας παραγόμενο: αν παράγετε δικό σας, δύο παραδόσεις του ίδιου event θα έχουν διαφορετικά κλειδιά, και το deduplication δεν θα λειτουργήσει. Ορισμένες πλατφόρμες δίνουν έτοιμη κεφαλίδα με αναγνωριστικό παράδοσης — τότε πάρτε αυτή, είναι πιο αξιόπιστο. Το μειονέκτημα της προσέγγισης — χρειάζεστε αποθήκη και πολιτική καθαρισμού, αλλιώς η βάση κλειδιών μεγαλώνει χωρίς όριο.
Αν το διπλότυπο ήρθε από δύο διαφορετικές πηγές
Ξεχωριστή ιστορία — όταν το event δεν επαναλαμβάνεται, αλλά έρχεται πραγματικά από δύο μέρη. Κλασικό: το bot απαντά στην εντολή και στο chat και στην προώθηση μεταξύ πλατφορμών μέσω γέφυρας. Ή η αυτόματη απάντηση είναι ρυθμισμένη σε δύο triggers που ενεργοποιούνται στην ίδια φράση.
Τέτοια διπλότυπα διαφέρουν από την επανάληψη webhook στα logs: τα αιτήματα έχουν διαφορετικές πηγές (διαφορετικές πλατφόρμες, διαφορετικοί handlers), αλλά ένα νοηματικό event. Αναζητήστε την επικάλυψη των triggers και απενεργοποιήστε ένα από αυτά. Για τη γέφυρα — μην προωθείτε τα μηνύματα του ίδιου του bot πίσω.
Έλεγχος πριν από τον αέρα
- Στείλτε μια δοκιμαστική εντολή και δείτε πόσες απαντήσεις ήρθαν.
- Απενεργοποιήστε όλες τις ενσωματώσεις εκτός από μία, επαναλάβετε.
- Ενεργοποιείτε μία-μία, μέχρι να επιστρέψει το διπλότυπο, — έτσι θα βρείτε τον ένοχο.
- Επαληθεύστε στα logs το αναγνωριστικό του event και στις δύο απαντήσεις: ίδιο — επανάληψη παράδοσης, διαφορετικό — δεύτερη εγγραφή.
Αν η αιτία δεν βρίσκεται, απενεργοποιήστε την αυτόματη απάντηση στο προβληματικό event και γράψτε στην υποστήριξη της υπηρεσίας με τα logs και την ώρα της επανάληψης. Όσο περιμένετε — διαχειριστείτε το chat χειροκίνητα: καλύτερα να χάσετε την αυτοματοποίηση για ένα βράδυ, παρά να γεμίσετε τον αέρα με ίδιες φράσεις.
Last Articles
Τι άλλαξε στον σχεδιασμό και τη λειτουργικότητα Ενημερώσαμε την ιστοσελίδα για να δουλεύετε πιο γρήγορα και πιο άνετα. Οι κύριες αλλαγές αφορούν το π..
Good afternoon, I've collected all the news during this time.: 1. The main news is that prices for twitch viewers have been greatly reduced, while Tw..
1. Χρησιμοποιήστε τον κωδικό "December2025" για έκπτωση 15% για όλους τους θεατές μας2. Μειώσαμε έως την 1η Ιανουαρίου τις βασικές τιμές για τον διαμο..
Οι υπηρεσίες Twitch είναι λειτουργώντας σταθερά, έτσι είμαστε έτοιμοι να συνεργαστούμε με τις ομάδες, μεταπωλητές, ιδιοκτήτες υπηρεσιών, ιδιοκτήτε..
Εμείς έχουμε ενημερώσει πλήρως τις υπηρεσίες Twitch viewer, και είναι τώρα εργασία σταθερά. Χρησιμοποιούμε μόνο υψηλής ποιότητας διευθύνσεις IP γι..
Hello everyone! Today, we are announcing a new feature—"Twitch Viewer Configurator". Now, you can customize any plan for your Twitch channel. Choo..
Greetings, I have compiled a guide for streamers, which will be very relevant at the moment. Now YouTube and twitch have disabled monetization from vi..
We have finally developed the APINow it will be more convenient for our partner sites to work with us.To update the maximum tariffs for YouTube, an up..
Λόγω της τεράστιας δημοτικότητας των υπηρεσιών συνεργασίας και του προγράμματος παραπομπής, φτιάξαμε έναν πίνακα συνεργασίας. Η ουσία είναι πολύ απλή:..
Οι Υπηρεσίες μας για Streamers

Shopee
Οι Υπηρεσίες μας για Δημιουργούς Περιεχομένου









