WhatsApp सादे टेक्स्ट संदेश
सादा टेक्स्ट फ़्री-फ़ॉर्म सामग्री का सबसे सरल प्रकार है। इसमें बिना अटैचमेंट वाला मुख्य टेक्स्ट होता है, और उसके पहले लिंक के लिए वैकल्पिक प्रीव्यू भी हो सकता है।
टेक्स्ट संदेश भेजें
text.body सेट करें:
const msg = await bird.whatsapp.send({
to: "+16505551234",
from: "+13124495648",
text: { body: "Your driver is 2 minutes away." },
});
console.log(msg.id, msg.status);msg = client.whatsapp.send(
to="+16505551234",
from_="+13124495648",
text={"body": "Your driver is 2 minutes away."},
)
print(msg.id, msg.status)package main
import (
"context"
"fmt"
"log"
"os"
bird "github.com/messagebird/bird-sdk-go"
"github.com/messagebird/bird-sdk-go/option"
)
func main() {
client, err := bird.NewClient(option.WithAPIKey(os.Getenv("BIRD_API_KEY")))
if err != nil {
log.Fatal(err)
}
msg, err := client.Whatsapp.Send(context.Background(), bird.WhatsappSendParams{
To: "+16505551234",
From: "+13124495648",
Text: &bird.WhatsAppTextSend{Body: "Your driver is 2 minutes away."},
})
if err != nil {
log.Fatal(err)
}
fmt.Println(msg.Id, *msg.Status)
}$text = (new WhatsAppMessageSendRequestText())
->setBody('Your driver is 2 minutes away.');
$message = $bird->whatsapp->send(
to: '+16505551234',
from: '+13124495648',
text: $text,
);
echo $message->getId(), ' ', $message->getStatus();bird whatsapp send \
--from +13124495648 \
--text 'Your driver is 2 minutes away.' \
--to +16505551234curl -X POST "https://us1.platform.bird.com/v1/whatsapp/messages" \
-H "Authorization: Bearer $BIRD_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"to": "+16505551234",
"from": "+13124495648",
"text": {
"body": "Your driver is 2 minutes away."
}
}'पूरे स्वरूप में preview_url जुड़ता है, साथ ही वे फ़ील्ड भी जो कोई भी फ़्री-फ़ॉर्म संदेश भेजते समय शामिल किए जा सकते हैं:
{
"to": "+16505551234",
"from": "+13124495648",
"text": {
"body": "Your order shipped: https://example.com/track/A1B2C3",
"preview_url": true
},
"in_reply_to_message_id": "wam_01kya19eknftrs2s6p82asmvnh",
"tags": [{ "name": "category", "value": "shipping" }],
"metadata": { "order_id": "A1B2C3" }
}हर सर्विस संदेश में from ज़रूरी है। यह ऐसा नंबर होना चाहिए जो आपके वर्कस्पेस का अपना हो, न कि Bird द्वारा प्रबंधित। in_reply_to_message_id उसी बातचीत के किसी पिछले संदेश को उद्धृत करता है। यह किस संदेश से मिलान करता है और कब चूक सकता है, यह जानने के लिए संदेश उद्धृत करना देखें।
सीमाएँ
| फ़ील्ड | सीमा | कौन लागू करता है |
|---|---|---|
body | 1 से 4096 अक्षर | Bird, स्वीकार करते समय (422) |
preview_url | boolean, डिफ़ॉल्ट false | लागू नहीं, केवल जानकारी के लिए |
केवल खाली जगह वाला body स्कीमा की अपनी minLength: 1 जाँच पार कर लेता है, लेकिन Bird उसे फिर भी पकड़ लेता है: ट्रिम करने के बाद खाली रहने वाला body 422 E15015 WhatsAppContentRequired के साथ अस्वीकार किया जाता है। 4096 अक्षरों से लंबा body साधारण 422 के साथ अस्वीकार किया जाता है, और इसके लिए कोई अलग कैटलॉग कोड नहीं होता।
आने वाला टेक्स्ट संदेश पढ़ना
आने वाले टेक्स्ट संदेश में वही text.body फ़ील्ड होता है, और इस आर्म पर इसके अलावा कुछ नहीं। आने वाले संदेश को पूरी तरह पढ़ने, whatsapp.received पेलोड और किन बातों पर ध्यान देना है, यह जानने के लिए WhatsApp टेक्स्ट संदेश प्राप्त करना देखें।
सीमाएँ और विशेष स्थितियाँ
- ग्राहक सेवा विंडो खुली होनी चाहिए। साधारण टेक्स्ट एक सेवा संदेश है, जिसे केवल खुली विंडो के भीतर ही डिलीवर किया जा सकता है; हब का ग्राहक सेवा विंडो अनुभाग देखें।
preview_urlकेवल पहले लिंक पर असर डालता है, और केवल उस पर जो प्राप्तकर्ता का क्लाइंट दिखाता है। इसका डिफ़ॉल्ट मानfalseहै।bodyमें पहले URL का प्रीव्यू दिखाने के लिए इसे सेट करें; उसी बॉडी में बाद वाले किसी URL को प्रीव्यू कभी नहीं मिलता। अगर प्राप्तकर्ता का क्लाइंट उस लिंक का प्रीव्यू नहीं ला पाता, तो वह बिना कोई सूचना दिए सामान्य क्लिक करने योग्य लिंक दिखाता है। पढ़ते समय ऐसा कुछ नहीं मिलता जिससे पता चले कि प्रीव्यू वास्तव में दिखा या नहीं।- WhatsApp मार्कडाउन को प्राप्तकर्ता का क्लाइंट
bodyके रूप में दिखाता है; यह API अनुबंध का हिस्सा नहीं है। Birdbodyको बिना बदले आगे भेजता है; यह*bold*,_italic_,~strikethrough~या ट्रिपल-बैकटिक मोनोस्पेस को न जाँचता है, न हटाता है, न एन्कोड करता है। ये चिह्न दिखेंगे या नहीं, यह पूरी तरह संदेश खोलने वाले क्लाइंट पर निर्भर है। - इनबाउंड
bodyके खाली न होने की कोई गारंटी नहीं है, भले ही रीड स्कीमा कुछ और कहे। Meta किसी इनबाउंड संदेश को"text": {}के रूप में या खालीbodyके साथ भेज सकता है, और Bird कोई प्लेसहोल्डर बनाने के बजाय उसे ज्यों का त्यों सहेजता है। यह एक ज्ञात और अभी खुली कमी है: ऐसा कंज़्यूमर न लिखें जो यहाँ स्कीमा केrequired: bodyपर भरोसा करे।
अगले कदम
- WhatsApp सर्विस संदेश: ग्राहक सेवा विंडो और वह मॉडल जो हर सर्विस संदेश में समान है
- WhatsApp संदेश भेजना: अनुरोध का ढाँचा,
202मॉडल, और सुरक्षित रूप से फिर से प्रयास करना - इंटरैक्टिव संदेश: जब आप टाइप किए गए जवाब के बजाय एक टैप चाहते हों
संबंधित संसाधन
इस विषय के लिए दस्तावेज़, गाइड और उदाहरणों के साथ आगे बढ़ें।