إرسال قوالب رسائل الوسائط

تعمل قوالب رسائل الوسائط على توسيع المحتوى الذي يمكنك إرساله إلى المستلمين بخلاف ما يوفره نوع قالب الرسالة القياسية لتضمين الوسائط والعناوين باستخدام كائن components. يتيح لك الكائن components الإشارة إلى type الخاص بالرسالة وكذلك parameters الخاصة بالرسالة.


الخطوة الأولى: إجراء طلب POST إلى /messages

POST /v1/messages
{
  "to": "recipient_wa_id",
  "type": "template",
  "template": {
    "namespace": "your-namespace",
    "language": {
      "policy": "deterministic",
      "code": "your-language-and-locale-code"
    },
    "name": "your-template-name",
    "components": [
    {
      "type" : "header",
      "parameters": [
      # The following parameters code example includes several different possible header types, 
      # not all are required for a media message template API call.

      {
        "type": "text",
        "text": "replacement_text"
      }

      # OR

      {
        "type": "document",
        "document": {
          "id": "your-media-id",
          # filename is an optional parameter
          "filename": "your-document-filename"
        }
      }

      # OR

      {
        "type": "document",
        "document": {
          "link": "the-provider-name/protocol://the-url",
          # provider and filename are optional parameters
          "provider": {
            "name" : "provider-name"
          },
          "filename": "your-document-filename"
        }
      }

      # OR
  
      {
        "type": "video",
        "video": {
          "id": "your-media-id"
        }
      }

      # OR
  
      {
        "type": "video",
        "video": {
          "link": "the-provider-name/protocol://the-url"
          # provider is an optional parameter
          "provider": {
            "name" : "provider-name"
          }
        }
      }

      # OR

      {
        "type": "image",
        "image": {
          "link": "http(s)://the-url",
          # provider is an optional parameter
          "provider": {
            "name" : "provider-name"
          },
        }
      }
    ]
    # end header
    },
    {
      "type" : "body",
      "parameters": [
        {
          "type": "text",
          "text": "replacement_text"
        },
        {
          "type": "currency",
          "currency" : {
            "fallback_value": "$100.99",
            "code": "USD",
            "amount_1000": 100990
          }
        },
        {
          "type": "date_time",
          "date_time" : {
            "fallback_value": "February 25, 1977",
            "day_of_week": 5,
            "day_of_month": 25,
            "year": 1977,
            "month": 2,
            "hour": 15,
            "minute": 33, #OR
            "timestamp": 1485470276
          }
        },
        {
        ...
        # Any additional template parameters
        }
      ] 
      # end body
      },
    ]
  }
}

المعلمات

توصية تنسيق الوسائط

  • يتم اقتصاص الصور الأطول من نسبة العرض إلى الارتفاع 1.91:1 رأسيًا. لضمان عرض مضمون الصورة، احرص على أن تكون أكثر المعلومات أهمية في منتصف الصورة.

الخطوة الثانية: التحقق من استجابة API

تتضمن الاستجابة الناجحة كائن messages بالمعرف id.

{
  "messages": [{
    "id": "gBEGkYiEB1VXAglK1ZEqA1YKPrU"
  }]
}

تتضمن الاستجابة غير الناجحة كائن خطأ بسلسلة خطأ ورمز خطأ ومعلومات أخرى.

إذا تم إرسال قالب إلى حساب غير قادر على تلقي القالب، فسيتم إرسال الخطأ 1026 (ReceiverIncapable) في كائن الخطأ إلى خادم Webhook الذي تم تكوينه.

لمزيد من المعلومات حول الأخطاء، يمكنك الرجوع إلى رموز الخطأ والحالة.

الأمثلة

توضح هذه الأمثلة عملية إعداد قوالب رسائل الوسائط بدايةً من إنشاء القالب في مدير الأعمال وإرسال قوالب الرسائل من خلال استدعاءات API إلى نقطة النهاية messages.

تتوفر هذه الأمثلة لأغراض التوضيح فقط ولا يمكن استخدامها. يجب إنشاء عيناتك الخاصة واعتمادها حتى تتمكن من اختبار وظائف قالب رسالة الوسائط.

مثال على تذكرة فيلم

يعرض هذا المثال عملية إنشاء قالب رسالة وسائط يتضمن صورة رمز QR.

1. إنشاء قالب رسالة الوسائط في مدير الأعمال.

إنشاء قالب رسالة في مدير الأعمال

2. تتم إضافة استدعاء API messages في معلومات المعلمة.

POST /v1/messages
{
    "to": "your-test-recipient-wa-id",
    "recipient_type": "individual",
    "type": "template",
    "template": {
        "namespace": "88b39973_f0d5_54e1_29cf_e80f1e3da4f2",
        "name": "movie_ticket_update",
        "language": {
            "code": "en",
            "policy": "deterministic"
        },
        "components": [
            {
                "type": "header",
                "parameters": [
                    {
                        "type": "image",
                        "image": {
                          "id": "your-image-id"
                        }
                    }
                ]
            },
            {
                "type": "body",
                "parameters": [
                	{
                		"type": "text",
                		"text": "Star Rangers"
                	},
                    {
                    	"type": "date_time",
                        "date_time" : {
                            "fallback_value": "May 1st, 2019 8:45pm",
                            "day_of_month": 20,
                            "year": 2019,
                            "month": 9,
                            "hour": 20,
                            "minute": 45
                        }
                    },
                    {
                        "type": "text",
                        "text": "Carnival, Sangam"
                    },
                    {
                        "type": "text",
                        "text": "Silver"
                    },
                    {
                        "type": "text",
                        "text": "F6, F7, F8"
                    }
                ]
            }
        ]
    }
}

3. يتلقى عميلك رسالة تتضمن تذكرة الفيلم.

رسالة تتضمن تذكرة الفيلم

مثال على تذكرة رحلة الطيران

يعرض هذا المثال عملية إنشاء قالب رسالة الوسائط يحتوي على مستند بتنسيق PDF.

1. إنشاء قالب رسالة الوسائط في مدير الأعمال.

إنشاء قالب رسالة في مدير الأعمال

2. تتم إضافة استدعاء API messages في معلومات المعلمة.

POST /v1/messages
{
    "to": "your-test-recipient-wa-id",
    "recipient_type": "individual",
    "type": "template",
    "template": {
	        "namespace": "88b39973_f0d5_54e1_29cf_e80f1e3da4f2",
        "name": "flight_confirmation",
        "language": {
            "code": "en",
            "policy": "deterministic"
        },
        "components": [
            {
                "type": "header",
                "parameters": [
                    {
                        "type": "document",
                        "document": {
                        	"filename": "MRRATH-CGK-KUL.pdf",
                        	"link": "link-to-your-document"
                        }
                    }
                ]
            },
            {
                "type": "body",
                "parameters": [
                	{
                		"type": "text",
                		"text": "CGK (Jakarta)"
                	},
                	{
                		"type": "text",
                		"text": "KUL (Kuala Lumpur)"
                	},
                    {
                    	"type": "date_time",
                        "date_time" : {
                            "fallback_value": "20th April 2019, 12:20pm",
                            "day_of_month": 20,
                            "year": 2019,
                            "month": 9,
                            "hour": 12,
                            "minute": 10
                        }
                    }
                ]
            }
        ]
    }
}

3. يتلقى عميلك تذكرة الصعود إلى الطائرة في صورة مستند بتنسيق PDF.

رسالة تتضمن تذكرة لرحلة طيران