Abbiamo già esposto le ragioni strategiche altrove: l'era del blast è finita, e le notifiche basate sul comportamento sono ciò che le piattaforme premiano e gli abbonati tollerano. Questa guida è l'altra metà: come attivare effettivamente le notifiche push dagli eventi dell'app su iOS, dalla strumentazione all'handoff marketing. È scritta per lo sviluppatore che si occupa del cablaggio, con il codice che spedirai e le convenzioni che lo manterranno manutenibile.
L'architettura in un paragrafo
La tua app genera eventi denominati con proprietà tipizzate. PushEngage abbina tali eventi a regole di trigger configurate nella dashboard e le campagne vengono inviate: immediatamente, con ritardo o come sequenza multi-step con condizioni di uscita. La divisione del lavoro è il punto: l'ingegneria strumenta ogni evento una volta; il marketing crea, modifica ed elimina campagne basate su quegli eventi per sempre, senza un'altra build. La tua strumentazione è un'API per il tuo team di marketing.
trackEvent: il segnale generico
L' SDK iOS 1.0 ha introdotto trackEvent, il cavallo di battaglia per i segnali comportamentali personalizzati:
PushEngage.trackEvent(name: "product_viewed",
properties: [
"sku": "WCJ-1042",
"category": "outerwear",
"price": 189.00,
"in_stock": true
],
profileId: currentUserId, // ties the event to an identified subscriber
provider: nil,
eventType: nil) { success, error in
if !success { log(error) }
}
Tre regole che l'SDK applica, quindi progetta tenendole a mente fin dall'inizio:
- I valori delle proprietà devono essere stringhe, numeri o booleani. Array, dizionari e date vengono rifiutati lato client: appiattisci prima di inviare.
- I nomi degli eventi e le chiavi delle proprietà non devono essere vuoti. L'handler di completamento ti dice quando la validazione fallisce; registralo nelle build di debug.
- Gli handler di completamento arrivano su una coda in background. Effettua il dispatch al main prima di toccare l'interfaccia utente.
Passa profileId ogni volta che l'utente viene identificato: è ciò che consente a una campagna di seguire un cliente tra dispositivi diversi invece di seguire un dispositivo.
sendTriggerEvent: cablaggio delle campagne trigger classiche
Per le campagne create nel trigger builder della dashboard — abbandono del carrello, abbandono della navigazione, percorsi personalizzati — l'app invia sendTriggerEvent con i nomi della campagna e dell'evento configurati dal marketer, più i token di dati che il modello di notifica renderizzerà:
let trigger = TriggerCampaign(campaignName: "cart_abandonment",
eventName: "add_to_cart",
data: [
"productname": "Waxed Canvas Jacket",
"price": "$189",
"cartlink": "myapp://cart"
])
PushEngage.sendTriggerEvent(triggerCampaign: trigger) { success, error in
// background queue — dispatch before UI work
}
I token data fluiscono nel testo della notifica: ecco come "La tua giacca in tela cerata ti aspetta" viene personalizzata senza che il marketer tocchi il codice. Abbiamo percorso l'intera sequenza di recupero del carrello nel playbook sull'abbandono del carrello dell'app mobile; questa chiamata ne è il motore.
addAlert: ribasso prezzi e ritorno in stock, integrati
I due trigger di e-commerce con la maggiore intenzione non richiedono nemmeno campagne personalizzate: sono cittadini SDK di prima classe. Quando un utente guarda un prodotto, registra l'avviso:
let alert = TriggerAlert(type: .priceDrop, // or .inventory
productId: "WCJ-1042",
link: "myapp://product/WCJ-1042",
price: 189.00,
data: ["size": "M"])
PushEngage.addAlert(triggerAlert: alert) { success, error in }
PushEngage gestisce il monitoraggio, l'abbinamento e l'invio quando il prezzo scende o lo stock ritorna. Se hai letto la nostra guida alle notifiche di ribasso prezzi, questa è la registrazione lato app che fa scattare quelle campagne.
Una tassonomia di eventi che scala
Il debito di strumentazione è reale: dopo sei mesi, nessuno ricorda se l'evento sia addToCart, cart_add o CartUpdated. Scegliete le convenzioni fin dal primo giorno — nomi snake_case, ordinamento object_action, chiavi di proprietà singolari — e coprite il set di base del commercio:
| Evento | Proprietà chiave | Campagne che abilita |
|---|---|---|
product_viewed | sku, categoria, prezzo | Abbandono della navigazione, personalizzazione |
product_saved | sku, prezzo | Calo di prezzo, back-in-stock, agganci di recupero |
cart_updated | valore_carrello, numero_articoli, articolo_principale | Abbandono del carrello |
purchase_completed | valore_ordine, numero_articoli | Condizioni di uscita, post-acquisto, obiettivi |
search_performed | query, numero_risultati | Recupero zero risultati, segmenti di interesse |
onboarding_step | passaggio, completato | Ramificazione della serie di onboarding |
Sei eventi, strumentati una volta, alimentano la serie di onboarding, il recupero del carrello, gli agganci di recupero e ogni segmento che il tuo team di marketing richiederà quest'anno.
Testa il ciclo prima di consegnarlo
Imposta PushEngage.enableLogging = true nelle build di debug e osserva gli eventi lasciare il dispositivo. Invia ogni evento da una build di test, conferma che arrivi nella vista eventi della dashboard e invia una campagna di test end-to-end per ogni trigger. Le app di esempio nel repository SDK includono una schermata di trigger funzionante da cui puoi copiare il flusso. Quindici minuti di verifica qui risparmiano l'indagine "perché la campagna non è partita" in seguito — che di solito è un nome evento digitato male su un lato del contratto.
La consegna: cosa possiede il marketing da qui in poi
Una volta che gli eventi fluiscono, la tua parte è finita. Il marketing crea regole di trigger, scrive testi, imposta ritardi e condizioni di uscita, testa varianti A/B e allega il tracciamento degli obiettivi per l'attribuzione dei ricavi — tutto nella dashboard, tutto senza un ticket. Pubblica la tabella della tassonomia degli eventi nel wiki del tuo team come contratto tra le due parti. Poi osserva la coda delle richieste per i ticket "puoi inviare una push" andare silenziosamente a zero — che era il punto fin dall'inizio. Per la strategia che dovrebbero seguire queste campagne, consegna al tuo team di marketing la guida al marketing delle push per app.