| Resumo | Envia notificações push do Discourse para iOS ou Android através do seu próprio aplicativo | |
| Link do Repositório | GitHub - Sprachprofi/discourse-fcm-notifications: Send Discourse push notifications through FCM to any custom app | |
| Guia de Instalação | Como instalar plugins no Discourse |
Funcionalidades
Se você tem um aplicativo que as pessoas podem usar para navegar no seu fórum Discourse, este plugin permitirá que seu fórum envie notificações push através do aplicativo. (Se você ainda não tem um aplicativo, mas gostaria de ter um, confira esta solução minimalista.)
Conveniente para usuários: quando um usuário recebe uma notificação push sobre uma mensagem privada, tocar nessa notificação abrirá seu aplicativo e exibirá diretamente essa mensagem privada. Esta é uma grande vantagem em relação ao uso de Notificações Pushover do Discourse, onde as notificações push abrem o aplicativo Pushover e não fica claro como chegar à mensagem. Por outro lado, Notificações Pushover é bom se você quiser notificações push sem um aplicativo.
Universal: usa o Google Firebase como camada de mensagens, para que todos os dispositivos iOS e Android possam receber essas notificações push, desde que o país não tenha banido o Google.
Configuração
- Instale e ative o plugin.
- Crie um projeto gratuito do Google Firebase para o seu aplicativo. Adicione o ID do projeto Firebase, o token e o json (com dados OAuth) às configurações do plugin no Discourse.
- Ajuste o código do seu aplicativo:
-
Inscreva o usuário ativo em notificações push enviando o token do dispositivo para SEU_FORUM.com/fcm_notifications/automatic_subscribe?token=… . Certifique-se de chamar isso toda vez que o token do dispositivo mudar.
-
Cancele a inscrição do usuário ativo chamando SEU_FORUM.com/fcm_notifications/automatic_subscribe?token=REMOVE
-
As notificações push terão o formato:
'data': { "linked_obj_type" => 'link', "linked_obj_data" => <url para o post/mensagem referenciado na mensagem>, }, 'notification': { title: <algo como "USUÁRIO enviou uma mensagem privada para VOCÊ em TÓPICO">, body: <início da mensagem>, }
Portanto, você precisa exibir a notificação push com título/corpo e, ao tocar nela, deve abrir a URL de linked_obj_data em um navegador in-app. É isso que você precisa definir no código do aplicativo.
Exemplo de implementação
Você pode obter o código para um aplicativo minimalista, mas totalmente funcional, que funciona com este plugin aqui. (É a versão whitelabel de um aplicativo de produção que criamos, que precisava deste plugin.) Se você quiser apenas um aplicativo que exiba seu fórum, envie notificações push e lembre o login das pessoas / último tópico lido, você só precisa alterar a marca e enviá-lo para as Lojas de Aplicativos e pronto. Caso contrário, pode ser uma base.
Os lucros deste aplicativo financiarão a manutenção e o desenvolvimento futuro do plugin.
