Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Envio de notificação

Seria possivel configurar o Firebase Messaging para realizar o envio das notificações para os demais usuários do aplicativo, assim que algum botão dentro do app fosse apertado?

2 respostas
solução!

Oi Maxuel, tudo bem?

Sim, é possível configurar o Firebase Messaging para enviar notificações para os usuários do aplicativo quando algum botão é pressionado. Para isso, você precisará criar uma função que seja acionada quando o botão for pressionado.

Essa função precisará fazer uma chamada para o Firebase Cloud Messaging (FCM), solicitando o envio de uma notificação. Você precisará fornecer o token de registro do dispositivo para o qual deseja enviar a notificação. Este token pode ser obtido quando o aplicativo é instalado ou quando o usuário faz login.

Aqui está um exemplo de como essa função pode ser:

void onButtonPressed() async {
  final String serverToken = 'seu_server_token';
  final FirebaseMessaging firebaseMessaging = FirebaseMessaging();

  await firebaseMessaging.requestPermission(
    alert: true,
    badge: true,
    sound: true,
  );

  final String token = await firebaseMessaging.getToken();

  final response = await http.post(
    'https://fcm.googleapis.com/fcm/send',
    headers: <String, String>{
      'Content-Type': 'application/json',
      'Authorization': 'key=$serverToken',
    },
    body: jsonEncode(
      <String, dynamic>{
        'notification': <String, dynamic>{
          'body': 'this is a body',
          'title': 'this is a title'
        },
        'priority': 'high',
        'data': <String, dynamic>{
          'click_action': 'FLUTTER_NOTIFICATION_CLICK',
          'id': '1',
          'status': 'done'
        },
        'to': token,
      },
    ),
  );

  if (response.statusCode == 200) {
    print('Notificação enviada com sucesso');
  } else {
    print('Falha no envio da notificação');
  }
}

Neste exemplo, a função onButtonPressed é chamada quando o botão é pressionado. Ela primeiro solicita permissão para enviar notificações, depois obtém o token de registro do dispositivo e faz uma solicitação POST para o FCM para enviar a notificação.

Lembre-se de substituir 'seu_server_token' pelo token do servidor do Firebase. Você pode encontrar esse token nas configurações do projeto Firebase, na seção de mensagens na nuvem. E que esse é apenas um exemplo de como fazer, você é livre para pesquisar mais sobre.

Um abraço e bons estudos

Muito obrigado pela sugestão, vou tentar essa implementação.