معاملات /createMessage
ستجد هنا أوصاف معاملات واجهة برمجة التطبيقات /createMessage.
-
يجب تضمين المعاملات المطلوبة لإرسال طلب واجهة برمجة التطبيقات
/createMessageبنجاح وبث إشعار فوري في الوقت المحدد. -
تسمح لك المعاملات الاختيارية بتخصيص خصائص الإشعارات الفورية.
المعاملات المطلوبة
Anchor link toالمعاملات المطلوبة إلزامية للاستخدام في طلبات /createMessage. وإلا، لن يتم إرسال الطلب.
application
Anchor link toالرمز الفريد لتطبيق تم إنشاؤه في حساب Pushwoosh الخاص بك. يمكن العثور على رمز التطبيق في الزاوية العلوية اليسرى من لوحة التحكم أو في الاستجابة لطلب /createApplication. رمز التطبيق هو مجموعة من 10 أحرف (أحرف وأرقام) مفصولة بواصلات.

عند إنشاء تطبيق عبر واجهة برمجة التطبيقات، ستحصل على رمز التطبيق في الاستجابة لطلبك /createApplication.
للحصول على رمز تطبيق تم إنشاؤه مسبقًا عبر واجهة برمجة التطبيقات، استدعِ /getApplications. في الاستجابة لطلب /getApplications، ستتلقى قائمة بجميع التطبيقات التي تم إنشاؤها في حساب Pushwoosh الخاص بك مع أسمائها ورموزها.
auth
Anchor link toرمز الوصول إلى واجهة برمجة التطبيقات من لوحة تحكم Pushwoosh. انتقل إلى Settings → API Access وانسخ الرمز الذي ترغب في استخدامه أو أنشئ رمزًا جديدًا.

عند إنشاء رمز وصول، حدد أذوناته. حدد مربعات الاختيار لأنواع الأنشطة التي ستستخدم رمز واجهة برمجة التطبيقات معها. يمكنك إنشاء رموز واجهة برمجة تطبيقات خاصة بالتطبيقات عن طريق تحديد مربعات اختيار التطبيقات.

content
Anchor link toالسلسلة النصية أو الكائن الذي يحدد محتوى الرسالة. سيؤدي المعامل “content” الذي يتم إرساله بقيمة من نوع سلسلة نصية إلى إرسال نفس الرسالة لجميع المستلمين.
"content": "Hello world!",تُستخدم كائنات JSON لتحديد المحتوى باستخدام المحتوى الديناميكي (Dynamic Content)، على سبيل المثال، للرسائل متعددة اللغات.
"content": { "en": "Hello!", "es": "¡Hola!", "de": "Hallo!"},notifications
Anchor link toمصفوفة JSON لخصائص الإشعارات الفورية. يجب أن تتضمن على الأقل المعاملين المطلوبين content و send_date.
المعاملات الاختيارية للاستخدام داخل مصفوفة “notifications”:
- campaign
- capping_days
- capping_count
- conditions
- data
- devices
- dynamic_content
- filter
- ignore_user_timezone
- inbox_date
- inbox_image
- link
- minimize_link
- message_type
- platforms
- preset
- rich_media
- send_rate
- timezone
- template_bindings
- transactionId
- users
send_date
Anchor link toالتاريخ والوقت الذي يتم فيه إرسال الرسالة. يمكن أن يكون أي تاريخ ووقت بالتنسيق YYYY-MM-DD HH:mm أو ‘now’. إذا تم تعيينه على ‘now’، فسيتم إرسال الرسالة فورًا بعد إرسال الطلب.
المعاملات الاختيارية
Anchor link tocampaign
Anchor link toرمز الحملة (Campaign). للحصول على رمز الحملة، انتقل إلى Statistics → Aggregated statistics وحدد الحملة التي ستستخدمها. سيكون رمز الحملة مرئيًا في نهاية عنوان URL للصفحة بالتنسيق XXXXX-XXXXX.
مثال:
URL: https://app.pushwoosh.com/applications/AAAAA-AAAAA/statistics/aggregated-message?campaignCode=XXXXX-XXXXX
رمز الحملة: XXXXX-XXXXX
للحصول على قائمة بالحملات مع رموزها، استدعِ /getCampaigns. في الاستجابة لطلب /getCampaigns، ستتلقى قائمة بجميع الحملات التي تم إنشاؤها لتطبيق معين في حساب Pushwoosh الخاص بك، مع رموزها وأسمائها وأوصافها.
capping_days
Anchor link toالفترة التي سيتم تطبيقها لتحديد سقف التكرار، بالأيام (بحد أقصى 30 يومًا). راجع تحديد سقف التكرار (Frequency capping) لمزيد من التفاصيل.
لا يتم تطبيق تحديد سقف التكرار على الرسائل ذات message_type: transactional. في جميع الحالات الأخرى، يتم تطبيق تحديد سقف التكرار، بما في ذلك الطلبات التي يتم فيها حذف message_type.
capping_count
Anchor link toالحد الأقصى لعدد الإشعارات الفورية التي يمكن إرسالها من تطبيق معين إلى جهاز معين خلال فترة “capping_days”. في حالة تجاوز الرسالة التي تم إنشاؤها حد “capping_count” لجهاز ما، فلن يتم إرسالها إلى ذلك الجهاز. راجع تحديد سقف التكرار (Frequency capping) لمزيد من التفاصيل.
conditions
Anchor link toالشروط هي مصفوفات مثل [tagName, operator, operand] تُستخدم لإرسال رسائل مستهدفة بناءً على العلامات (Tags) وقيمها، حيث:
- tagName — اسم العلامة المراد تطبيقها،
- operator — عامل مقارنة القيمة (“EQ” | “IN” | “NOTEQ” | “NOTIN” | “LTE” | “GTE” | “BETWEEN” | “NOTSET” | “ANY”)،
- operand — قيم العلامات من أي من الأنواع التالية: string | integer | array | date | boolean | list
وصف العامل
Anchor link to| EQ | قيمة العلامة تساوي المعامل. |
| IN | قيمة العلامة تتقاطع مع المعامل (يجب أن يكون المعامل دائمًا مصفوفة). |
| NOTEQ | قيمة العلامة لا تساوي المعامل. |
| NOTIN | قيمة العلامة لا تتقاطع مع المعامل (يجب أن يكون المعامل دائمًا مصفوفة). |
| GTE | قيمة العلامة أكبر من أو تساوي المعامل. |
| LTE | قيمة العلامة أصغر من أو تساوي المعامل. |
| BETWEEN | قيمة العلامة أكبر من أو تساوي قيمة المعامل الدنيا ولكنها أصغر من أو تساوي قيمة المعامل القصوى (يجب أن يكون المعامل دائمًا مصفوفة). |
| NOTSET | العلامة غير معينة. لا يتم النظر في المعامل. |
| ANY | العلامة لها أي قيمة. لا يتم النظر في المعامل. |
علامات السلسلة النصية
Anchor link toالعوامل الصالحة: EQ, IN, NOTEQ, NOTIN, NOTSET, ANY
المعاملات الصالحة:
| EQ, NOTEQ | يجب أن يكون المعامل سلسلة نصية |
| IN, NOTIN | يجب أن يكون المعامل مصفوفة من السلاسل النصية مثل ["value 1", "value 2", "value N"] |
| NOTSET | العلامة غير معينة. لا يتم النظر في المعامل |
| ANY | العلامة لها أي قيمة. لا يتم النظر في المعامل |
علامات الأعداد الصحيحة
Anchor link toالعوامل الصالحة: EQ, IN, NOTEQ, NOTIN, BETWEEN, GTE, LTE, NOTSET, ANY
المعاملات الصالحة:
| EQ, NOTEQ, GTE, LTE | يجب أن يكون المعامل عددًا صحيحًا |
| IN, NOTIN | يجب أن يكون المعامل مصفوفة من الأعداد الصحيحة مثل [value 1, value 2, value N] |
| BETWEEN | يجب أن يكون المعامل مصفوفة من الأعداد الصحيحة مثل [min_value, max_value] |
| NOTSET | العلامة غير معينة. لا يتم النظر في المعامل |
| ANY | العلامة لها أي قيمة. لا يتم النظر في المعامل |
علامات التاريخ
Anchor link toالعوامل الصالحة: EQ, IN, NOTEQ, NOTIN, BETWEEN, GTE, LTE, NOTSET, ANY
المعاملات الصالحة:
"YYYY-MM-DD 00:00"(سلسلة نصية)- طابع زمني يونكس
1234567890(عدد صحيح) "N days ago"(سلسلة نصية) للعوامل EQ, BETWEEN, GTE, LTE
علامات القيم المنطقية
Anchor link toالعوامل الصالحة: EQ, NOTSET, ANY
المعاملات الصالحة: 0, 1, true, false
علامات القائمة
Anchor link toالعوامل الصالحة: IN, NOTIN, NOTSET, ANY
المعاملات الصالحة: يجب أن يكون المعامل مصفوفة من السلاسل النصية مثل ["value 1", "value 2", "value N"].
conditions_operator
Anchor link toعامل منطقي لمصفوفات الشروط. القيم الممكنة: AND | OR. القيمة الافتراضية هي AND.
إذا كان العامل المطبق هو AND (عند عدم تحديد أي عامل، أو عندما تكون قيمة المعامل ‘conditions_operator’ هي ‘AND’)، فإن الأجهزة التي تمتثل لجميع الشروط في وقت واحد ستتلقى الإشعار الفوري.
إذا كان العامل هو OR، فإن الأجهزة التي تمتثل لأي من الشروط المحددة ستتلقى الرسالة.
data
Anchor link toسلسلة JSON أو كائن JSON يُستخدم لتمرير أي بيانات مخصصة في حمولة الإشعار؛ يتم تمريرها كمعامل “u” في الحمولة (يتم تحويلها إلى سلسلة JSON).
devices
Anchor link toمصفوفة من رموز الإشعارات الفورية (push tokens) أو معرفات الأجهزة (hwids) لإرسال إشعارات فورية مستهدفة. إذا تم تعيينها، فسيتم إرسال الرسالة فقط إلى الأجهزة الموجودة في القائمة.
dynamic_content
Anchor link toعناصر نائبة لـ المحتوى الديناميكي (Dynamic Content) ليتم استخدامها بدلاً من قيم علامات الجهاز. المثال أدناه سيرسل رسالة “Hello, John!” إلى كل مستخدم تستهدفه. إذا لم يتم تعيينها، يتم أخذ قيم المحتوى الديناميكي من علامات الجهاز.
"content": "Hello, {firstname|CapitalizeFirst}!","dynamic_content_placeholders": { "firstname": "John", "lastname": "Doe"},filter
Anchor link toاسم شريحة (Segment) تمامًا كما تم إنشاؤها في لوحة تحكم Pushwoosh أو عبر طلب واجهة برمجة التطبيقات /createFilter. انتقل إلى قسم Audience → Segments وتحقق من قائمة الشرائح التي تم إنشاؤها.

للحصول على قائمة الشرائح عبر واجهة برمجة التطبيقات، استدعِ طريقة واجهة برمجة التطبيقات /listFilters. في الاستجابة لطلب /listFilters، ستتلقى قائمة بجميع الشرائح التي تم إنشاؤها في حساب Pushwoosh الخاص بك، مع أسماء الشرائح وشروطها وتواريخ انتهاء صلاحيتها.
ignore_user_timezone
Anchor link toإذا تم تعيينه على ‘true’، يرسل الرسالة في الوقت والتاريخ المحددين في المعامل “send_date” وفقًا لـ UTC-0.
إذا تم تعيينه على ‘false’، سيتلقى المستخدمون الرسالة في الوقت المحلي المحدد وفقًا لإعدادات أجهزتهم.
inbox_date
Anchor link toالتاريخ الذي يجب أن تبقى فيه الرسالة في صندوق الوارد (Inbox) للمستخدمين. إذا لم يتم تحديده، ستتم إزالة الرسالة من صندوق الوارد في اليوم التالي لتاريخ الإرسال.
inbox_image
Anchor link toعنوان URL للصورة المخصصة التي سيتم عرضها بجوار الرسالة في صندوق الوارد (Inbox).
inbox_days
Anchor link toعمر رسالة صندوق الوارد بالأيام، حتى 30 يومًا. بعد هذه الفترة، ستتم إزالة الرسالة من صندوق الوارد. يمكن استخدامها بدلاً من المعامل inbox_date.
link
Anchor link toعنوان URL الذي سيتم فتحه بمجرد أن يفتح المستخدم إشعارًا فوريًا.
message_type
Anchor link toيحدد نوع رسالة الإشعار الفوري. القيم المتاحة هي marketing و transactional. راجع الرسائل التسويقية مقابل الرسائل التعاملية لمزيد من التفاصيل.
هذا المعامل اختياري. إذا تم حذفه، فلن يتلقى المستخدمون الذين لديهم PW_ControlGroup: true الرسالة.
minimize_link
Anchor link toأداة تقصير لتقليل عنوان URL المقدم في المعامل “link”. يرجى ملاحظة أن حجم حمولة الإشعار الفوري محدود، لذا ضع في اعتبارك إنشاء عناوين URL قصيرة حتى لا تتجاوز الحد الأقصى. القيم المتاحة: 0 — لا تقصر، 2 — bitly. الافتراضي = 2. تم تعطيل أداة تقصير عناوين URL من Google منذ 30 مارس 2019.
platforms
Anchor link toمصفوفة من رموز المنصات لإرسال الرسالة إلى منصات معينة فقط.
تشمل رموز المنصات المتاحة: 1 — iOS، 3 — Android، 7 — Mac OS X، 8 — Windows، 9 — Amazon، 10 — Safari، 11 — Chrome، 12 — Firefox، 14 — Email، 17 — Huawei، 18 — SMS، و 21 — WhatsApp.
preset
Anchor link toرمز الإعداد المسبق (Preset) الذي تم إنشاؤه في لوحة تحكم Pushwoosh أو عبر واجهة برمجة التطبيقات. للحصول على رمز الإعداد المسبق، انتقل إلى Content → Presets، وقم بتوسيع الإعداد المسبق الذي ستستخدمه، وانسخ Preset Code من تفاصيل الإعداد المسبق.

rich_media
Anchor link toرمز صفحة الوسائط الغنية (Rich Media) التي ستقوم بإرفاقها برسالتك. للحصول على رمز، انتقل إلى Content → Rich Media، وافتح صفحة الوسائط الغنية التي ستستخدمها، وانسخ الرمز من شريط عنوان URL في متصفحك. الرمز هو مجموعة من 10 أحرف (أحرف وأرقام) مفصولة بواصلات.

send_rate
Anchor link toتنظيم لتقييد سرعة إرسال الإشعارات الفورية. القيم الصالحة هي من 100 إلى 1000 إشعار/ثانية.
timezone
Anchor link toالمنطقة الزمنية التي يجب أخذها في الاعتبار عند إرسال الرسالة في تاريخ ووقت معينين. إذا تم تعيينها، يتم تجاهل المنطقة الزمنية للجهاز. إذا تم تجاهلها، يتم إرسال الرسالة بالتوقيت العالمي المنسق (UTC). راجع https://php.net/manual/timezones.php للمناطق الزمنية المدعومة.
template_bindings
Anchor link toعناصر نائبة للقالب لاستخدامها في قالب المحتوى الخاص بك. راجع دليل قوالب Liquid (Liquid Templates) لمزيد من التفاصيل.
transactionId
Anchor link toمعرف رسالة فريد لمنع تكرار الرسائل في حالة وجود مشاكل في الشبكة. يمكنك تعيين أي معرف لرسالة تم إنشاؤها عبر طلب /createMessage أو /createTargetedMessage. يتم تخزينه على جانب Pushwoosh لمدة 5 دقائق.
users
Anchor link toمصفوفة من معرفات المستخدمين (userIds). معرف المستخدم هو معرف مستخدم فريد يتم تعيينه بواسطة طلب واجهة برمجة التطبيقات /registerUser أو /registerDevice أو /registerEmail.