Sign inGet Started

Apple Messages वार्तालाप का जवाब दें

उस ग्राहक को टेक्स्ट जवाब भेजें जिसने Apple Messages for Business वार्तालाप शुरू किया है, फिर संदेश के परिणाम की जाँच करें।

पूर्वापेक्षाएँ

आपके वर्कस्पेस को एक स्वीकृत Apple बिज़नेस और उसके ग्राहक द्वारा शुरू किया गया एक खुला वार्तालाप चाहिए। AMB सपोर्ट वाले CLI और SDK पैकेज प्रकाशन की प्रतीक्षा में हैं। इन कमांड के लिए ऐसा बिल्ड ज़रूरी है जिसमें bird amb शामिल हो; आगे बढ़ने से पहले bird amb --help जाँचें। जब तक इन कमांड वाला पैकेज प्रकाशित नहीं होता, API संदर्भ या Apple Messages डैशबोर्ड का उपयोग करें। उस क्षेत्र के लिए प्रमाणित करें जहाँ आपका वर्कस्पेस होस्ट है।
jq और uuidgen इंस्टॉल किए हुए Bash का उपयोग करें। उस वर्कस्पेस के लिए CLI को प्रमाणित करें। वार्तालाप और संदेशों की जाँच के लिए आपके क्रेडेंशियल को amb:read, भेजने के लिए amb:write और बिज़नेस की जाँच के लिए amb_management:read की ज़रूरत है। प्राप्तकर्ता से संपर्क की अनुमति वाले किसी मौजूदा टेस्ट वार्तालाप का उपयोग करें।

1. बिज़नेस और वार्तालाप चुनें

कोड उदाहरण
bird amb businesses list
bird amb conversations list
प्रॉम्प्ट पर, उन सूचियों से चुने गए रिकॉर्ड ID पेस्ट करें:
कोड उदाहरण
read -r -p "Business record ID: " BUSINESS_ID
read -r -p "Conversation record ID: " CONVERSATION_ID
bird amb businesses get "$BUSINESS_ID"
bird amb conversations get "$CONVERSATION_ID"
सत्यापित करें कि बिज़नेस स्वीकृत है, वार्तालाप खुला है, और उसका बिज़नेस चयनित रिकॉर्ड से मेल खाता है। भेजने के अनुरोध में उपयोग होने वाले Apple पहचानकर्ता निकालें:
कोड उदाहरण
APPLE_BUSINESS_ID=$(bird amb businesses get "$BUSINESS_ID" --format json | jq -er '.apple_business_id')
OPAQUE_USER_ID=$(bird amb conversations get "$CONVERSATION_ID" --format json | jq -er '.opaque_user_id')
साधारण जवाब के लिए अपारदर्शी ग्राहक पहचानकर्ता की जगह फ़ोन नंबर का उपयोग नहीं किया जा सकता।

2. जवाब का पूर्वावलोकन करें

कोड उदाहरण
bird amb send --from "$APPLE_BUSINESS_ID" --to "$OPAQUE_USER_ID" \
  --content '{"type":"text","body":"Your order is ready."}' --dry-run
यह कमांड अनुरोध को बिना भेजे प्रिंट करता है। बिज़नेस, प्राप्तकर्ता और संदेश टेक्स्ट जाँचें। पूरे अनुरोध की संरचना देखने के लिए bird amb send --example चलाएँ। --body-file के ज़रिए पास की गई JSON फ़ाइल में category, tags या locale जैसे वैकल्पिक फ़ील्ड शामिल किए जा सकते हैं।

3. समीक्षित संदेश भेजें

कोड उदाहरण
REQUEST_ID=$(uuidgen)
MESSAGE_ID=$(bird amb send --from "$APPLE_BUSINESS_ID" --to "$OPAQUE_USER_ID" \
  --content '{"type":"text","body":"Your order is ready."}' \
  --idempotency-key "$REQUEST_ID" --format json | jq -er '.id')
printf '%s\n' "$MESSAGE_ID"
यह कमांड एक अनुरोध पहचानकर्ता बनाता है और प्रतिक्रिया ID को MESSAGE_ID में सहेजता है। भेजने पर एक बिल-योग्य संदेश असिंक्रोनस प्रोसेसिंग के लिए कतार में लग जाता है। अगर आप फिर से प्रयास करते हैं, तो REQUEST_ID का पुनः उपयोग करें; उस अनुरोध के लिए uuidgen दोबारा न चलाएँ।

4. परिणाम की जाँच करें

कोड उदाहरण
bird amb get "$MESSAGE_ID"
bird amb list-events "$MESSAGE_ID"
sent Apple के गेटवे द्वारा स्वीकृति दर्ज करता है। यह डिवाइस डिलीवरी या ग्राहक द्वारा संदेश पढ़े जाने की पुष्टि नहीं करता। विफल या अनिश्चित भेजने के बाद अगला संदेश सबमिट करने से पहले जाँच आवश्यक है। आपकी बुकिंग, ऑर्डर या अन्य बिज़नेस कार्रवाई को अपने स्वतंत्र पुष्ट परिणाम की प्रतीक्षा करनी होगी।
असिंक्रोनस अपडेट के लिए, वेबहुक के ज़रिए amb.accepted, amb.sent, amb.send_failed, amb.rejected, amb.received, या conversation lifecycle इवेंट की सदस्यता लें। सिग्नेचर सत्यापित करें और वेबहुक ID से डिलीवरी डीडुप्लिकेट करें। इवेंट क्रम से बाहर आ सकते हैं।

उसी एक्सचेंज के लिए MCP का उपयोग करें

MCP संबंधित टूल प्रदान करता है: amb_businesses_list, amb_businesses_get, amb_conversations_list, amb_conversations_get, amb_send, amb_get, और amb_list_events। amb_send को वही from, to, और content ऑब्जेक्ट दें, साथ ही अनुरोध फिर से प्रयास करते समय idempotency_key भी दें। टूल कॉल अधिकृत करने से पहले सटीक प्राप्तकर्ता और सामग्री की समीक्षा करें।
अगर कोई टूल अनुपलब्ध है, तो सर्वर संस्करण और आपके कनेक्शन को दिए गए स्कोप जाँचें।

अनुरोध सीमाएँ

Apple Messages का डिफ़ॉल्ट प्रति संगठन प्रति मिनट 10 अनुरोध है। उत्तर, टाइपिंग इंडिकेटर और अटैचमेंट तैयारी एक रीजन में आपके सभी वर्कस्पेस और क्रेडेंशियल में यह सीमा साझा करते हैं। आपकी योजना या अनुमोदित ग्राहक सीमा इसे बढ़ा सकती है; वृद्धि के लिए सपोर्ट से संपर्क करें। अपनी प्रभावी सीमा की पुष्टि के लिए अपने संगठन के व्यवस्थापक या सपोर्ट से पूछें। जब कोई अनुरोध 429 लौटाए, तो फिर से प्रयास करने से पहले Retry-After अंतराल तक प्रतीक्षा करें।

समस्या निवारण

अगर चैनल not-found प्रतिक्रिया लौटाता है, तो जाँचें कि संसाधन प्रमाणित वर्कस्पेस से संबंधित है या नहीं। अनुमति अस्वीकृति के लिए, क्रेडेंशियल का चैनल स्कोप जाँचें। रिप्लाई प्राप्त करने से पहले बिज़नेस को स्वीकृत और बातचीत को खुला होना ज़रूरी है; सप्रेशन भी भेजने को रोक सकते हैं।
अगर प्रोसेसिंग किसी स्वीकृत अनुरोध को अस्वीकार कर देती है, तो उसके इवेंट और बिलिंग कॉन्फ़िगरेशन की जाँच करें। भेजने का गेटवे परिणाम और ग्राहक का बिज़नेस परिणाम अलग-अलग हैं। सफल API प्रतिक्रिया से डिलीवरी का अनुमान न लगाएँ।

अगले कदम

नेटिव एक्सचेंज और असिंक्रोनस बिज़नेस परिणामों के लिए Apple Messages इंटीग्रेशन गाइड पढ़ें, या कोई अन्य बिज़नेस तैयार करने के लिए रजिस्ट्रेशन गाइडेंस देखें।

संबंधित संसाधन

इस विषय के लिए डॉक्यूमेंटेशन, गाइड और उदाहरणों के साथ आगे बढ़ें। संसाधन अंग्रेज़ी में हैं।

अभ्यास करें और इम्प्लीमेंटेशन ब्रीफ़ पाएँ