Μετάβαση στο κύριο περιεχόμενο

Ειδοποιήσεις σχέσεων οντοτήτων

Οι ειδοποιήσεις σχέσεων είναι η γενικευμένη εκδοχή του e-commerce εναύσματος επιστροφής σε απόθεμα, αλλά για οποιαδήποτε προσαρμοσμένη οντότητα - θέσεις, πτήσεις, μαθήματα, παραστάσεις, ραντεβού, απόθεμα B2B. Η ιδέα είναι απλή:

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

Δηλώνετε μια γονική οντότητα - τον κατάλογο του οποίου οι εγγραφές αλλάζουν (π.χ. concert_tickets ή series) - και επιλέγετε πώς βρίσκεται το κοινό: είτε μια σχετιζόμενη λίστα εγγεγραμμένων (μια οντότητα λίστας αναμονής / «ακολούθησης») είτε τα άτομα που εκτέλεσαν ένα σχετικό συμβάν (παρακολούθησαν / είδαν). Δείτε παρακάτω το Δύο τρόποι ορισμού του κοινού.

Όταν το παρακολουθούμενο πεδίο μιας γονικής εγγραφής κάνει μετάβαση, το Joryio επιλύει αυτό το κοινό και εκπέμπει ένα συμβάν ανά χρήστη που μπορείτε να χρησιμοποιήσετε ως έναυσμα εισόδου σε journey ή καμπάνια - με αποφυγή διπλοτύπων ανά άτομο, ώστε οι ασταθείς τιμές να μην μπορούν να βομβαρδίσουν κανέναν.

Γιατί δύο οντότητες;​

Η ενσωματωμένη λειτουργία επιστροφής προϊόντος σε απόθεμα είναι υπόθεση ενός κλικ επειδή ο κατάλογος προϊόντων έχει γνωστή μορφή (ένα πεδίο αποθέματος, μια λίστα εγγεγραμμένων). Οι προσαρμοσμένες οντότητες είναι ελεύθερης μορφής - το Joryio δεν μπορεί να μαντέψει ποιο πεδίο σημαίνει «διαθέσιμο» ή ποια οντότητα κρατά τη λίστα αναμονής - οπότε το δηλώνετε μία φορά στις ρυθμίσεις της γονικής οντότητας.

Για τα περισσότερα καταστήματα e-commerce, ο κατάλογος προϊόντων παραμένει ο εύκολος δρόμος. Καταφύγετε στις ειδοποιήσεις σχέσεων όταν ο κατάλογός σας δεν είναι προϊόντα, ή όταν το κοινό είναι μια ρητή λίστα και όχι συναγόμενη πρόθεση περιήγησης.

Δύο τρόποι ορισμού του κοινού​

Πριν από τη ρύθμιση, η βασική επιλογή - ποιος ειδοποιείται:

  • Συμπεριφορικό (audienceSource: "event") - τα άτομα που εκτέλεσαν ένα συμβάν πρόθεσης (π.χ. Watched Episode, Viewed Flight) που αναφέρεται στην εγγραφή, μέσα σε ένα παράθυρο αναδρομής. Καμία εγγραφή ακολούθησης/λίστας αναμονής προς συντήρηση - το κοινό είναι η συμπεριφορά. Αντικατοπτρίζει τον τρόπο με τον οποίο η επιστροφή προϊόντος σε απόθεμα χτίζει το κοινό της από συμβάντα περιήγησης. Ιδανικό για «ειδοποίησε όλους όσους παρακολούθησαν / είδαν».
  • Ρητό (audienceSource: "child_entity", προεπιλογή) - οι γραμμές μιας σχετιζόμενης οντότητας εγγραφής (μια λίστα αναμονής «ειδοποίησέ με», μια λίστα «ακολούθησε αυτήν την παράσταση»). Ιδανικό όταν τα άτομα εγγράφονται σκόπιμα, ανεξάρτητα από οποιαδήποτε συμπεριφορά.

Δεν χρειάζεστε οντότητα ακολούθησης για την περίπτωση VOD - δείτε το Παράδειγμα 2.

Το «Ειδοποίησέ με» ως συμβάν έναντι οντότητας λίστας αναμονής​

Μια συχνή ερώτηση: αν ένα πάτημα στο «Ειδοποίησέ με» εκπέμπει ένα συμβάν (Notify Me με ένα product_id), χρειάζεστε ακόμη οντότητα λίστας αναμονής; Συνήθως όχι - στρέψτε τη λειτουργία συμβάντος σε αυτό (intentEvent: "Notify Me", intentRefProperty: "product_id") και τελειώσατε.

Το μόνο πράγμα που σας γυρίζει πίσω σε μια θυγατρική οντότητα είναι η ανθεκτικότητα. Ένα κοινό βασισμένο σε συμβάντα οριοθετείται από δύο πράγματα:

  • την αναδρομή (intentLookbackDays), και
  • τη διατήρηση συμβάντων - το TTL διατήρησης δεδομένων του χώρου εργασίας σας διαγράφει τελικά το συμβάν, και όταν χαθεί, η λειτουργία συμβάντος δεν μπορεί πλέον να το δει.

Ο χρόνος επαναφοράς αποθέματος είναι απροσδιόριστος - ένα είδος μπορεί να επιστρέψει την επόμενη εβδομάδα ή σε οκτώ μήνες. Αν το συμβάν «ειδοποίησέ με» έχει «γεράσει» μέχρι τη στιγμή της επαναφοράς, η λειτουργία συμβάντος χάνει αυτό το άτομο· μια γραμμή λίστας αναμονής επιμένει μέχρι να την καθαρίσετε. Άρα:

  • Σύντομος, προβλέψιμος ορίζοντας (νέα επεισόδια, γρήγορες επαναφορές) → λειτουργία συμβάντος, χωρίς οντότητα.
  • Απροσδιόριστος ορίζοντας, ή θέλετε μια διαχειρίσιμη λίστα «ειδοποίησε μία φορά και μετά αφαίρεσε» → θυγατρική οντότητα λίστας αναμονής.

Ρύθμιση​

Ορίζεται στη γονική οντότητα. Στην εφαρμογή: Οντότητες -> επεξεργασία της οντότητας -> Ρυθμίσεις -> Ειδοποίηση των ατόμων που συνδέονται με μια εγγραφή - ενεργοποιήστε τον διακόπτη και η ενότητα εμφανίζει το πεδίο παρακολούθησης, τι μετρά ως αλλαγή, το συμβάν προς εκπομπή, τον χρόνο αναμονής, ποιος λαμβάνει την ειδοποίηση και τον κανόνα «παράλειψη ατόμων που ήδη ενήργησαν». Κάθε στοιχείο αντιστοιχεί ένα προς ένα σε ένα κλειδί του settings.relationshipAlert, που είναι αυτό που ορίζουν το API και ο assistant:

ΠεδίοΣημασίαΠαράδειγμα
enabledΕνεργοποιεί την ειδοποίησηtrue
triggerModeΤι μετρά ως ενεργοποίηση στο field (δείτε παρακάτω)"restock"
fieldΤο γονικό πεδίο του οποίου η μετάβαση ενεργοποιεί την ειδοποίηση"available"
eventNameΤο συμβάν ανά χρήστη που θα εκπέμπεται"back_in_stock"
cooldownDaysΠαράθυρο καταστολής ανά (άτομο, εγγραφή) (προεπιλογή 7)7
audienceSource"child_entity" (προεπιλογή) ή "event""event"
childEntity(λειτουργία θυγατρικής) εσωτερικό όνομα της οντότητας λίστας αναμονής/ακολουθήσεων"ticket_waitlist"
childRefField(λειτουργία θυγατρικής) πεδίο στις θυγατρικές γραμμές που κρατά το id της γονικής εγγραφής"ticketId"
intentEvent(λειτουργία συμβάντος) το συμβάν πρόθεσης του οποίου το κοινό θα ειδοποιηθεί"Watched Episode"
intentRefProperty(λειτουργία συμβάντος) ιδιότητα συμβάντος που κρατά το id της γονικής εγγραφής"series_id"
intentLookbackDays(λειτουργία συμβάντος) πόσο πίσω να κοιτάζει (προεπιλογή 90)90
minDropPct(λειτουργία decrease) ελάχιστη πτώση, ως ποσοστό της προηγούμενης τιμής, για να ενεργοποιηθεί (προεπιλογή 5)5

Λειτουργίες εναύσματος

  • restock - ένας αριθμός πηγαίνει από ≤ 0 σε > 0 (επιστροφή σε απόθεμα). Προεπιλογή.
  • increase - ένας αριθμός αυξάνεται (π.χ. ένας μετρητής επεισοδίων 8 → 9).
  • changed - μια τιμή αλλάζει σε νέα, μη κενή τιμή (π.χ. ένα id «τελευταίου επεισοδίου»).
  • decrease - ένας θετικός αριθμός πέφτει κατά τουλάχιστον minDropPct τοις εκατό σε άλλον θετικό αριθμό (π.χ. μια τιμή δωματίου 200 → 180). Το αντίστοιχο για προσαρμοσμένους καταλόγους της ενσωματωμένης πτώσης τιμής - δείτε το Παράδειγμα 3.

Στη λειτουργία θυγατρικής οντότητας, η θυγατρική οντότητα πρέπει να δηλώνει ένα User Link (ποιο πεδίο αντιστοιχίζεται σε επαφή, μέσω user id / external id / email / τηλεφώνου / γνωρίσματος) - έτσι κάθε γραμμή επιλύεται σε ένα άτομο. Στη λειτουργία συμβάντος, το user_id του συμβάντος πρόθεσης είναι η επαφή. Μια προηγούμενη άγνωστη τιμή δεν ενεργοποιεί ποτέ (για τις αριθμητικές λειτουργίες), ώστε οι πρώτες συμπληρώσεις να μην προκαλούν ψευδείς ειδοποιήσεις.


Παράδειγμα 1 - Εισιτήρια συναυλίας ξανά σε διαθεσιμότητα​

Στόχος: μια παράσταση εξαντλείται· όταν κυκλοφορήσουν ξανά εισιτήρια, ειδοποιήστε όλους όσοι ζήτησαν να ενημερωθούν.

  1. Γονική οντότητα concert_tickets με ένα αριθμητικό πεδίο available.

  2. Θυγατρική οντότητα ticket_waitlist με πεδία ticketId (η παράσταση/εγγραφή που αναφέρει) και email. Ορίστε το User Link της στο email.

  3. Στην concert_tickets, ορίστε:

    {
    "relationshipAlert": {
    "enabled": true,
    "triggerMode": "restock",
    "field": "available",
    "childEntity": "ticket_waitlist",
    "childRefField": "ticketId",
    "eventName": "back_in_stock",
    "cooldownDays": 30
    }
    }
  4. Όταν κάποιος πατά «Ειδοποίησέ με», η εφαρμογή/ο ιστότοπός σας προσθέτει μια γραμμή στην ticket_waitlist: { ticketId: "SHOW-A", email: "[email protected]" }.

  5. Όταν το available της concert_tickets/SHOW-A πάει 0 → 50, το Joryio εκπέμπει ένα συμβάν back_in_stock για κάθε επαφή στη λίστα αναμονής.

Χτίστε ένα journey ενός βήματος (ή μια καμπάνια με έναυσμα) που εισάγεται μέσω του back_in_stock. Εξατομικεύστε το με τα πεδία της ίδιας της εγγραφής, τα οποία ταξιδεύουν μαζί με το συμβάν:

{{ event.name }} tickets are back! Grab yours before they sell out again.

Το συμβάν μεταφέρει επίσης τα event.record_id, event.new_value (το νέο απόθεμα) και κάθε βαθμωτό πεδίο της εγγραφής.


Παράδειγμα 2 - Νέο επεισόδιο μιας σειράς που κάποιος παρακολουθεί (VOD / τύπου Netflix)​

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

Χρειάζομαι οντότητα «ακολουθήσεων», ή μπορώ απλώς να χρησιμοποιήσω ένα συμβάν παρακολούθησης; Μπορείτε να χρησιμοποιήσετε το συμβάν παρακολούθησης - και για το VOD αυτή είναι η φυσική επιλογή. Ήδη εκπέμπετε ένα συμβάν Watched Episode (ή watch_series) όταν κάποιος παίζει ένα επεισόδιο· στρέψτε την ειδοποίηση σε αυτό το συμβάν και το Joryio ειδοποιεί όλους όσοι παρακολούθησαν πρόσφατα τη σειρά. Καμία εγγραφή ακολούθησης προς δημιουργία ή συντήρηση. Χρησιμοποιήστε οντότητα ακολουθήσεων μόνο αν θέλετε μια ρητή λίστα «ακολούθησε αυτήν την παράσταση» με συνειδητή εγγραφή, ξεχωριστή από την παρακολούθηση.

Είναι το ίδιο με την επαναφορά αποθέματος ή διαφορετικό; Η πλευρά του κοινού εδώ χρησιμοποιεί συμπεριφορά αντί για λίστα αναμονής (αυτή είναι η επιλογή audienceSource: "event"), και το έναυσμα διαφέρει επίσης: ένα νέο επεισόδιο δεν είναι αλλαγή αποθέματος 0 → >0, είναι ένας μετρητής επεισοδίων που ανεβαίνει (ή ένα id «τελευταίου επεισοδίου» που αλλάζει). Ίδιος μηχανισμός, δύο διαφορετικές ρυθμίσεις.

Τι χρειάζεστε - μόνο μία οντότητα:

  1. Γονική οντότητα series με:

    • ένα πεδίο εμφάνισης όπως title,
    • ένα αριθμητικό πεδίο episodeCount (ή μια συμβολοσειρά latestEpisodeId).
    • Καμία θυγατρική οντότητα.
  2. Στη series, ορίστε:

    {
    "relationshipAlert": {
    "enabled": true,
    "triggerMode": "increase",
    "field": "episodeCount",
    "audienceSource": "event",
    "intentEvent": "Watched Episode",
    "intentRefProperty": "series_id",
    "intentLookbackDays": 90,
    "eventName": "new_episode",
    "cooldownDays": 1
    }
    }

    (Προτιμήστε "triggerMode": "changed" με "field": "latestEpisodeId" αν παρακολουθείτε το νεότερο επεισόδιο με id αντί για τρέχοντα μετρητή.)

  3. Η σύνδεση είναι η ιδιότητα του συμβάντος. Το player σας στέλνει ήδη, σε κάθε αναπαραγωγή, κάτι σαν:

    { "event": "Watched Episode", "series_id": "S-42", "episode": 12 }

    Το intentRefProperty: "series_id" είναι αυτό που συνδέει μια παρακολούθηση με την εγγραφή series

    • πρέπει να ταιριάζει με το id ή την τιμή πρωτεύοντος κλειδιού της εγγραφής (S-42).
  4. Πώς ενεργοποιείται: όταν η εισαγωγή καταλόγου σας ανεβάσει το episodeCount της series/S-42 8 → 9 (μια κανονική ενημέρωση εγγραφής), το Joryio ρωτά ποιοι εκτέλεσαν Watched Episode με series_id = S-42 τις τελευταίες 90 ημέρες και εκπέμπει ένα συμβάν new_episode για καθέναν από αυτούς.

  5. Χτίστε ένα journey/καμπάνια που εισάγεται μέσω του new_episode:

    New episode of {{ event.name }} is out now. Pick up where you left off →

Αν προτιμάτε ρητή λίστα ακολούθησης αντί για συμπεριφορά παρακολούθησης, κρατήστε το triggerMode: "increase" αλλά χρησιμοποιήστε το κοινό θυγατρικής οντότητας: προσθέστε μια οντότητα series_follows (seriesId, userId, User Link → userId), ορίστε audienceSource: "child_entity", childEntity: "series_follows", childRefField: "seriesId", και προσθέτετε μια γραμμή ακολούθησης όταν κάποιος πατά Follow.

Επαναφορά αποθέματος έναντι νέου επεισοδίου με μια ματιά

Επαναφορά εισιτηρίων συναυλίαςΝέο επεισόδιο (VOD)
Απαιτούμενες οντότητεςγονική + θυγατρική λίστα αναμονήςμόνο η γονική
Κοινόγραμμές ticket_waitlist (ρητή εγγραφή)συμβάν Watched Episode (συμπεριφορά)
audienceSourcechild_entityevent
Παρακολουθούμενο πεδίοavailable (απόθεμα)episodeCount / latestEpisodeId
triggerModerestock (0 → >0)increase / changed
Εκπεμπόμενο συμβάνback_in_stocknew_episode

Παράδειγμα 3 - «Η τιμή για τις ημερομηνίες σας μόλις έπεσε» (τιμές ξενοδοχείου)​

Στόχος: ένας επισκέπτης έψαξε διαμονή και αποθήκευσε τις ημερομηνίες· όταν η τιμή για εκείνο το δωμάτιο και εκείνες τις ημερομηνίες πέσει, ενημερώστε τον - όπως κάνει η ενσωματωμένη πτώση τιμής για προϊόντα Shopify και WooCommerce, αλλά για έναν κατάλογο που το Joryio δεν συγχρονίζει.

  1. Γονική οντότητα hotel_rates με επιχειρησιακό πρωτεύον κλειδί rateId (μία γραμμή ανά τύπο δωματίου και εύρος ημερομηνιών), πεδίο εμφάνισης hotel και αριθμητικό πεδίο rate.

  2. Κοινό - είτε μια θυγατρική οντότητα saved_searches (rateId, email, User Link → email) που γεμίζει όταν ο επισκέπτης αποθηκεύει τις ημερομηνίες, είτε λειτουργία συμβάντος πάνω στο συμβάν Rate Viewed που ο ιστότοπος κρατήσεών σας ήδη στέλνει με ένα rate_id.

  3. Στο hotel_rates, ορίστε:

    {
    "relationshipAlert": {
    "enabled": true,
    "triggerMode": "decrease",
    "minDropPct": 5,
    "field": "rate",
    "childEntity": "saved_searches",
    "childRefField": "rateId",
    "eventName": "rate_drop",
    "cooldownDays": 3,
    "excludeEvent": "Booking Completed",
    "excludeRefProperty": "rate_id"
    }
    }
  4. Όταν η ροή τιμών σας ενημερώσει το hotel_rates/R-1 rate 200 → 180 (πτώση 10%, πάνω από το όριο του 5%), το Joryio εκπέμπει ένα συμβάν rate_drop για κάθε επισκέπτη συνδεδεμένο με αυτή την τιμή - μείον όποιον την έχει ήδη κρατήσει (excludeEvent). Μια ενημέρωση 200 → 195 (2,5%) δεν ενεργοποιεί· ούτε μια πρώτη τιμή, μια τιμή που ανεβαίνει ή μια τιμή που πάει στο 0 (αυτό είναι εξάντληση, όχι προσφορά).

  5. Φτιάξτε ένα journey με είσοδο το rate_drop. Εκτός από τα πεδία της εγγραφής, το συμβάν μεταφέρει το ζεύγος τιμών από το οποίο μετρήθηκε η πτώση:

    {{ event.hotel }} για τις ημερομηνίες σας κοστίζει τώρα {{ event.new_value }} - {{ event.drop_pct }}% κάτω από {{ event.old_value }}.

Ιδιότητες μιας ενεργοποίησης decrease

ΙδιότηταΣημασία
old_valueΗ τιμή του πεδίου πριν την ενημέρωση
new_valueΗ τιμή του πεδίου μετά την ενημέρωση
drop_pctΗ πτώση ως ποσοστό της old_value, στρογγυλεμένη σε 1 δεκαδικό (10 για 200 → 180)

Το drop_pct έχει το ίδιο όνομα και την ίδια σημασία με το ενσωματωμένο συμβάν price_drop, ώστε μια συνθήκη journey γραμμένη για το ένα να ισχύει και για το άλλο. Το ζεύγος τιμών είναι old_value / new_value και όχι old_price / new_price, γιατί εδώ το παρακολουθούμενο πεδίο μπορεί να είναι οποιοσδήποτε αριθμός - τιμή, χρέωση, εισιτήριο, χρόνος αναμονής.

Μια περαιτέρω πτώση σε νέα τιμή (180 → 160) είναι ξεχωριστή μετάβαση και ειδοποιεί ξανά μετά την περίοδο αναμονής· η ίδια τιμή που φτάνει ξανά όχι.


Εξαίρεση ατόμων που έχουν ήδη ενεργήσει​

Αν στέλνετε κάποιο διάστημα μετά την κυκλοφορία, μάλλον δεν θέλετε να «σκουντήξετε» άτομα που έχουν ήδη δει το νέο επεισόδιο (ή έχουν ήδη αγοράσει το είδος που επανήλθε σε απόθεμα). Υπάρχουν δύο επίπεδα, και συχνά θα χρησιμοποιήσετε και τα δύο:

1. Παραλείψτε τους τη στιγμή της ενεργοποίησης - excludeEvent​

Η ειδοποίηση μπορεί να αφαιρέσει από το κοινό οποιονδήποτε έχει ήδη εκτελέσει ένα συμβάν για τη νέα τιμή αυτής της μετάβασης. Για το παράδειγμα VOD, προσθέστε στη ρύθμιση:

{
"excludeEvent": "Watched Episode",
"excludeRefProperty": "series_id",
"excludeValueProperty": "episode",
"excludeLookbackDays": 30
}

Τώρα, όταν βγαίνει το επεισόδιο 9, το Joryio ειδοποιεί τα άτομα που παρακολούθησαν τη σειρά αλλά αφαιρεί οποιονδήποτε είδε ήδη το επεισόδιο 9 (series_id = αυτή η σειρά και episode = η νέα τιμή). Το excludeValueProperty είναι αυτό που το «καρφώνει» στο συγκεκριμένο νέο επεισόδιο - για να ευθυγραμμιστεί αυτό, η νέα τιμή του πεδίου πρέπει να ταιριάζει με το id που μεταφέρει το συμβάν παρακολούθησής σας (αυτό είναι πιο καθαρό με triggerMode: "changed"

  • latestEpisodeId, ή όταν οι αριθμοί επεισοδίων ισούνται με τον μετρητή). Λειτουργεί και για την επαναφορά αποθέματος - ορίστε το excludeEvent στο συμβάν αγοράς σας για να παραλείψετε τους πρόσφατους αγοραστές.

2. Επανέλεγχος τη στιγμή της αποστολής - η ακριβής απάντηση για καθυστερημένες αποστολές​

Η εξαίρεση τη στιγμή της ενεργοποίησης γνωρίζει μόνο ποιος παρακολούθησε μέχρι τη στιγμή που ενεργοποιείται η ειδοποίηση. Αν σκόπιμα περιμένετε 2 ημέρες πριν στείλετε, κάποιοι θα παρακολουθήσουν μέσα σε αυτές τις δύο ημέρες - και μόνο ένας έλεγχος τη στιγμή της αποστολής μπορεί να τους πιάσει. Κάντε το μέσα στο journey:

  1. Έναυσμα εισόδου: new_episode.
  2. Αναμονή 2 ημερών.
  3. Συνθήκη / διακλάδωση συμπεριφοράς: ΔΕΝ έχει εκτελέσει Watched Episode όπου episode = {{ trigger.new_value }} τις τελευταίες 2 ημέρες → μόνο αυτός ο κλάδος συνεχίζει προς την αποστολή.

Αυτό επαναξιολογεί κάθε άτομο τη στιγμή ακριβώς πριν από την αποστολή, οπότε όποιος πρόλαβε στη διάρκεια της αναμονής φιλτράρεται. Χρησιμοποιήστε το excludeEvent (επίπεδο 1) για να κρατήσετε το αρχικό κοινό σφιχτό, και τη συνθήκη του journey (επίπεδο 2) για να κάνετε μια καθυστερημένη αποστολή ακριβή.

Χρήση του συμβάντος ειδοποίησης​

Όπως και να το ονομάσετε, το eventName συμπεριφέρεται όπως κάθε άλλο συμβάν στο Joryio:

  • Εμφανίζεται στο εργαλείο επιλογής συμβάντων ως έναυσμα εισόδου journey/καμπάνιας.
  • Οι ιδιότητές του (record_id, new_value, field, μαζί με τα βαθμωτά πεδία της εγγραφής και μια ετικέτα name - και, σε μια ειδοποίηση decrease, old_value και drop_pct) είναι διαθέσιμες ως event.* στη Liquid.
  • Οι αποστολές εξακολουθούν να τηρούν τη συγκατάθεση, τον αποκλεισμό και τις ώρες ησυχίας, όπως κάθε άλλη αποστολή καναλιού.

Πώς ενεργοποιείται (κάτω από το καπό)​

Η μετάβαση εντοπίζεται στη διαδρομή ενημέρωσης της οντότητας και η διανομή γίνεται εκτός του κρίσιμου μονοπατιού, ώστε ένα αργό κοινό να μην μπλοκάρει ποτέ την εγγραφή. Οι ειδοποιήσεις αποδιπλοτυπώνονται ανά (επαφή, εγγραφή) για cooldownDays, και μια θυγατρική γραμμή μετρά μόνο μία φορά ακόμη κι αν πολλές γραμμές επιλύονται στην ίδια επαφή.

Μαζικές εισαγωγές​

Οι μαζικές εισαγωγές εγγραφών δεν ενεργοποιούν ειδοποιήσεις από προεπιλογή - ώστε μια πρώτη φόρτωση να μην ξεσηκώσει ποτέ τους πάντες. Ενεργοποιήστε το ανά εισαγωγή στέλνοντας triggerAlerts: true στο endpoint μαζικής εισαγωγής. Όταν είναι ενεργοποιημένο και η οντότητα έχει επιχειρησιακό πρωτεύον κλειδί, η εισαγωγή κάνει upsert-και-diff: οι εγγραφές που υπάρχουν ήδη ενημερώνονται και οι μεταβάσεις τους ενεργοποιούνται (π.χ. μια νυχτερινή τροφοδοσία αποθέματος ή episodeCount), ενώ οι ολοκαίνουριες γραμμές ενεργοποιούν μόνο ειδοποιήσεις λειτουργίας changed (οι αριθμητικές λειτουργίες χρειάζονται προηγούμενη τιμή για να κάνουν μετάβαση).

Ξεκινώντας τη ρύθμιση​

Τρεις δρόμοι, που όλοι γράφουν την ίδια ρύθμιση relationshipAlert:

  • Στον builder - ανοίξτε τη γονική οντότητα (Οντότητες -> επεξεργασία), κατεβείτε στο Ρυθμίσεις -> Ειδοποίηση των ατόμων που συνδέονται με μια εγγραφή, ενεργοποιήστε τον διακόπτη και συμπληρώστε το πεδίο, τη λειτουργία, το συμβάν, τον χρόνο αναμονής, το κοινό και τον κανόνα παράλειψης. Ο builder προσφέρει μόνο αριθμητικά πεδία για τις αριθμητικές λειτουργίες, εμφανίζει το πεδίο ποσοστού μόνο για decrease και αρνείται να αποθηκεύσει ποσοστό εκτός ορίων. Η θυγατρική οντότητα λίστας αναμονής χρειάζεται ακόμη τη Σύνδεση με επαφή στις δικές της ρυθμίσεις.
  • Μέσω του API - στείλτε settings.relationshipAlert στην οντότητα με τα κλειδιά του παραπάνω πίνακα. Ισχύουν οι ίδιοι κανόνες: γνωστό triggerMode και minDropPct από 0 έως 100.
  • Με τον AI assistant - ζητήστε τα όλα σε ένα αίτημα: δημιουργεί τη θυγατρική οντότητα ακολουθήσεων/λίστας αναμονής, ορίζει τη ρύθμιση και χτίζει το journey ειδοποίησης.

Η απενεργοποίηση της ειδοποίησης στον builder διατηρεί τη ρύθμιση με enabled: false, ώστε η επανενεργοποίηση αργότερα να βρίσκει τα πάντα όπως ήταν.