Sobre o Braze Roku SDK
O Braze Roku SDK ajuda você a integrar recursos de envio de mensagens, análise de dados e engajamento de usuários da Braze ao seu aplicativo.
Para começar, consulte os seguintes recursos:
Integração inicial do SDK
O Braze Roku SDK fornecerá uma API para reportar informações a serem usadas em análise de dados, segmentação e engajamento.
Etapa 1: Adicionar arquivos
- Adicione
BrazeSDK.brsao seu app no diretóriosource. - Adicione
BrazeTask.brseBrazeTask.xmlao seu app no diretóriocomponents.
Etapa 2: Adicionar referências
Adicione uma referência a BrazeSDK.brs na sua cena principal usando o seguinte elemento script:
1
<script type="text/brightscript" uri="pkg:/source/BrazeSDK.brs"/>
Etapa 3: Configurar
Dentro de main.brs, defina a configuração da Braze no nó global:
1
2
3
4
5
6
7
globalNode = screen.getGlobalNode()
config = {}
config_fields = BrazeConstants().BRAZE_CONFIG_FIELDS
config[config_fields.API_KEY] = "YOUR_API_KEY_HERE"
config[config_fields.ENDPOINT] = "YOUR_ENDPOINT_HERE (e.g. https://sdk.iad-01.braze.com/)"
config[config_fields.HEARTBEAT_FREQ_IN_SECONDS] = 5
globalNode.addFields({brazeConfig: config})
Etapa 4: Inicializar Braze
Inicialize a instância Braze:
1
2
m.BrazeTask = createObject("roSGNode", "BrazeTask")
m.Braze = getBrazeInstance(m.BrazeTask)
Configuração de mensagens no app
Para processar mensagens no app, você pode adicionar um observador em BrazeTask.BrazeInAppMessage:
1
m.BrazeTask.observeField("BrazeInAppMessage", "onInAppMessageReceived")
Dentro do seu manipulador, você tem acesso à mensagem no app de maior prioridade que suas campanhas dispararam:
1
in_app_message = m.BrazeTask.BrazeInAppMessage
Você pode então decidir o que fazer com a mensagem no app. Alguns dos campos disponíveis:
in_app_message.message- O texto do corpo da mensagem no appin_app_message.buttons- Lista de botões (pode ser uma lista vazia).in_app_message.id- ID a ser usado ao registrar impressões ou cliquesin_app_message.extras- Pares de chave/valorin_app_message.image_url- URL da imagemin_app_message.click_action- Quando não há botões, esta é a ação que deve ocorrer quando o usuário clica em “OK” quando a mensagem no app é exibida. Pode ser “URI” ou “NONE”.in_app_message.dismiss_type- Pode ser “AUTO_DISMISS” ou “SWIPE”in_app_message.display_delay- Quanto tempo (em segundos) esperar até exibir a mensagem no appin_app_message.duration- Por quanto tempo (em milissegundos) a mensagem deve ser exibida quandodismiss_typeé “AUTO_DISMISS”in_app_message.header- O texto do cabeçalho da mensagem no appin_app_message.uri- Quandoclick_actioné “URI”, este valor deve ser exibido
Também existem vários campos de estilização que você pode optar por usar a partir do dashboard. Alternativamente, você pode implementar a mensagem no app e estilizá-la dentro do seu aplicativo Roku usando uma paleta padrão.
in_app_message.bg_color- Cor de fundoin_app_message.close_button_color- Cor do botão de fecharin_app_message.frame_color- A cor da sobreposição da tela de fundoin_app_message.header_text_color- Cor do texto do cabeçalhoin_app_message.message_text_color- Cor do texto da mensagemin_app_message.text_align- Pode ser “START”, “CENTER” ou “END”
Os campos de botão incluem:
buttons[0].click_action- Pode ser “URI” para indicar a abertura do campouri. Pode ser “NONE” para indicar que este botão deve fechar a mensagem no app.buttons[0].id- O valor de ID do próprio botãobuttons[0].text- O texto a ser exibido no botãobuttons[0].uri- Quandoclick_actioné “URI”, este valor deve ser exibidobuttons[0].bg_color- Cor de fundo do botãobuttons[0].border_color- Cor da borda do botãobuttons[0].text_color- Cor do texto do botão
Quando uma mensagem é exibida ou vista, registre uma impressão:
1
LogInAppMessageImpression(in_app_message.id, brazetask)
Depois que um usuário clica na mensagem, registre um clique:
1
LogInAppMessageClick(in_app_message.id, brazetask)
e então processe in_app_message.click_action
Se o usuário clicar em um botão, registre o clique do botão:
1
LogInAppMessageButtonClick(inappmessage.id, inappmessage.buttons[selected].id, brazetask)
e então processe inappmessage.buttons[selected].click_action
Depois de processar a mensagem no app, você deve limpar o campo:
1
m.BrazeTask.BrazeInAppMessage = invalid
Integração básica do SDK concluída
A Braze agora deve estar coletando dados do seu aplicativo. Consulte nossa documentação pública sobre como registrar atributos, eventos e compras no nosso SDK. A cena MainScene.brs do nosso app de exemplo também contém exemplos de uso da API.
BrazeInAppMessage.brs e CustomSideBySideInAppMessage.brs mostram exemplos de tratamento de In-App Messages. onInAppMessageTriggered() em MainScene.brs mostra como oferecer suporte a múltiplos layouts.
Referência adicional
O diretório torchietv contém um app de exemplo com o SDK da Braze integrado.
Para detalhes do repositório e projetos de exemplo, consulte https://github.com/braze-inc/braze-roku-sdk.