Pré-requisitos
Antes de poder usar esse recurso, você precisará integrar o Android Braze SDK.
Atribuições padrão do usuário
Para definir uma atribuição padrão para um usuário, chame o método getCurrentUser()
em sua instância do Braze para obter uma referência ao usuário atual do seu app. Em seguida, é possível chamar métodos para definir uma atribuição de usuário.
1
2
3
4
5
6
| Braze.getInstance(context).getCurrentUser(new IValueCallback<BrazeUser>() {
@Override
public void onSuccess(BrazeUser brazeUser) {
brazeUser.setFirstName("first_name");
}
}
|
1
2
3
| Braze.getInstance(context).getCurrentUser { brazeUser ->
brazeUser.setFirstName("first_name")
}
|
O Braze fornece métodos predefinidos para configurar as seguintes atribuições de usuário dentro da classe BrazeUser. Para obter as especificações do método, consulte nosso KDoc.
- Nome
- Sobrenome
- País
- Idioma
- Data de nascimento
- E-mail
- Gênero
- Cidade natal
- Número de telefone
note:
Todos os valores de string, como nome, sobrenome, país e cidade natal, estão limitados a 255 caracteres.
Atributos personalizados do usuário
Além dos atributos padrão de usuários, o Braze também permite definir atributos personalizados usando vários tipos de dados diferentes. Para saber mais sobre a opção de segmentação de cada atributo, consulte Coleta de dados de usuários.
Definindo atributos personalizados
Para definir um atributo personalizado com um valor string
:
1
2
3
4
5
6
| Braze.getInstance(context).getCurrentUser(new IValueCallback<BrazeUser>() {
@Override
public void onSuccess(BrazeUser brazeUser) {
brazeUser.setCustomUserAttribute("your_attribute_key", "your_attribute_value");
}
}
|
1
2
3
| Braze.getInstance(context).getCurrentUser { brazeUser ->
brazeUser.setCustomUserAttribute("your_attribute_key", "your_attribute_value")
}
|
Para definir um atributo personalizado com um valor int
:
1
2
3
4
5
6
7
8
9
| Braze.getInstance(context).getCurrentUser(new IValueCallback<BrazeUser>() {
@Override
public void onSuccess(BrazeUser brazeUser) {
brazeUser.setCustomUserAttribute("your_attribute_key", YOUR_INT_VALUE);
// Integer attributes may also be incremented using code like the following:
brazeUser.incrementCustomUserAttribute("your_attribute_key", YOUR_INCREMENT_VALUE);
}
}
|
1
2
3
4
5
6
| Braze.getInstance(context).getCurrentUser { brazeUser ->
brazeUser.setCustomUserAttribute("your_attribute_key", YOUR_INT_VALUE)
// Integer attributes may also be incremented using code like the following:
brazeUser.incrementCustomUserAttribute("your_attribute_key", YOUR_INCREMENT_VALUE)
}
|
Para definir um atributo personalizado com um valor inteiro long
:
1
2
3
4
5
6
| Braze.getInstance(context).getCurrentUser(new IValueCallback<BrazeUser>() {
@Override
public void onSuccess(BrazeUser brazeUser) {
brazeUser.setCustomUserAttribute("your_attribute_key", YOUR_LONG_VALUE);
}
});
|
1
2
3
| Braze.getInstance(context).getCurrentUser { brazeUser ->
brazeUser.setCustomUserAttribute("your_attribute_key", YOUR_LONG_VALUE)
}
|
Para definir um atributo personalizado com um valor float
:
1
2
3
4
5
6
| Braze.getInstance(context).getCurrentUser(new IValueCallback<BrazeUser>() {
@Override
public void onSuccess(BrazeUser brazeUser) {
brazeUser.setCustomUserAttribute("your_attribute_key", YOUR_FLOAT_VALUE);
}
});
|
1
2
3
| Braze.getInstance(context).getCurrentUser { brazeUser ->
brazeUser.setCustomUserAttribute("your_attribute_key", YOUR_FLOAT_VALUE)
}
|
Para definir um atributo personalizado com um valor double
:
1
2
3
4
5
6
| Braze.getInstance(context).getCurrentUser(new IValueCallback<BrazeUser>() {
@Override
public void onSuccess(BrazeUser brazeUser) {
brazeUser.setCustomUserAttribute("your_attribute_key", YOUR_DOUBLE_VALUE);
}
});
|
1
2
3
| Braze.getInstance(context).getCurrentUser { brazeUser ->
brazeUser.setCustomUserAttribute("your_attribute_key", YOUR_DOUBLE_VALUE)
}
|
Para definir um atributo personalizado com um valor boolean
:
1
2
3
4
5
6
7
8
9
10
| Braze.getInstance(context).getCurrentUser(new IValueCallback<BrazeUser>() {
@Override
public void onSuccess(BrazeUser brazeUser) {
brazeUser.setCustomUserAttribute("your_attribute_key", YOUR_DATE_VALUE);
// This method will assign the current time to a custom attribute at the time the method is called:
brazeUser.setCustomUserAttributeToNow("your_attribute_key");
// This method will assign the date specified by SECONDS_FROM_EPOCH to a custom attribute:
brazeUser.setCustomUserAttributeToSecondsFromEpoch("your_attribute_key", SECONDS_FROM_EPOCH);
}
});
|
1
2
3
4
5
6
7
| Braze.getInstance(context).getCurrentUser { brazeUser ->
brazeUser.setCustomUserAttribute("your_attribute_key", YOUR_DATE_VALUE)
// This method will assign the current time to a custom attribute at the time the method is called:
brazeUser.setCustomUserAttributeToNow("your_attribute_key")
// This method will assign the date specified by SECONDS_FROM_EPOCH to a custom attribute:
brazeUser.setCustomUserAttributeToSecondsFromEpoch("your_attribute_key", SECONDS_FROM_EPOCH)
}
|
warning:
As datas passadas para a Braze com esse método devem estar no formato ISO 8601 (e.g 2013-07-16T19:20:30+01:00
) ou no formato yyyy-MM-dd'T'HH:mm:ss:SSSZ
(e.g 2016-12-14T13:32:31.601-0800
).
O número máximo de elementos em matrizes de atributos personalizados tem como padrão 25. O máximo para vetores individuais pode ser aumentado para até 100 no dashboard da Braze, em Configurações de dados > Atributos personalizados). As matrizes que excederem o número máximo de elementos serão truncadas para conter o número máximo de elementos. Para saber mais sobre matrizes de atributos personalizados e seu comportamento, consulte nossa documentação sobre matrizes.
1
2
3
4
5
6
7
8
9
10
11
| Braze.getInstance(context).getCurrentUser(new IValueCallback<BrazeUser>() {
@Override
public void onSuccess(BrazeUser brazeUser) {
// Setting a custom attribute with an array value
brazeUser.setCustomAttributeArray("your_attribute_key", testSetArray);
// Adding to a custom attribute with an array value
brazeUser.addToCustomAttributeArray("your_attribute_key", "value_to_add");
// Removing a value from an array type custom attribute
brazeUser.removeFromCustomAttributeArray("your_attribute_key", "value_to_remove");
}
});
|
1
2
3
4
5
6
7
8
| Braze.getInstance(context).getCurrentUser { brazeUser ->
// Setting a custom attribute with an array value
brazeUser.setCustomAttributeArray("your_attribute_key", testSetArray)
// Adding to a custom attribute with an array value
brazeUser.addToCustomAttributeArray("your_attribute_key", "value_to_add")
// Removing a value from an array type custom attribute
brazeUser.removeFromCustomAttributeArray("your_attribute_key", "value_to_remove")
}
|
Desativação de um atributo personalizado
Os atributos personalizados também podem ser desmarcados usando o seguinte método:
1
2
3
4
5
6
| Braze.getInstance(context).getCurrentUser(new IValueCallback<BrazeUser>() {
@Override
public void onSuccess(BrazeUser brazeUser) {
brazeUser.unsetCustomUserAttribute("your_attribute_key");
}
});
|
1
2
3
| Braze.getInstance(context).getCurrentUser { brazeUser ->
brazeUser.unsetCustomUserAttribute("your_attribute_key")
}
|
Usando a API REST
Também é possível usar nossa API REST para definir ou cancelar as atribuições do usuário. Para saber mais, consulte Pontos de extremidade de dados de usuários.
Configuração de inscrições de usuários
Para configurar uma inscrição para seus usuários (envio de e-mail ou push), chame as funções setEmailNotificationSubscriptionType()
ou setPushNotificationSubscriptionType()
, respectivamente. Ambas as funções usam o tipo de enum NotificationSubscriptionType
como argumentos. Esse tipo tem três estados diferentes:
Status da inscrição |
Definição |
OPTED_IN |
Inscrição e aceitação explícita |
SUBSCRIBED |
Inscrição feita, mas sem aceitação explícita |
UNSUBSCRIBED |
Cancelamento da inscrição e/ou aceitação explícita |
important:
Nenhuma aceitação explícita é exigida pelo Android para enviar notificações por push aos usuários. Quando um usuário é registrado para push, ele é definido como SUBSCRIBED
em vez de OPTED_IN
por padrão. Consulte Gerenciar inscrições de usuários para saber mais sobre a implementação de inscrições e aceitação explícita.
Configuração de envios de e-mail
1
2
3
4
5
6
| Braze.getInstance(context).getCurrentUser(new IValueCallback<BrazeUser>() {
@Override
public void onSuccess(BrazeUser brazeUser) {
brazeUser.setEmailNotificationSubscriptionType(emailNotificationSubscriptionType);
}
});
|
1
2
3
| Braze.getInstance(context).getCurrentUser { brazeUser ->
brazeUser.setEmailNotificationSubscriptionType(emailNotificationSubscriptionType)
}
|
Configuração da inscrição de notificações por push
1
2
3
4
5
6
| Braze.getInstance(context).getCurrentUser(new IValueCallback<BrazeUser>() {
@Override
public void onSuccess(BrazeUser brazeUser) {
brazeUser.setPushNotificationSubscriptionType(pushNotificationSubscriptionType);
}
});
|
1
2
3
| Braze.getInstance(context).getCurrentUser { brazeUser ->
brazeUser.setPushNotificationSubscriptionType(pushNotificationSubscriptionType)
}
|
Pré-requisitos
Antes de usar este recurso, você precisará integrar o SDK Swift Braze.
Default user attributes
Supported attributes
The following attributes should be set on the Braze.User
object:
firstName
lastName
email
dateOfBirth
country
language
homeCity
phone
gender
Setting default attributes
To set a default user attribute, set the appropriate field on the shared Braze.User
object. The following is an example of setting the first name attribute:
1
| AppDelegate.braze?.user.set(firstName: "Alex")
|
1
| [AppDelegate.braze.user setFirstName:@"Alex"];
|
Unsetting default attributes
To unset a default user attribute, pass nil
to the relevant method.
1
| AppDelegate.braze?.user.set(firstName: nil)
|
1
| [AppDelegate.braze.user setFirstName:nil];
|
Custom user attributes
In addition to the default user attributes, Braze also allows you to define custom attributes using several different data types. For more information on each attribute’s segmentation option, see User data collection.
important:
Custom attribute values have a maximum length of 255 characters; longer values will be truncated. For more information, refer to Braze.User
.
Setting custom attributes
To set a custom attribute with a string
value:
1
| AppDelegate.braze?.user.setCustomAttribute(key: "your_attribute_key", value: "your_attribute_value")
|
1
| [AppDelegate.braze.user setCustomAttributeWithKey:@"your_attribute_key" stringValue:"your_attribute_value"];
|
To set a custom attribute with an integer
value:
1
| AppDelegate.braze?.user.setCustomAttribute(key: "your_attribute_key", value: yourIntegerValue)
|
1
| [AppDelegate.braze.user setCustomAttributeWithKey:@"your_attribute_key" andIntegerValue:yourIntegerValue];
|
Braze treats float
and double
values the same within our database. To set a custom attribute with a double value:
1
| AppDelegate.braze?.user.setCustomAttribute(key: "your_attribute_key", value: yourDoubleValue)
|
1
| [AppDelegate.braze.user setCustomAttributeWithKey:@"your_attribute_key" andDoubleValue:yourDoubleValue];
|
To set a custom attribute with a boolean
value:
1
| AppDelegate.braze?.user.setCustomAttribute("your_attribute_key", value: yourBoolValue)
|
1
| [AppDelegate.braze.user setCustomAttributeWithKey:@"your_attribute_key" andBOOLValue:yourBOOLValue];
|
To set a custom attribute with a date
value:
1
| AppDelegate.braze?.user.setCustomAttribute("your_attribute_key", dateValue:yourDateValue)
|
1
| [AppDelegate.braze.user setCustomAttributeWithKey:@"your_attribute_key" andDateValue:yourDateValue];
|
The maximum number of elements in custom attribute arrays defaults to 25. Arrays exceeding the maximum number of elements will be truncated to contain the maximum number of elements. The maximum for individual arrays can be increased to up to 100. If you would like this maximum increased, reach out to your customer service manager.
To set a custom attribute with an array
value:
1
2
3
4
5
6
| // Setting a custom attribute with an array value
AppDelegate.braze?.user.setCustomAttributeArray(key: "array_name", array: ["value1", "value2"])
// Adding to a custom attribute with an array value
AppDelegate.braze?.user.addToCustomAttributeArray(key: "array_name", value: "value3")
// Removing a value from an array type custom attribute
AppDelegate.braze?.user.removeFromCustomAttributeArray(key: "array_name", value: "value2")
|
1
2
3
4
5
6
7
8
| // Setting a custom attribute with an array value
[AppDelegate.braze.user setCustomAttributeArrayWithKey:@"array_name" array:@[@"value1", @"value2"]];
// Adding to a custom attribute with an array value
[AppDelegate.braze.user addToCustomAttributeArrayWithKey:@"array_name" value:@"value3"];
// Removing a value from an array type custom attribute
[AppDelegate.braze.user removeFromCustomAttributeArrayWithKey:@"array_name" value:@"value2"];
// Removing an entire array and key
[AppDelegate.braze.user setCustomAttributeArrayWithKey:@"array_name" array:nil];
|
Incrementing or decrementing custom attributes
This code is an example of an incrementing custom attribute. You may increment the value of a custom attribute by any integer
or long
value:
1
| AppDelegate.braze?.user.incrementCustomUserAttribute(key: "your_attribute_key", by: incrementIntegerValue)
|
1
| [AppDelegate.braze.user incrementCustomUserAttribute:@"your_attribute_key" by:incrementIntegerValue];
|
Unsetting custom attributes
To unset a custom attribute, pass the relevant attribute key to the unsetCustomAttribute
method.
1
| AppDelegate.braze?.user.unsetCustomAttribute(key: "your_attribute_key")
|
To unset a custom attribute, pass the relevant attribute key to the unsetCustomAttributeWithKey
method.
1
| [AppDelegate.braze.user unsetCustomAttributeWithKey:@"your_attribute_key"];
|
Nesting custom attributes
You can also nest properties within custom attributes. In the following example, a favorite_book
object with nested properties is set as a custom attribute on the user profile. For more details, refer to Nested Custom Attributes.
1
2
3
4
5
6
7
| let favoriteBook: [String: Any?] = [
"title": "The Hobbit",
"author": "J.R.R. Tolkien",
"publishing_date": "1937"
]
braze.user.setCustomAttribute(key: "favorite_book", dictionary: favoriteBook)
|
1
2
3
4
5
6
7
| NSDictionary *favoriteBook = @{
@"title": @"The Hobbit",
@"author": @"J.R.R. Tolkien",
@"publishing_date": @"1937"
};
[AppDelegate.braze.user setCustomAttributeWithKey:@"favorite_book" dictionary:favoriteBook];
|
Using the REST API
You can also use our REST API to set or unset user attributes. For more information, refer to User Data Endpoints.
Setting user subscriptions
To set up a subscription for your users (either email or push), call the functions set(emailSubscriptionState:)
or set(pushNotificationSubscriptionState:)
, respectively. Both of these functions take the enum type Braze.User.SubscriptionState
as arguments. This type has three different states:
Subscription Status |
Definition |
optedIn |
Subscribed, and explicitly opted in |
subscribed |
Subscribed, but not explicitly opted in |
unsubscribed |
Unsubscribed and/or explicitly opted out |
Users who grant permission for an app to send them push notifications default to the status of optedIn
as iOS requires an explicit opt-in.
Users will be set to subscribed
automatically upon receipt of a valid email address; however, we suggest that you establish an explicit opt-in process and set this value to optedIn
upon receipt of explicit consent from your user. Refer to Managing user subscriptions for more details.
Setting email subscriptions
1
| AppDelegate.braze?.user.set(emailSubscriptionState: Braze.User.SubscriptionState)
|
1
| [AppDelegate.braze.user setEmailSubscriptionState: BRZUserSubscriptionState]
|
Setting push notification subscriptions
1
| AppDelegate.braze?.user.set(pushNotificationSubscriptionState: Braze.User.SubscriptionState)
|
1
| [AppDelegate.braze.user setPushNotificationSubscriptionState: BRZUserSubscriptionState]
|
Refer to Managing user subscriptions for more details.
Prerequisites
Before you can use this feature, you’ll need to integrate the Web Braze SDK.
Atribuições padrão do usuário
Para definir uma atribuição padrão para um usuário, chame o método getCurrentUser()
em sua instância do Braze para obter uma referência ao usuário atual do seu aplicativo. Em seguida, é possível chamar métodos para definir uma atribuição de usuário.
1
| braze.getUser().setFirstName("SomeFirstName");
|
1
| braze.getUser().setGender(braze.User.Genders.FEMALE);
|
1
| braze.getUser().setDateOfBirth(2000, 12, 25);
|
Usando o Google Tag Manager, os atributos padrão do usuário (como o nome do usuário) devem ser registrados da mesma forma que os atributos personalizados do usuário. Certifique-se de que os valores que está passando para as atribuições padrão correspondam ao formato esperado especificado na documentação da classe User.
Por exemplo, o atributo gender pode aceitar qualquer um dos seguintes valores: "m" | "f" | "o" | "u" | "n" | "p"
. Portanto, para definir o gênero de um usuário como feminino, crie uma tag HTML personalizada com o seguinte conteúdo:
1
2
3
| <script>
window.braze.getUser().setGender("f")
</script>
|
O Braze fornece métodos predefinidos para configurar as seguintes atribuições de usuário na classeUser
:
- Nome
- Sobrenome
- Idioma
- País
- Data de nascimento
- E-mail
- Gênero
- Cidade
- Número de telefone
Atributos personalizados do usuário
Além dos métodos padrão de atribuição de usuário, também é possível definir atributos personalizados para seus usuários. Especificações completas do método, consulte nossos JSDocs.
Para definir um atributo personalizado com um valor string
:
1
2
3
4
| braze.getUser().setCustomUserAttribute(
YOUR_ATTRIBUTE_KEY_STRING,
YOUR_STRING_VALUE
);
|
Para definir um atributo personalizado com um valor integer
:
1
2
3
4
5
6
7
8
9
10
| braze.getUser().setCustomUserAttribute(
YOUR_ATTRIBUTE_KEY_STRING,
YOUR_INT_VALUE
);
// Integer attributes may also be incremented using code like the following
braze.getUser().incrementCustomUserAttribute(
YOUR_ATTRIBUTE_KEY_STRING,
THE_INTEGER_VALUE_BY_WHICH_YOU_WANT_TO_INCREMENT_THE_ATTRIBUTE
);
|
Para definir um atributo personalizado com um valor date
:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
| braze.getUser().setCustomUserAttribute(
YOUR_ATTRIBUTE_KEY_STRING,
YOUR_DATE_VALUE
);
// This method will assign the current time to a custom attribute at the time the method is called
braze.getUser().setCustomUserAttribute(
YOUR_ATTRIBUTE_KEY_STRING,
new Date()
);
// This method will assign the date specified by secondsFromEpoch to a custom attribute
braze.getUser().setCustomUserAttribute(
YOUR_ATTRIBUTE_KEY_STRING,
new Date(secondsFromEpoch * 1000)
);
|
Você pode ter até 25 elementos em matrizes de atributos personalizados. As matrizes individuais que são definidas manualmente (não detectadas automaticamente) para o Data Type podem ser aumentadas em até 100 no dashboard do Braze em Data Settings > Custom Attributes. Se quiser aumentar esse máximo, entre em contato com o gerente da sua conta Braze.
As matrizes que excederem o número máximo de elementos serão truncadas para conter o número máximo de elementos.
Para definir um atributo personalizado com um valor array
:
1
2
3
4
5
6
7
| braze.getUser().setCustomUserAttribute(YOUR_ATTRIBUTE_KEY_STRING, YOUR_ARRAY_OF_STRINGS);
// Adding a new element to a custom attribute with an array value
braze.getUser().addToCustomAttributeArray(YOUR_ATTRIBUTE_KEY_STRING, "new string");
// Removing an element from a custom attribute with an array value
braze.getUser().removeFromCustomAttributeArray(YOUR_ATTRIBUTE_KEY_STRING, "value to be removed");
|
important:
As datas passadas para o Braze com esse método devem ser objetos JavaScript Date.
important:
As chaves e os valores de atributos personalizados só podem ter no máximo 255 caracteres. Para saber mais sobre valores válidos de atributos personalizados, consulte a documentação de referência.
Os atributos personalizados do usuário não estão disponíveis devido a uma limitação na linguagem de script do Google Tag Manager. Para registrar atributos personalizados, crie uma tag HTML personalizada com o seguinte conteúdo:
1
2
3
4
5
| <script>
// Note: If using SDK version 3.x or below, use `window.appboy` instead of `window.braze`
// Version 4 or greater should use `window.braze`
window.braze.getUser().setCustomUserAttribute("attribute name", "attribute value");
</script>
|
important:
O modelo GTM não oferece suporte a propriedades aninhadas em eventos ou compras. É possível usar o HTML anterior para registrar quaisquer eventos ou compras que exijam propriedades aninhadas.
Desconfigurando um atributo personalizado
Os atributos personalizados podem ser desativados definindo seu valor como null
.
1
| braze.getUser().setCustomUserAttribute(YOUR_ATTRIBUTE_KEY_STRING, null);
|
Usando a API REST
Também é possível usar nossa API REST para definir ou cancelar as atribuições do usuário. Para saber mais, consulte Pontos de extremidade de dados de usuários.
Configuração de inscrições de usuários
Para configurar uma inscrição para seus usuários (envio de e-mail ou push), chame as funções setEmailNotificationSubscriptionType()
ou setPushNotificationSubscriptionType()
, respectivamente. Ambas as funções recebem o tipo enum
braze.User.NotificationSubscriptionTypes
como argumentos. Esse tipo tem três estados diferentes:
Status da inscrição |
Definição |
braze.User.NotificationSubscriptionTypes.OPTED_IN |
Inscrição e aceitação explícita |
braze.User.NotificationSubscriptionTypes.SUBSCRIBED |
Inscrição feita, mas sem aceitação explícita |
braze.User.NotificationSubscriptionTypes.UNSUBSCRIBED |
Cancelamento da inscrição e/ou aceitação explícita |
Quando um usuário é registrado para receber notificações por push, o navegador o obriga a optar por permitir ou bloquear notificações e, se ele optar por permitir o push, será definido como OPTED_IN
por padrão.
Visite Gerenciar inscrições de usuários para saber mais sobre a implementação de inscrições e aceitação explícita.
Cancelamento da inscrição de um usuário no envio de e-mail
1
| braze.getUser().setEmailNotificationSubscriptionType(braze.User.NotificationSubscriptionTypes.UNSUBSCRIBED);
|
Cancelar inscrição de um usuário no push
1
| braze.getUser().setPushNotificationSubscriptionType(braze.User.NotificationSubscriptionTypes.UNSUBSCRIBED);
|
Pré-requisitos
Antes de poder usar esse recurso, você precisará integrar o Unity Braze SDK.
Atribuições padrão do usuário
Para definir as atribuições do usuário, é necessário chamar o método apropriado no objeto BrazeBinding
. A seguir, há uma lista de atribuições internas que podem ser chamadas usando esse método.
Atributo |
Exemplo de código |
Nome |
AppboyBinding.SetUserFirstName("first name"); |
Sobrenome |
AppboyBinding.SetUserLastName("last name"); |
E-mail do usuário |
AppboyBinding.SetUserEmail("[email protected]"); |
Gênero |
AppboyBinding.SetUserGender(Appboy.Models.Gender); |
Data de nascimento |
AppboyBinding.SetUserDateOfBirth("year(int)", "month(int)", "day(int)"); |
País do usuário |
AppboyBinding.SetUserCountry("country name"); |
Cidade de origem do usuário |
AppboyBinding.SetUserHomeCity("city name"); |
Envio de e-mail para o usuário |
AppboyBinding.SetUserEmailNotificationSubscriptionType(AppboyNotificationSubscriptionType); |
Inscrição push do usuário |
AppboyBinding.SetUserPushNotificationSubscriptionType(AppboyNotificationSubscriptionType); |
Número de telefone do usuário |
AppboyBinding.SetUserPhoneNumber("phone number"); |
Atributos personalizados do usuário
Além dos atributos padrão de usuários, o Braze também permite definir atributos personalizados usando vários tipos de dados diferentes. Para saber mais sobre a opção de segmentação de cada atributo, consulte Coleta de dados de usuários.
Definindo atributos personalizados
1
| AppboyBinding.SetCustomUserAttribute("custom string attribute key", "string custom attribute");
|
1
2
3
4
| // Set Integer Attribute
AppboyBinding.SetCustomUserAttribute("custom int attribute key", 'integer value');
// Increment Integer Attribute
AppboyBinding.IncrementCustomUserAttribute("key", increment(int))
|
1
| AppboyBinding.SetCustomUserAttribute("custom double attribute key", 'double value');
|
1
| AppboyBinding.SetCustomUserAttribute("custom boolean attribute key", 'boolean value');
|
1
| AppboyBinding.SetCustomUserAttributeToNow("custom date attribute key");
|
1
| AppboyBinding.SetCustomUserAttributeToSecondsFromEpoch("custom date attribute key", 'integer value');
|
note:
As datas passadas para o Braze devem estar no formato ISO 8601 (como 2013-07-16T19:20:30+01:00
) ou no formato yyyy-MM-dd'T'HH:mm:ss:SSSZ
(como2016-12-14T13:32:31.601-0800
).
1
2
3
4
5
6
| // Setting An Array
AppboyBinding.SetCustomUserAttributeArray("key", array(List), sizeOfTheArray(int))
// Adding to an Array
AppboyBinding.AddToCustomUserAttributeArray("key", "Attribute")
// Removing an item from an Array
AppboyBinding.RemoveFromCustomUserAttributeArray("key", "Attribute")
|
important:
Os valores de atributos personalizados têm um comprimento máximo de 255 caracteres; valores mais longos serão truncados.
Desativação de atributos personalizados
Para cancelar a definição de um atributo personalizado de usuário, use o seguinte método:
1
| AppboyBinding.UnsetCustomUserAttribute("custom attribute key");
|
Usando a API REST
Também é possível usar nossa API REST para definir ou cancelar as atribuições do usuário. Para saber mais, consulte Pontos de extremidade de dados de usuários.
Configuração de inscrições de usuários
Para configurar uma inscrição por e-mail ou push para seus usuários, chame uma das seguintes funções.
1
2
3
4
5
| // Email notifications
AppboyBinding.SetUserEmailNotificationSubscriptionType()
// Push notifications
AppboyBinding.SetPushNotificationSubscriptionType()`
|
Ambas as funções recebem Appboy.Models.AppboyNotificationSubscriptionType
como argumentos, que tem três estados diferentes:
Status de inscrição |
Definição |
OPTED_IN |
Inscrição e aceitação explícita |
SUBSCRIBED |
Inscrição feita, mas sem aceitação explícita |
UNSUBSCRIBED |
Cancelamento da inscrição e/ou aceitação explícita |
note:
Nenhuma aceitação explícita é exigida pelo Windows para enviar notificações por push aos usuários. Quando um usuário é registrado para push, ele é definido como SUBSCRIBED
em vez de OPTED_IN
por padrão. Para saber mais, consulte nossa documentação sobre a implementação de inscrições e aceitações explícitas.
Tipo de inscrição |
Descrição |
EmailNotificationSubscriptionType |
Os usuários serão configurados para SUBSCRIBED automaticamente após o recebimento de um endereço de e-mail válido. No entanto, sugerimos que você estabeleça um processo de aceitação explícito e defina esse valor como OPTED_IN após o recebimento do consentimento explícito do usuário. Visite nosso documento Alterando inscrições de usuários para obter mais detalhes. |
PushNotificationSubscriptionType |
Os usuários serão configurados para SUBSCRIBED automaticamente mediante registro push válido. No entanto, sugerimos que você estabeleça um processo de aceitação explícito e defina esse valor como OPTED_IN após o recebimento do consentimento explícito do usuário. Visite nosso documento Alterando inscrições de usuários para obter mais detalhes. |
note:
Esses tipos se enquadram em Appboy.Models.AppboyNotificationSubscriptionType
.
Configuração de envios de e-mail
1
| AppboyBinding.SetUserEmailNotificationSubscriptionType(AppboyNotificationSubscriptionType.OPTED_IN);
|
Configuração de inscrições de notificação por push
1
| AppboyBinding.SetUserPushNotificationSubscriptionType(AppboyNotificationSubscriptionType.OPTED_IN);
|
Default User Attributes
Supported attributes
The following attributes should be set on the UBrazeUser
object:
SetFirstName
SetLastName
SetEmail
SetDateOfBirth
SetCountry
SetLanguage
SetHomeCity
SetPhoneNumber
SetGender
Setting default attributes
To set a default attribute for a user, call the GetCurrentUser()
method on the shared UBrazeUser
object to get a reference to the current user of your app. Then you can call methods to set a user attribute.
1
2
3
4
5
| UBraze->GetCurrentUser([](UBrazeUser* BrazeUser) {
if (BrazeUser) {
BrazeUser->SetFirstName(TEXT("Alex"));
}
});
|
Custom User Attributes
In addition to the default user attributes, Braze also allows you to define custom attributes using several different data types. For more information on each attribute’s segmentation option, see User data collection.
To set a custom attribute with a string
value:
1
| UBrazeUser->SetCustomUserAttribute(TEXT("your_attribute_key"), TEXT("your_attribute_value"));
|
To set a custom attribute with an integer
value:
1
| UBrazeUser->SetCustomUserAttribute(TEXT("your_attribute_key"), 42);
|
Braze treats float
and double
values the same within our database. To set a custom attribute with a double value:
1
| UBrazeUser->SetCustomUserAttribute(TEXT("your_attribute_key"), 3.14);
|
To set a custom attribute with a boolean
value:
1
| UBrazeUser->SetCustomUserAttribute(TEXT("your_attribute_key"), true);
|
To set a custom attribute with a date
value:
1
2
| FDateTime YourDateTime = FDateTime(2023, 5, 10);
UBrazeUser->SetCustomUserAttribute(TEXT("your_attribute_key"), YourDateTime);
|
To set a custom attribute with an array
value:
1
2
3
4
5
6
7
8
9
| // Setting a custom attribute with an array value
TArray<FString> Values = {TEXT("value1"), TEXT("value2")};
UBrazeUser->SetCustomAttributeArray(TEXT("array_name"), Values);
// Adding to a custom attribute with an array value
UBrazeUser->AddToCustomAttributeArray(TEXT("array_name"), TEXT("value3"));
// Removing a value from an array type custom attribute
UBrazeUser->RemoveFromCustomAttributeArray(TEXT("array_name"), TEXT("value2"));
|
important:
Custom attribute values have a maximum length of 255 characters; longer values will be truncated.
Setting user subscriptions
To set up an email or push subscription for your users, you can use the following methods.
Setting email subscription
1
2
3
4
5
| UBraze->GetCurrentUser([](UBrazeUser* BrazeUser) {
if (BrazeUser) {
BrazeUser->SetEmailSubscriptionType(EBrazeSubscriptionType::Subscribed);
}
});
|
Setting attribution data
1
2
3
4
5
| UBraze->GetCurrentUser([](UBrazeUser* BrazeUser) {
if (BrazeUser) {
BrazeUser->SetPushSubscriptionType(EBrazeSubscriptionType::OptedIn);
}
});
|