انتقل إلى المحتوى

العلامات

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

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

تحديد العلامات التي يجب استخدامها

Anchor link to

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

قيم العلامات

Anchor link to

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

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

أنواع العلامات

Anchor link to
  • عدد صحيح (Integer) — يُستخدم للبيانات العددية الصحيحة (كمية النقود المكتسبة في اللعبة، المستوى الذي تم الوصول إليه، العمر).
  • سلسلة نصية (String) — يُستخدم للقيم النصية (اسم المستخدم، البريد الإلكتروني، المعرفات).
  • قائمة (List) — نفس نوع السلسلة النصية، ولكن قد يكون لكل مستخدم قيم متعددة معينة في وقت واحد (تفضيلات الموسيقى، فئات الأخبار، تفضيلات المطبخ).
  • قيمة منطقية (Boolean) — نوع علامة true / false.
  • تاريخ (Date) — يُستخدم لتواريخ التقويم. بشكل أساسي، هذا نوع علامة عدد صحيح يخزن طوابع زمن Unix Epoch (يتم تحويلها تلقائيًا من/إلى التاريخ الميلادي).
  • سعر (Price) — يسمح بتعيين القيم وفقًا للعملة المحددة بتنسيق ”*.XX” لمعرفة المزيد.
  • إصدار (Version) — يُستخدم للترقيم. مثال على التنسيق المسموح به هو w.x.y.z (رئيسي.ثانوي.تصحيح.بناء). القيمة القصوى لكل جزء من الإصدار هي 9999، لذا لا يمكن أن يكون رقم الإصدار الأقصى أكبر من 9999.9999.9999.9999.

عوامل تشغيل العلامات

Anchor link to

لكل نوع من أنواع العلامات مجموعة محددة من عوامل التشغيل القابلة للتطبيق. تحدد عوامل تشغيل العلامات العلاقة بين العلامة وقيمها لأغراض التقسيم.

  • عوامل تشغيل علامة العدد الصحيح: is, is not, are, not in, not set, any
  • عوامل تشغيل علامة السلسلة النصية: is, is not, are, not in, not set, any
  • عوامل تشغيل علامة القائمة: in, not in, not set, any
  • عوامل تشغيل علامة القيمة المنطقية: is (true/false), not set, any
  • عوامل تشغيل علامة التاريخ: exactly on, on or after, on or before, between, not set, any
  • عوامل تشغيل علامة السعر: is, is not, greater or equals, less or equals, between, in, not in, not set, any
  • عوامل تشغيل علامة الإصدار: is, is not, greater or equals, less or equals, between, in, not in, not set, any

العلامات الخاصة بالتطبيق / غير الخاصة بالتطبيق

Anchor link to

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

لنفترض أن لديك تطبيقين، تطبيق أخبار ولعبة، وتريد استهداف المستخدمين الذين وافقوا صراحة على تلقي الإشعارات اللحظية منك فقط. لذلك، تقوم بإنشاء علامة منطقية تسمى “Subscribed” وتعيين قيمة "true" للمستخدمين الذين يرغبون في تلقي الإشعارات منك، و "false" لأولئك الذين لا يرغبون في تلقي الإشعارات.

أحد المستخدمين، آنا، قامت بتثبيت كلا التطبيقين. لا تمانع في تلقي إشعارات حول بعض الأخبار العاجلة، لكنها اختارت عدم تلقي أي إشعارات من تطبيق اللعبة.

إذا كانت علامة “Subscribed” خاصة بالتطبيق، فسيتم كل شيء كما هو مخطط له. ومع ذلك، في حالة كانت هذه العلامة غير خاصة بالتطبيق، فسيقوم كل تطبيق من تطبيقاتك بالكتابة فوق القيمة التي حددها التطبيق الآخر، مما قد يفسد استهدافك ويسبب الإحباط.

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

العلامات الخاصة بالمستخدم

Anchor link to

جميع العلامات في Pushwoosh خاصة بالمستخدم حسب التصميم ويتم تعيينها لجميع أجهزة المستخدم عند تعيينها بواسطة UserID بدلاً من HWID.

مثال
{
"request":{
"application": "XXXXX-XXXXX", // Pushwoosh application code
"userId": "the id of a specific user",
"tags": {
"UserSpecificStringTag": "string value",
"UserSpecificIntegerTag": 42
}
}
}

العلامات الافتراضية

Anchor link to

هذه العلامات متاحة من Pushwoosh بشكل افتراضي، لذلك لا يتعين عليك (وفي الواقع، لا ينبغي عليك) تعيينها يدويًا. يتم تعيين معظمها من التطبيق وإرسالها إلى خادمنا عبر registerDevice واستدعاءات API أخرى، وبعضها يتم تعيينه بواسطة الخادم نفسه.

الاسمالنوعمكان التعيينالوصف
Application VersionVersionSDKالإصدار الحالي من التطبيق المثبت على الجهاز
Browser TypeStringSDKعند تسجيل جهاز لمشروع الويب الخاص بك، يتم تتبع نوعه - محمول أو سطح مكتب - تلقائيًا
CityStringServerآخر موقع جغرافي مسجل للجهاز
CountryStringServerآخر موقع جغرافي مسجل للجهاز
Device ModelStringSDKيشير إلى طراز الجهاز الذي تم تثبيت التطبيق عليه
First InstallDateServerيشير إلى الوقت الذي تم فيه تسجيل الجهاز لتلقي الإشعارات لأول مرة
In-App ProductListSDKالمنتجات داخل التطبيق التي اشتراها مستخدم التطبيق
Last In-App Purchase DateDateSDKتاريخ آخر عملية شراء داخل التطبيق تمت على الجهاز
LanguageStringSDKاختصار من حرفين صغيرين للغة الجهاز وفقًا لـ ISO-639-1؛ مأخوذ من إعدادات الجهاز
Last Application OpenDateServerوقت آخر تشغيل للتطبيق على الجهاز
OS VersionVersionSDKإصدار نظام التشغيل الذي يعمل على الجهاز
PlatformStringSDKالمنصة التي يستخدم عليها المستخدم مشروعك.
Push Alerts EnabledBooleanSDKيشير إلى ما إذا كانت تنبيهات الإشعارات اللحظية مسموح بها في إعدادات الجهاز
SDK VersionVersionSDKإصدار Pushwoosh SDK المطبق على الجهاز
Unsubscribed EmailsBooleanSDKيشير إلى ما إذا كان المستخدم قد ألغى الاشتراك في تلقي رسائل البريد الإلكتروني من تطبيقك

العلامات المخصصة

Anchor link to

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

كيفية إعداد علامة مخصصة

Anchor link to

يمكنك إضافة علامة جديدة في لوحة تحكم Pushwoosh أو استخدام طريقة /addTag.

POST https://api.pushwoosh.com/json/1.3/addTag

ينشئ علامة في حسابك.

نص الطلب

Anchor link to
الاسمالنوعالوصف
auth*stringرمز الوصول إلى API من لوحة تحكم Pushwoosh.
tag*objectمعلمات العلامة.
tag.name*stringاسم العلامة.
tag.type*integerنوع العلامة. انظر القيم الممكنة أدناه.
tag.application_specificbooleanيحدد ما إذا كانت قيمة العلامة يجب أن تكون مختلفة لتطبيقات متعددة أو أن تكون هي نفسها عبر تطبيقات متعددة.
{
"status_code": 200,
"status_message": "OK",
"response": {
"result": true
}
}
مثال
{
"request": {
"auth": "yxoPUlwqm…………pIyEX4H", // required, API access token from Pushwoosh Control Panel
"tag": {
"name": "TAG_NAME", // required
"type": 1, // required, see possible values below
"application_specific": true, // or 'false', optional. Defines whether the tag value should be different for multiple apps or be the same across multiple apps
"user_specific": true // or 'false', optional, used for application_specific tags
}
}
}

أنواع قيم العلامات الممكنة:

  • 1 - عدد صحيح
  • 2 - سلسلة نصية
  • 3 - قائمة
  • 4 - تاريخ
  • 5 - قيمة منطقية
  • 6 - عدد عشري. مثال: 19.95
  • 7 - إصدار. مثال: “1.0.0.0”

كيفية جمع المعلومات من المستخدمين

Anchor link to

بمجرد إضافة وتكوين علامة، تكون جاهزة لبدء جمع المعلومات من المستخدمين. اتبع هذه الخطوات لتنفيذها:

  1. ادمج Pushwoosh SDK في مشروعك باتباع دليل التكامل ذي الصلة.
  2. استخدم دالة setTags لتعيين العلامات وجمع بيانات المستخدم.

فيما يلي أمثلة تنفيذ لأطر عمل مختلفة باستخدام دالة setTags.

iOS Native

NSDictionary *tags = @{
@"Alias" : aliasField.text,
@"FavNumber" : @([favNumField.text intValue]),
@"price" : [PWTags incrementalTagWithInteger:5],
@"List" : @[ @"Item1", @"Item2", @"Item3" ]
};
[[PushNotificationManager pushManager] setTags:tags];

الوثائق

Unity

يعين علامة عدد صحيح للجهاز.

public virtual void SetIntTag(string tagName, int tagValue)
SetStringTag
Anchor link to

يعين علامة سلسلة نصية للجهاز.

public virtual void SetStringTag(string tagName, string tagValue)
SetListTag
Anchor link to

يعين علامة قائمة للجهاز.

public virtual void SetListTag(string tagName, List<object> tagValues)

الوثائق

تعيين العلامات عبر واجهة برمجة التطبيقات (API)

Anchor link to

بينما في معظم الحالات (99%)، يتم تعيين العلامات من التطبيق، يمكنك أيضًا تعيين العلامات عبر Pushwoosh API. فيما يلي مثال على طلب نموذجي إلى نقطة نهاية /setTags:

POST https://api.pushwoosh.com/json/1.3/setTags

{
"request": {
"application": "XXXXX-XXXXX", // required, Pushwoosh application code
"hwid": "8f65bXXXf378eXXXbeceXXX4e153XXX2", // required, hardware device ID used in /registerDevice API
"tags": { // required
"StringTag": "string value", // Example of a string tag
"IntegerTag": 42, // Example of an integer tag
"ListTag": ["string1", "string2"], // Example of a list tag
"DateTag": "2024-10-02 22:11", // Note: time must be in UTC
"BooleanTag": true // Valid values: true, false
}
}
}

لمزيد من التفاصيل، راجع وثائق setTags API

استخدام علامة المدينة (City) الافتراضية

Anchor link to

يتم تحديد موقع الجهاز بناءً على عنوان IP الخاص به في اللحظة التي تم فيها تشغيل تطبيقك على هذا الجهاز لآخر مرة. يقدم GeoIP بيانات الموقع إلى Pushwoosh، ويحفظ Pushwoosh الموقع المستلم من GeoIP كقيمة لعلامة المدينة لجهاز معين.

في بعض الحالات، يختلف الموقع الذي يقدمه GeoIP عن اسم المدينة — على سبيل المثال، عندما يشير إلى منطقة من مدينة أو وحدة إدارية أخرى. يرجى توخي الحذر عند استخدام علامة المدينة الافتراضية لأغراض التقسيم: تأكد من تحديد القيم المناسبة.

على سبيل المثال، إذا كنت ستستهدف مستخدمين من ميونيخ، فيجب عليك تغطيتها بمجموعة من قيم علامة المدينة، بما في ذلك “Munich” نفسها (مع جميع القيم المقابلة، مثل المتغيرات المختلفة للتهجئة التي يمكن أن يعيدها GeoIP ويتم حفظها كقيم للعلامة) والعديد من المناطق المجاورة.