Τύποι μηνυμάτων
Το Cascade API υποστηρίζει τέσσερις τύπους μηνυμάτων, ο καθένας βελτιστοποιημένος για διαφορετικές περιπτώσεις χρήσης και κανάλια.
Επισκόπηση
| Τύπος | Σκοπός | Κανάλια | Διαδραστική |
|---|---|---|---|
| «συναλλαγή» | Σημαντικές ειδοποιήσεις | Όλα | Όχι |
| «προώθηση» | Καμπάνιες μάρκετινγκ | Όλα | Ναι (κουμπιά) |
viber_survey |
Δημοσκοπήσεις και σχόλια | Viber, SMS | Ναι (επιλογές) |
| "flashcall" | Επαλήθευση τηλεφώνου | Τηλεφωνική κλήση | Όχι |
Μηνύματα συναλλαγών
Σημαντικές ειδοποιήσεις όπως επιβεβαιώσεις παραγγελιών, ενημερώσεις λογαριασμού και ειδοποιήσεις συστήματος.
Χαρακτηριστικά
- Παράδοση υψηλής προτεραιότητας
- Χωρίς διαφημιστικό περιεχόμενο
- Άμεσο και συνοπτικό
- Ευαίσθητο στο χρόνο
- Δρομολόγηση μέσω: Telegram → Viber → RCS → SMS
Περιπτώσεις χρήσης
- Επιβεβαιώσεις παραγγελιών
- Ειδοποιήσεις πληρωμής
- Ειδοποιήσεις λογαριασμού
- Ειδοποιήσεις ασφαλείας
- Ενημερώσεις παράδοσης
- Επαναφορά κωδικού πρόσβασης
Παράδειγμα
{
"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
}
Βέλτιστες πρακτικές
- ✅ Διατηρήστε τα μηνύματα κάτω από 160 χαρακτήρες όταν είναι δυνατόν
- ✅ Συμπεριλάβετε σχετικές λεπτομέρειες συναλλαγής
- ✅ Παρέχετε συνδέσμους παρακολούθησης
- ✅ Χρησιμοποιήστε σαφή, επαγγελματική γλώσσα
- ❌ Μην συμπεριλάβετε περιεχόμενο μάρκετινγκ
- ❌ Μην χρησιμοποιείτε υπερβολικά emojis
Παραδείγματα ανά περίπτωση χρήσης
Επιβεβαίωση παραγγελίας
{
"messageType": "transaction",
"text": "Order #12345 confirmed. Total: $99.99. Expected delivery: Jan 25."
}
Ειδοποίηση πληρωμής
{
"messageType": "transaction",
"text": "Payment of $150.00 to Merchant ABC successful. Transaction ID: TXN789. Balance: $850.00"
}
Ειδοποίηση ασφαλείας
{
"messageType": "transaction",
"text": "New login detected from iPhone at 10:30 AM. Location: New York. If this wasn't you, secure your account immediately."
}
Ενημέρωση παράδοσης
{
"messageType": "transaction",
"text": "Your package is out for delivery! Expected arrival: 2-4 PM. Track: https://track.example.com/PKG123"
}
Μηνύματα προώθησης
Καμπάνιες μάρκετινγκ και προώθησης με πλούσια μέσα και διαδραστικά στοιχεία.
Χαρακτηριστικά
- Υποστήριξη εμπλουτισμένων μέσων
- Διαδραστικά κουμπιά
- Εστίαση παρότρυνσης για δράση
- Αποδεκτό μεγαλύτερο TTL
- Δρομολόγηση μέσω: Telegram → Viber → RCS → SMS
Περιπτώσεις χρήσης
- Παρουσιάσεις προϊόντων
- Ανακοινώσεις πωλήσεων
- Προσκλήσεις εκδηλώσεων
- Καμπάνιες ενημερωτικών δελτίων
- Ειδικές προσφορές
- Επίγνωση της επωνυμίας
Παράδειγμα
{
"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
}
Με μεταβλητές
{
"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"}
]
}
Βέλτιστες πρακτικές
- ✅ Συμπεριλάβετε σαφή παρότρυνση για δράση
- ✅ Χρησιμοποιήστε ελκυστική γλώσσα
- ✅ Προσθέστε παραμέτρους παρακολούθησης σε διευθύνσεις URL
- ✅ Εξατομίκευση με μεταβλητές
- ✅ Δοκιμή σε πολλά κανάλια
- ❌ Μην στέλνετε ανεπιθύμητα μηνύματα σε πελάτες
- ❌ Μην χρησιμοποιείτε παραπλανητικό περιεχόμενο
- ❌ Μην υπερβαίνετε τα όρια χαρακτήρων
Παραδείγματα ανά περίπτωση χρήσης
Παρουσίαση προϊόντος
{
"messageType": "promo",
"text": "🎉 NEW ARRIVAL: iPhone 15 Pro now available! Pre-order today and get free shipping. Visit: https://store.com/iphone15"
}
Έκπτωση Flash
{
"messageType": "promo",
"text": "⚡ FLASH SALE: 2 hours only! Extra 30% off everything. Use code: FLASH30. Shop now: https://store.com/flash"
}
Πρόσκληση εκδήλωσης
{
"messageType": "promo",
"text": "You're invited! VIP Shopping Event on Jan 25 at 6 PM. Exclusive deals + refreshments. RSVP: https://events.com/vip"
}
Εγκαταλελειμμένο καλάθι
{
"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
Διαδραστικές δημοσκοπήσεις και έρευνες για τη συλλογή σχολίων πελατών.
Χαρακτηριστικά
- 2-5 επιλογές απόκρισης
- Κείμενο που περιορίζεται σε 85 χαρακτήρες
- Διαδραστική διεπαφή στο Viber
- Εναλλαγή σε SMS (χωρίς διαδραστικότητα)
- Μορφή μονής ερώτησης
Περιπτώσεις χρήσης
- Έρευνες ικανοποίησης πελατών
- Σχόλια για το προϊόν
- Αξιολογήσεις ποιότητας υπηρεσιών
- Έρευνα αγοράς
- Σχόλια εκδήλωσης
- Καθαρή βαθμολογία υποστηρικτών (NPS)
Παράδειγμα
{
"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
}
Περιορισμοί
- Κείμενο: Έως 85 χαρακτήρες
- Επιλογές: 2-5 επιλογές
- Μήκος επιλογής: Διατηρήστε λιγότερους από 30 χαρακτήρες το καθένα
- TTL: Συνιστάται 7-30 ημέρες
Βέλτιστες πρακτικές
- ✅ Κάντε μια σαφή ερώτηση
- ✅ Παρέχετε ισορροπημένες επιλογές
- ✅ Χρησιμοποιήστε απλή γλώσσα
- ✅ Κρατήστε τις επιλογές συνοπτικές
- ✅ Ρυθμίστε το κατάλληλο TTL (7+ ημέρες)
- ❌ Μην κάνετε πολλές ερωτήσεις
- ❌ Μην χρησιμοποιείτε τεχνική ορολογία
- ❌ Μην προκαταλαμβάνετε τις απαντήσεις
Παραδείγματα ανά περίπτωση χρήσης
Ικανοποίηση πελατών (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"
]
}
Σχόλια προϊόντος
{
"messageType": "viber_survey",
"text": "How do you rate our new product?",
"surveyOptions": [
"⭐️ Excellent",
"⭐️ Good",
"⭐️ Average",
"⭐️ Poor",
"⭐️ Very Poor"
]
}
Ποιότητα εξυπηρέτησης
{
"messageType": "viber_survey",
"text": "Was your support experience helpful?",
"surveyOptions": [
"Yes, very helpful",
"Somewhat helpful",
"Not helpful"
]
}
Σχόλια εκδήλωσης
{
"messageType": "viber_survey",
"text": "Would you attend our events again?",
"surveyOptions": [
"Definitely yes",
"Probably yes",
"Not sure",
"Probably not",
"Definitely not"
]
}
Flash Call
Επαλήθευση τηλεφώνου χρησιμοποιώντας αυτοματοποιημένες κλήσεις αντί για κωδικούς SMS.
Χαρακτηριστικά
- Οικονομική επαλήθευση
- Ταχύτερα από SMS (1-3 δευτερόλεπτα)
- Δεν υπάρχει ορατός κωδικός στις ειδοποιήσεις
- Ανθεκτικό σε επιθέσεις ανταλλαγής SIM
- Μόνο τηλεφωνική κλήση (χωρίς Telegram/Viber)
Περιπτώσεις χρήσης
- Εγγραφή χρήστη
- Επαλήθευση σύνδεσης
- Επικύρωση αριθμού τηλεφώνου
- Έλεγχος ταυτότητας δύο παραγόντων
- Ανάκτηση λογαριασμού
- Επιβεβαίωση συναλλαγής
Παράδειγμα
{
"id": "verify-user-12345",
"fromName": "YourApp",
"toPhone": "+380XXXXXXXXX",
"messageType": "flashcall",
"ttl": 300
}
Πώς λειτουργεί
- Ο χρήστης εισάγει τον αριθμό τηλεφώνου
- Το API εκκινεί την κλήση flash
- Η κλήση τερματίζεται μετά από 1-2 κουδουνίσματα
- Η εφαρμογή καταγράφει αναγνώριση κλήσης
- Το αναγνωριστικό καλούντος επαληθεύτηκε με μοτίβο
- Έγινε έλεγχος ταυτότητας χρήστη
Βέλτιστες πρακτικές
- ✅ Ρύθμιση σύντομου TTL (60-300 δευτερόλεπτα)
- ✅ Εφαρμογή ανίχνευσης αναγνώρισης κλήσης
- ✅ Παρέχετε εναλλακτικό SMS
- ✅ Χειρισμός αιτημάτων άδειας
- ✅ Δείξτε σαφείς οδηγίες
- ❌ Μην χρησιμοποιείτε για διαφημιστικούς σκοπούς
- ❌ Μην ορίζετε μεγάλο TTL
Παράδειγμα με Fallback
{
"id": "verify-001",
"fromName": "YourApp",
"toPhone": "+380XXXXXXXXX",
"messageType": "flashcall",
"ttl": 300,
"fallback": {
"messageType": "transaction",
"text": "Your verification code: 123456"
}
}
Επιλογή του σωστού τύπου
Δέντρο απόφασης
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)
Πίνακας σύγκρισης
| Χαρακτηριστικό | Συναλλαγή | Promo | Έρευνα | Flash Call |
|---|---|---|---|---|
| Rich Media | ❌ | ✅ | ❌ | ❌ |
| Διαδραστική | ❌ | ✅ | ✅ | ❌ |
| Εξατομίκευση | ✅ | ✅ | ✅ | ❌ |
| Τυπικό TTL | Ώρες | Μέρες | Εβδομάδα | Λεπτά |
| Κόστος | Μεσαία | Μεσαία | Μεσαία | Χαμηλό |
| Ταχύτητα παράδοσης | Γρήγορα | Γρήγορα | Γρήγορα | Ταχύτερα |
Παράδειγμα υλοποίησης
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'
);
Επόμενα βήματα
- Αποστολή μηνυμάτων - Ξεκινήστε την αποστολή μηνυμάτων
- Message Variables - Εξατομίκευση μηνυμάτων
- SMSBAT API - Εξερευνήστε τις λειτουργίες του SMSBAT