Το webhook account_update και κάθε λόγος αποσύνδεσης
Το account_update είναι ο τρόπος με τον οποίο η Meta αναφέρει ότι άλλαξε η κατάσταση μιας σύνδεσης. Το event δείχνει τι συνέβη και, σε περίπτωση αφαίρεσης, το disconnection_info.reason δείχνει γιατί. Αυτός ο λόγος ξεχωρίζει έναν αριθμό που θα επανέλθει από έναν αριθμό που χάθηκε οριστικά.
Το event που στέλνει η Meta όταν η εφαρμογή απεγκαθίσταται από έναν λογαριασμό.
Ονομασμένοι λόγοι αποσύνδεσης που μπορεί να συνοδεύουν μια αφαίρεση.
Το χρονικό όριο αδράνειας της κύριας συσκευής, που εμφανίζεται ως PRIMARY_INACTIVITY.
Ποια events περιλαμβάνει το account_update;
Το PARTNER_REMOVED εμφανίζεται όταν η εφαρμογή απεγκαθίσταται από το WhatsApp Business Account. Αυτό είναι το έγκυρο σήμα αποσύνδεσης και αξίζει να βασιστείτε σε αυτό, αντί να συμπεραίνετε την αποσύνδεση από την αλλαγή μιας field σε false.
Το ACCOUNT_OFFBOARDED εμφανίζεται όταν ο αριθμός αποσύρεται πλήρως. Το ACCOUNT_RECONNECTED εμφανίζεται όταν επανέρχεται μια σύνδεση που είχε αφαιρεθεί. Υπάρχουν επίσης τα events επιβολής: ACCOUNT_RESTRICTION και ACCOUNT_VIOLATION, μαζί με events των οποίων τα ονόματα περιλαμβάνουν DISABLED ή BAN.
Εδώ εμφανίζονται και αποτελέσματα επαλήθευσης και έγκρισης, με ονόματα events που περιέχουν VERIFIED ή APPROVED. Ένας handler πρέπει να ελέγχει το όνομα του event και να αντιμετωπίζει ό,τι δεν αναγνωρίζει ως πληροφοριακό, αντί να αποτυγχάνει, επειδή η Meta προσθέτει events χωρίς προειδοποίηση.
Ποιοι είναι οι λόγοι αποσύνδεσης;
Είναι έξι και σημαίνουν πολύ διαφορετικά πράγματα.
Το PRIMARY_INACTIVITY είναι ο κανόνας των περίπου δεκατεσσάρων ημερών: η εφαρμογή WhatsApp Business δεν ανοίχτηκε στην κύρια συσκευή. Μπορεί να αποκατασταθεί και είναι μακράν ο συχνότερος λόγος.
Το COMPANION_INACTIVITY αφορά την ίδια κατάσταση σε συνοδευτική συσκευή, με μεγαλύτερο όριο περίπου τριάντα ημερών.
Το BUSINESS_DOWNGRADE σημαίνει ότι ο αριθμός επέστρεψε στην εφαρμογή WhatsApp για καταναλωτές. Έτσι τερματίζεται το Coexistence, επειδή το Coexistence απαιτεί την εφαρμογή Business.
Το CHANGE_NUMBER σημαίνει ότι άλλαξε ο ίδιος ο αριθμός τηλεφώνου. Το USER_RE_REGISTERED σημαίνει ότι έγινε νέα εγγραφή σε άλλη συσκευή. Το ACCOUNT_DISCONNECTED σημαίνει ότι ο client αποσύνδεσε σκόπιμα τον αριθμό ή ότι το έκανε η επιβολή κανόνων.
Ο λόγος εμφανίζεται επίσης μαζί με το disconnection_info.initiated_by, το οποίο δείχνει αν το έκανε κάποιος ή το σύστημα.
Γιατί ο λόγος είναι σημαντικότερος από το event;
Επειδή το PARTNER_REMOVED από μόνο του δεν σας λέει πώς να ενεργήσετε.
Ένας αριθμός που αφαιρέθηκε λόγω PRIMARY_INACTIVITY θα επανέλθει: η επιχείρηση ανοίγει την εφαρμογή, επανασυνδέεται και όλα συνεχίζονται. Αν το αντιμετωπίσετε ως πελάτη που αποχώρησε, θα στείλετε email ακύρωσης σε κάποιον που παραμένει πελάτης.
Ένας αριθμός που αφαιρέθηκε λόγω BUSINESS_DOWNGRADE ή ACCOUNT_DISCONNECTED είναι διαφορετική περίπτωση. Αν τον αντιμετωπίσετε ως προσωρινά αποσυνδεδεμένο, η σύνδεση μπορεί να μείνει για πάντα σε εκκρεμότητα.
Όταν μια αφαίρεση φτάνει χωρίς λόγο, το initiated_by είναι η εφεδρική ένδειξη: μια αφαίρεση που έκανε άνθρωπος δείχνει σκόπιμη ενέργεια, ενώ μια ανεξήγητη αφαίρεση από το σύστημα όχι. Αξίζει να κάνετε αυτή τη διάκριση στον κώδικα και όχι αργότερα σε μια συνομιλία με την υποστήριξη.
Συνηθισμένα λάθη
- Να αντιμετωπίζετε κάθε PARTNER_REMOVED με τον ίδιο τρόπο. Ο λόγος ξεχωρίζει δύο εβδομάδες σιωπής από έναν πελάτη που αποχώρησε.
- Να συμπεραίνετε την αποσύνδεση από μια field που έγινε false αντί από αυτό το event. Αυτό προκαλεί ψευδείς ειδοποιήσεις.
- Να αποτυγχάνετε σε όνομα event που δεν αναγνωρίζετε. Η Meta προσθέτει events και ένας handler πρέπει να αγνοεί όσα δεν γνωρίζει.
Το EasyCoexistence χειρίζεται καθέναν από αυτούς τους λόγους ξεχωριστά, καταγράφει τον λόγο στο ιστορικό της σύνδεσης και διακρίνει μια αποκαταστάσιμη αφαίρεση λόγω αδράνειας από έναν αριθμό που χάθηκε οριστικά.
Συχνές ερωτήσεις
Είναι το PARTNER_REMOVED οριστικό;
Συνήθως όχι. Οι περισσότερες περιπτώσεις συνοδεύονται από PRIMARY_INACTIVITY, που σημαίνει ότι η εφαρμογή δεν άνοιξε και η επανασύνδεση αποκαθιστά τα πάντα.
Η επανασύνδεση αποκαθιστά τον προορισμό του webhook μου;
Όχι, και εδώ βρίσκεται η παγίδα. Ο προορισμός είναι override στη συνδρομή της εφαρμογής και απεγκαθίσταται μαζί της. Πρέπει να εφαρμοστεί ξανά.
Τι είναι το COMPANION_INACTIVITY;
Η ίδια έννοια αδράνειας σε συνοδευτική συσκευή αντί για την κύρια, με μεγαλύτερο όριο περίπου τριάντα ημερών.
Μπορώ να λάβω αυτό το event χωρίς λόγο;
Ναι. Σε αυτή την περίπτωση, το disconnection_info.initiated_by είναι το μόνο σήμα που δείχνει αν η ενέργεια ήταν σκόπιμη.
Συνεχίστε την ανάγνωση
Έτοιμοι να ξεκινήσετε;
Ρυθμίστε το WhatsApp Coexistence σε λίγα λεπτά, όχι σε μήνες. Η εφαρμογή συνεχίζει να λειτουργεί στο τηλέφωνο.
Ξεκινήστε δωρεάν δοκιμήΕπαληθεύτηκε στις