إنشاء قائمة مستخدمين

يمكنك استخدام قوائم المستخدمين في حملات تجديد النشاط التسويقي لإعادة التفاعل مع المستخدمين الذين اتّخذوا إجراءات معيّنة على موقعك الإلكتروني أو تطبيقك. تتيح Google Ads API عدة أنواع من قوائم المستخدمين. يركّز هذا الدليل على إنشاء قوائم مستخدمين مستندة إلى قواعد.

قوائم المستخدمين المستندة إلى قواعد

يمكن أن تحتوي قوائم المستخدمين المستندة إلى قواعد والتي تم إنشاؤها باستخدام flexible_rule_user_list على قواعد متعدّدة. يتم تمثيل كل قاعدة برسالة UserListRuleInfo، تحتوي على rule_type يحدّد طريقة دمج عناصر القاعدة ضمن مجموعات عناصر القاعدة.

إذا كانت قيمة rule_type هي OR_OF_ANDS (القيمة التلقائية)، ستعمل "إعلانات Google" على AND جميع عناصر القاعدة في مجموعة عناصر القاعدة. وهذا يعني أنّه بالنسبة إلى قاعدة معيّنة، يجب أن يتطابق كل عنصر من عناصر القاعدة في مجموعة واحدة على الأقل من مجموعات عناصر القاعدة حتى يتم استيفاء القاعدة. ويُطلق على ذلك اسم "الصيغة العادية الانفصالية".

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

كل ما عليك فعله هو دمج مجموعات عناصر القواعد أعلاه في قائمة مستخدمين جديدة. في هذه الحالة، سنترك وظيفة OR_OF_ANDS التلقائية كما هي، لأنّنا أنشأنا هذه القواعد لهذا الغرض.

Java

FlexibleRuleUserListInfo flexibleRuleUserListInfo =
    FlexibleRuleUserListInfo.newBuilder()
        .setInclusiveRuleOperator(UserListFlexibleRuleOperator.AND)
        .addInclusiveOperands(
            FlexibleRuleOperandInfo.newBuilder()
                .setRule(
                    // The default rule_type for a UserListRuleInfo object is OR of ANDs
                    // (disjunctive normal form). That is, rule items will be ANDed together
                    // within rule item groups and the groups themselves will be ORed together.
                    UserListRuleInfo.newBuilder()
                        .addRuleItemGroups(checkoutDateRuleGroup)
                        .addRuleItemGroups(checkoutAndCartSizeRuleGroup))
                // Optional: includes a lookback window for this rule, in days.
                .setLookbackWindowDays(7L))
        .build();
      

#C

FlexibleRuleUserListInfo flexibleRuleUserListInfo = new FlexibleRuleUserListInfo();
FlexibleRuleOperandInfo flexibleRuleOperandInfo = new FlexibleRuleOperandInfo() {
    Rule = new UserListRuleInfo()
};
flexibleRuleOperandInfo.Rule.RuleItemGroups.Add(checkoutAndCartSizeRuleGroup);
flexibleRuleOperandInfo.Rule.RuleItemGroups.Add(checkoutDateRuleGroup);
flexibleRuleUserListInfo.InclusiveOperands.Add(flexibleRuleOperandInfo);
      

PHP

$flexibleRuleUserListInfo = new FlexibleRuleUserListInfo([
    'inclusive_rule_operator' => UserListFlexibleRuleOperator::PBAND,
    'inclusive_operands' => [
        new FlexibleRuleOperandInfo([
            'rule' => new UserListRuleInfo([
                // The default rule_type for a UserListRuleInfo object is OR of ANDs
                // (disjunctive normal form). That is, rule items will be ANDed together
                // within rule item groups and the groups themselves will be ORed together.
                'rule_item_groups' => [
                    $checkoutAndCartSizeRuleGroup,
                    $checkoutDateRuleGroup
                ]
            ]),
            // Optionally add a lookback window for this rule, in days.
            'lookback_window_days' => 7
        ])
    ],
    'exclusive_operands' => []
]);
      

Python

# Create a FlexibleRuleUserListInfo object, or a flexible rule
# representation of visitors with one or multiple actions.
# FlexibleRuleUserListInfo wraps UserListRuleInfo in a
# FlexibleRuleOperandInfo object that represents which user lists to
# include or exclude.
flexible_rule_user_list_info: FlexibleRuleUserListInfo = (
    rule_based_user_list_info.flexible_rule_user_list
)
flexible_rule_user_list_info.inclusive_rule_operator = (
    client.enums.UserListFlexibleRuleOperatorEnum.AND
)
# The default rule_type for a UserListRuleInfo object is OR of
# ANDs (disjunctive normal form). That is, rule items will be
# ANDed together within rule item groups and the groups
# themselves will be ORed together.
rule_operand: FlexibleRuleOperandInfo = client.get_type(
    "FlexibleRuleOperandInfo"
)
rule_operand.rule.rule_item_groups.extend(
    [
        checkout_and_cart_size_rule_group,
        checkout_date_rule_group,
    ]
)
rule_operand.lookback_window_days = 7
flexible_rule_user_list_info.inclusive_operands.append(rule_operand)
      

Ruby

r.flexible_rule_user_list = client.resource.flexible_rule_user_list_info do |frul|
  frul.inclusive_rule_operator = :AND
  frul.inclusive_operands << client.resource.flexible_rule_operand_info do |froi|
    froi.rule = client.resource.user_list_rule_info do |info|
      info.rule_item_groups += [checkout_date_rule_group, checkout_and_cart_size_rule_group]
    end
    # Optionally include a lookback window for this rule, in days.
    froi.lookback_window_days = 7
  end
end
      

Perl

my $flexible_rule_user_list_info =
  Google::Ads::GoogleAds::V22::Common::FlexibleRuleUserListInfo->new({
    inclusiveRuleOperator => AND,
    inclusiveOperands     => [
      Google::Ads::GoogleAds::V22::Common::FlexibleRuleOperandInfo->new({
          rule => Google::Ads::GoogleAds::V22::Common::UserListRuleInfo->new({
              # The default rule_type for a UserListRuleInfo object is OR of
              # ANDs (disjunctive normal form). That is, rule items will be
              # ANDed together within rule item groups and the groups
              # themselves will be ORed together.
              ruleItemGroups => [
                $checkout_date_rule_group, $checkout_and_cart_size_rule_group
              ]}
          ),
          # Optionally include a lookback window for this rule, in days.
          lookback_window_days => 7
        })
    ],
    exclusiveOperands => []});
      

إدراج المستخدمين السابقين في قائمة مستندة إلى قواعد

يمكنك أيضًا تضمين المستخدمين السابقين في قائمة مستخدمين مستندة إلى قواعد من خلال ضبط قيمة prepopulation_status لقائمة المستخدمين على REQUESTED، وتتبُّع تقدّم عملية التعبئة المسبقة غير المتزامنة من خلال التحقّق بشكل دوري من حالة هذا الحقل.

لن يؤدي ذلك إلا إلى إضافة المستخدمين السابقين من آخر 30 يومًا، وذلك حسب مدة العضوية في القائمة وتاريخ إضافة علامة تجديد النشاط التسويقي. سيتم تعديل الحالة إلى FINISHED بعد معالجة الطلب، أو إلى FAILED في حال تعذّر معالجة الطلب.