Kihagyás

Üzenettípusok

A Cascade API négy üzenettípust támogat, amelyek mindegyike különböző használati esetekre és csatornákra van optimalizálva.

Áttekintés

Típus Cél Csatornák Interaktív
"tranzakció" Kritikus értesítések Mind Nem
"promó" Marketing kampányok Mind Igen (gombok)
viber_survey Szavazások és visszajelzések Viber, SMS Igen (opciók)
"flashhívás" Telefonos ellenőrzés Telefonhívás Nem

Tranzakciós üzenetek

Kritikus értesítések, például rendelés-visszaigazolások, fiókfrissítések és rendszerriasztások.

Jellemzők

  • Magas prioritású kézbesítés
  • Nincs promóciós tartalom
  • Közvetlen és tömör
  • Időérzékeny
  • Átirányítva: Telegram → Viber → RCS → SMS

Használati esetek

  • Megrendelés visszaigazolások
  • Fizetési értesítések
  • Fiókfigyelmeztetések
  • Biztonsági értesítések
  • Szállítási frissítések
  • Jelszó visszaállítása

Példa

{
  "id": "tx-order-12345",
  "fromName": "YourStore",
  "toPhone": "+380XXXXXXXXX",
  "messageType": "transaction",
  "text": "Order #12345 confirmed. Total: $99.99. Delivery: Jan 25. Track: https://example.com/track/12345",
  "ttl": 86400
}

Bevált gyakorlatok

  • ✅ Lehetőleg 160 karakternél rövidebb legyen az üzenet
  • ✅ Tartalmazza a vonatkozó tranzakciós adatokat
  • ✅ Nyomkövető linkek biztosítása
  • ✅ Használjon világos, professzionális nyelvezetet
  • ❌ Ne tartalmazzon marketing tartalmat
  • ❌ Ne használj túlzottan hangulatjeleket

Példák használati esetenként

Megrendelés visszaigazolása

{
  "messageType": "transaction",
  "text": "Order #12345 confirmed. Total: $99.99. Expected delivery: Jan 25."
}

Fizetési értesítés

{
  "messageType": "transaction",
  "text": "Payment of $150.00 to Merchant ABC successful. Transaction ID: TXN789. Balance: $850.00"
}

Biztonsági figyelmeztetés

{
  "messageType": "transaction",
  "text": "New login detected from iPhone at 10:30 AM. Location: New York. If this wasn't you, secure your account immediately."
}

Kézbesítési frissítés

{
  "messageType": "transaction",
  "text": "Your package is out for delivery! Expected arrival: 2-4 PM. Track: https://track.example.com/PKG123"
}

Promóciós üzenetek

Marketing és promóciós kampányok multimédiával és interaktív elemekkel.

Jellemzők

  • Rich media támogatás
  • Interaktív gombok
  • Cselekvésre ösztönzés
  • Hosszabb TTL elfogadható
  • Átirányítva: Telegram → Viber → RCS → SMS

Használati esetek

  • Termékbevezetések
  • Értékesítési közlemények
  • Rendezvénymeghívók
  • Hírlevél kampányok
  • Különleges ajánlatok
  • Márkaismertség

Példa

{
  "id": "promo-summer-sale",
  "fromName": "YourBrand",
  "toPhone": "+380XXXXXXXXX",
  "messageType": "promo",
  "text": "🌟 Summer Sale! Up to 50% off on selected items. Shop now: https://example.com/sale",
  "ttl": 259200
}

Változókkal

{
  "messageType": "promo",
  "text": "Hi %name=1%! Exclusive offer: Use code %name=2% for 20% off. Shop: %short_url=1%",
  "variables": [
    {"id": 1, "type": "name", "value": "John"},
    {"id": 2, "type": "name", "value": "VIP20"},
    {"id": 1, "type": "short_url", "value": "https://store.com/sale?utm=sms"}
  ]
}

Bevált gyakorlatok

  • ✅ Tartalmazzon egyértelmű cselekvésre ösztönzést
  • ✅ Használj lebilincselő nyelvet
  • ✅ Nyomkövetési paraméterek hozzáadása az URL-ekhez
  • ✅ Testreszabás változókkal
  • ✅Tesztelés több csatornán
  • ❌ Ne küldjön spamet az ügyfeleknek
  • ❌ Ne használjon félrevezető tartalmat
  • ❌ Ne lépje túl a karakterkorlátokat

Példák használati esetenként

Termékbevezetés

{
  "messageType": "promo",
  "text": "🎉 NEW ARRIVAL: iPhone 15 Pro now available! Pre-order today and get free shipping. Visit: https://store.com/iphone15"
}

Flash-kiárusítás

{
  "messageType": "promo",
  "text": "⚡ FLASH SALE: 2 hours only! Extra 30% off everything. Use code: FLASH30. Shop now: https://store.com/flash"
}

Eseménymeghívó

{
  "messageType": "promo",
  "text": "You're invited! VIP Shopping Event on Jan 25 at 6 PM. Exclusive deals + refreshments. RSVP: https://events.com/vip"
}

Elhagyott kosár

{
  "messageType": "promo",
  "text": "Hi %name=1%! You left items in your cart. Complete purchase now and get 10% off with code CART10: %short_url=1%"
}

Viber felmérés

Interaktív szavazások és felmérések az ügyfelek visszajelzéseinek gyűjtéséhez.

Jellemzők

  • 2-5 válaszlehetőség
  • A szöveg legfeljebb 85 karakter hosszúságú
  • Interaktív felület a Viberen
  • Visszatérés SMS-hez (interaktivitás nélkül)
  • Egykérdés formátum

Használati esetek

  • Ügyfél-elégedettségi felmérések
  • Termék visszajelzés
  • Szolgáltatás minőségi értékelések
  • Piackutatás
  • Esemény visszajelzés
  • Net Promoter Score (NPS)

Példa

{
  "id": "survey-satisfaction-001",
  "fromName": "YourBrand",
  "toPhone": "+380XXXXXXXXX",
  "messageType": "viber_survey",
  "text": "How satisfied are you with our service?",
  "surveyOptions": [
    "Very Satisfied",
    "Satisfied",
    "Neutral",
    "Dissatisfied",
    "Very Dissatisfied"
  ],
  "ttl": 604800
}

Korlátozások

  • Szöveg: Maximum 85 karakter
  • Opciók: 2-5 lehetőség
  • Opció hossza: Egyenként 30 karakternél rövidebb legyen
  • TTL: 7-30 nap ajánlott

Bevált gyakorlatok

  • ✅ Tegyél fel egy egyértelmű kérdést
  • ✅ Biztosítson kiegyensúlyozott lehetőségeket
  • ✅ Használjon egyszerű nyelvezetet
  • ✅ Legyen tömör a lehetőségek
  • ✅ Állítsa be a megfelelő TTL-t (7+ nap)
  • ❌ Ne tegyél fel több kérdést
  • ❌ Ne használjon szakzsargont
  • ❌ Ne torzítsa a válaszokat

Példák használati esetenként

Ügyfél-elégedettség (NPS)

{
  "messageType": "viber_survey",
  "text": "How likely are you to recommend us to a friend?",
  "surveyOptions": [
    "0 - Not at all",
    "1-6 - Unlikely",
    "7-8 - Likely",
    "9-10 - Very Likely"
  ]
}

Termék visszajelzés

{
  "messageType": "viber_survey",
  "text": "How do you rate our new product?",
  "surveyOptions": [
    "⭐️ Excellent",
    "⭐️ Good",
    "⭐️ Average",
    "⭐️ Poor",
    "⭐️ Very Poor"
  ]
}

Szolgáltatás minősége

{
  "messageType": "viber_survey",
  "text": "Was your support experience helpful?",
  "surveyOptions": [
    "Yes, very helpful",
    "Somewhat helpful",
    "Not helpful"
  ]
}

Esemény visszajelzés

{
  "messageType": "viber_survey",
  "text": "Would you attend our events again?",
  "surveyOptions": [
    "Definitely yes",
    "Probably yes",
    "Not sure",
    "Probably not",
    "Definitely not"
  ]
}

Flash Call

Telefonos ellenőrzés SMS-kódok helyett automatizált hívásokkal.

Jellemzők

  • Költséghatékony ellenőrzés
  • Gyorsabb, mint az SMS (1-3 másodperc)
  • Nincs látható kód az értesítésekben
  • Ellenáll a SIM-csere támadásoknak
  • Csak telefonhívás (nincs Telegram/Viber)

Használati esetek

  • Felhasználó regisztráció
  • Bejelentkezés ellenőrzése
  • Telefonszám érvényesítése
  • Kéttényezős hitelesítés
  • Fiók helyreállítása
  • Tranzakció visszaigazolása

Példa

{
  "id": "verify-user-12345",
  "fromName": "YourApp",
  "toPhone": "+380XXXXXXXXX",
  "messageType": "flashcall",
  "ttl": 300
}

Hogyan működik

  1. A felhasználó beírja a telefonszámot
  2. Az API flash hívást kezdeményez
  3. A hívás 1-2 csengetés után véget ér
  4. Az alkalmazás rögzíti a hívóazonosítót
  5. A hívóazonosító minta alapján ellenőrizve
  6. Felhasználó hitelesítve

Bevált gyakorlatok

  • ✅ Rövid TTL beállítása (60-300 másodperc)
  • ✅ Hívóazonosító felismerés megvalósítása
  • ✅ Biztosítson tartalék SMS-t
  • ✅ Engedélykérések kezelése
  • ✅ Mutasson világos utasításokat
  • ❌ Ne használja promóciós célokra
  • ❌ Ne állítson be hosszú TTL-t

Példa tartalékkal

{
  "id": "verify-001",
  "fromName": "YourApp",
  "toPhone": "+380XXXXXXXXX",
  "messageType": "flashcall",
  "ttl": 300,
  "fallback": {
    "messageType": "transaction",
    "text": "Your verification code: 123456"
  }
}

A megfelelő típus kiválasztása

Döntési fa

Is it time-critical or transactional?
├─ Yes → transaction
└─ No
   └─ Is it promotional?
      ├─ Yes → promo
      └─ No
         └─ Is it a survey?
            ├─ Yes → viber_survey
            └─ No → Is it for verification?
               ├─ Yes → flashcall
               └─ No → transaction (default)

Összehasonlító mátrix

Funkció Tranzakció Promo Felmérés Flash Call
Multimédiás
Interaktív
Személyre szabás
Tipikus TTL Óra Napok hét Jegyzőkönyv
Költség Közepes Közepes Közepes Alacsony
Szállítási sebesség Gyors Gyors Gyors Leggyorsabb

Megvalósítási példa

class CascadeMessageBuilder {
  constructor(apiKey) {
    this.apiKey = apiKey;
  }

  buildTransaction(id, fromName, toPhone, text, ttl = 86400) {
    return {
      id,
      fromName,
      toPhone,
      messageType: 'transaction',
      text,
      ttl
    };
  }

  buildPromo(id, fromName, toPhone, text, ttl = 259200) {
    return {
      id,
      fromName,
      toPhone,
      messageType: 'promo',
      text,
      ttl
    };
  }

  buildSurvey(id, fromName, toPhone, text, options, ttl = 604800) {
    if (text.length > 85) {
      throw new Error('Survey text must be under 85 characters');
    }

    if (options.length < 2 || options.length > 5) {
      throw new Error('Survey must have 2-5 options');
    }

    return {
      id,
      fromName,
      toPhone,
      messageType: 'viber_survey',
      text,
      surveyOptions: options,
      ttl
    };
  }

  buildFlashCall(id, fromName, toPhone, ttl = 300) {
    return {
      id,
      fromName,
      toPhone,
      messageType: 'flashcall',
      ttl
    };
  }

  async send(message) {
    // Implementation to send message
  }
}

// Usage
const builder = new CascadeMessageBuilder('your-api-key');

// Transaction
const transaction = builder.buildTransaction(
  'order-123',
  'Store',
  '+380XXXXXXXXX',
  'Order confirmed'
);

// Promo
const promo = builder.buildPromo(
  'promo-001',
  'Brand',
  '+380XXXXXXXXX',
  'Sale now on!'
);

// Survey
const survey = builder.buildSurvey(
  'survey-001',
  'Brand',
  '+380XXXXXXXXX',
  'Rate our service?',
  ['Excellent', 'Good', 'Average', 'Poor']
);

// Flash Call
const flashCall = builder.buildFlashCall(
  'verify-001',
  'App',
  '+380XXXXXXXXX'
);

Következő lépések