Vejo que os webhooks agora suportam notificações, o que é fantástico. É algo que realmente precisamos. No entanto, o payload está faltando uma informação crítica: o usuário para quem a notificação é destinada. Neste exemplo de payload, podemos ver o autor da postagem que acionou a notificação, mas não o usuário que deve recebê-la.
{
"notification": {
"id": 119,
"notification_type": 9,
"read": false,
"created_at": "2019-09-18T13:42:21.248Z",
"post_number": 1,
"topic_id": 75,
"fancy_title": "Phallguy deve receber um aviso sobre isso",
"slug": "phallguy-should-get-a-notice-about-this",
"data": {
"topic_title": "Phallguy deve receber um aviso sobre isso",
"original_post_id": 111,
"original_post_type": 1,
"original_username": "Paul_Alexander",
"revision_number": null,
"display_username": "Paul_Alexander"
}
}
}
Procurei se existe uma API para obter o usuário-alvo a partir do ID da notificação, mas não encontrei nada documentado. Existe alguma maneira de obter o nome de usuário ou ID do usuário-alvo no payload da notificação?
Para contextualizar, estamos tentando consolidar notificações de vários sistemas em uma experiência única para nossos usuários.
@Falco ou @blake, vocês têm alguma ideia de como posso descobrir para qual usuário uma notificação é destinada quando recebida através do novo webhook de notificações?
Acabei de dar uma olhada rápida para ver se havia uma resposta rápida, e você tem razão: não parece que temos um endpoint de API get para buscar uma notificação individual por ID, mas isso não seria muito eficiente de chamar a cada vez, de qualquer forma.
Muito provavelmente, isso exigirá uma alteração no código do serializador de notificações para incluir o user_id/username dentro do payload da notificação, para que uma solicitação de API separada não seja necessária.
Estamos usando o serviço hospedado no momento, caso contrário, eu mesmo criaria meu próprio plugin. Vocês considerariam adicionar o ID de usuário/nome de usuário ao payload de notificação no webhook?
Olá @blake, seria possível adicionar também o external_id do usuário? Trabalhamos com o SSO do Discourse e não temos os IDs de usuário do Discourse no nosso sistema.
Uau, que rapidez! Muito obrigado, isso é muito apreciado Você sabe qual é o ETA aproximado para que essas alterações cheguem aos servidores Discourse hospedados?