Acionar manualmente a navegação para todas as páginas de chat e também para a página de chat com usuário individual

Olá, como posso acionar manualmente a navegação para o chat do usuário?

Tenho uma lista personalizada de usuários renderizada na página de usuários, quero anexar um botão de chat que acione a navegação para a página de chat desse usuário, semelhante ao que este botão de Chat na captura de tela faz

Tentei anexar este callback ao botão,

customChatButton.addEventListener('click', () => {
    window.Discourse.router.transitionTo(`/chat/c/${username}`)
});

mas ele me envia para “página não existe ou é privada”

Também, naquela tabela de usuários, tenho um botão personalizado “todos os chats”, e quero que quando o usuário clicar nele, ele o leve para a página de todos os chats, em tela cheia, não acione o pop-up de chat do canto inferior direito da minha tela.

Este comando não parece funcionar:

goToAllChatButton.addEventListener('click', () => {
    window.Discourse.router.transitionTo(`/chat`)
});

Você pode usar este componente diretamente:

<Chat::DirectMessageButton @user={{user}} @modal={{true}} />
3 curtidas

Obrigado pela resposta @j.jaffeux, é possível fazer isso diretamente com o objeto router?