🛂Freshchat

Como utilizar o suporte de chat Freschchat no seu app Flutter.

Descrição Geral

O serviço OpenFreshChatService é projetado para integrar e manipular o SDK Freshchat em seu aplicativo. Ele facilita a comunicação e suporte ao cliente via chat, permitindo que os usuários visualizem as perguntas frequentes (FAQs) ou iniciem novas conversas.

É importante ler toda a documentação que eles possuem para as configurações para funcionamento:

https://support.freshchat.com/en/support/solutions/articles/50000003343-freshchat-flutter-sdk-integration-stepsarrow-up-right

Como funciona?

1. Rastreando Evento de Suporte

Ao chamar o serviço, o primeiro passo é rastrear um evento chamado supportRequested, indicando que um usuário solicitou suporte.

EventUtils.trackEvent(AllAppEvents.generalEvents.supportRequested);

2. Definindo Token de Push

O serviço recupera o token de registro de push do FirebaseMessaging e o define para o Freshchat SDK. Isso é essencial para notificações push relacionadas ao chat.

Freshchat.setPushRegistrationToken((await FirebaseMessaging.instance.getToken()) ?? "");

3. Inicialização do Freshchat

O SDK Freshchat é inicializado com IDs específicos e uma URL base. Um bundle de strings personalizado chamado FreshChatCustomBundle é usado para customizar as mensagens padrão do SDK.

Freshchat.init(...);

4. Configuração do Usuário

Antes de iniciar a conversa, o serviço configura detalhes do usuário no SDK Freshchat usando os detalhes do usuário armazenados em ProfileStore.

5. Definindo Propriedades do Usuário

Além dos detalhes básicos do usuário, o serviço define propriedades adicionais para o Freshchat SDK. Estas incluem a "FLAVOR" do aplicativo e a versão do aplicativo.

6. Mostrando FAQ ou Conversas

Finalmente, com base no argumento openFaq, o serviço ou mostra as FAQs ou inicia novas conversas para o usuário.

Por que usar o OpenFreshChatService?

  • Integração Simples: A classe encapsula a lógica necessária para integrar o SDK Freshchat, tornando mais fácil adicionar funcionalidades de chat em qualquer parte do aplicativo.

  • Customização: Utiliza um bundle de strings personalizado, permitindo maior controle sobre as mensagens padrão do SDK.

  • Segurança: Ao lidar com possíveis nulidades (com o uso do null-aware em Dart), garante que o aplicativo não quebre, mesmo se alguns dados não estiverem presentes.

Recomendações

Certifique-se de que todas as chaves e IDs usadas na inicialização do Freshchat sejam mantidas em segredo e não expostas. Além disso, é importante manter o SDK Freshchat atualizado para aproveitar as correções de bugs e novos recursos.

Como ficaria nosso código final?

TRADUÇÕES

Para traduzir os textos existentes no fluxo deles, basta fazer o seguinte: Para android, devemos criar uma arquivo dentro da nossa pasta do nosso flavor, no caminho: android/app/src/production-ou-staging/res/value/strings.xml e adicionar o seguinte contéudo: Todos os nomes de variaveis se encontram aqui: https://github.com/freshworks/freshchat-android/blob/master/freshchat_sdk/src/main/res/values/strings.xmlarrow-up-right

Para iOS, devemos criar um arquivo no caminho: ios/Runner/FreshChatCustomBundle.bundle/en.lproj/FCLocalizable.strings

Com o contéudo:

Last updated