# Ajuda com o design de plugin de integração personalizado

**URL:** <https://meta.discourse.org/t/help-designing-custom-integration-plugin/133520>\
**Category:** Development\
**Created:** [15 Novembro , 2019 21:17 UTC](https://meta.discourse.org/t/help-designing-custom-integration-plugin/133520 "2019-11-15T21:17:30Z")\
**Posts on this page:** 1\
**Showing post:** 4

<div class="post-metadata">

**Author:** ![RGJ](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/rgj/32/523185_2.png) [@RGJ](https://meta.discourse.org/u/RGJ)\
**Post date:** [15 Novembro , 2019 23:06 UTC](https://meta.discourse.org/t/help-designing-custom-integration-plugin/133520/4 "2019-11-15T23:06:31Z")

</div>

> [@nonsequitur](#):
>
> para inserir o perfil do Codeforces e, em seguida, de alguma forma autenticar que o perfil pertence ao usuário do fórum.

Se todos os seus usuários forem do Codeforces, eu implementaria o login único (onde o Codeforces é o provedor de autenticação). Dessa forma, não seria necessário um passo extra de autenticação e seus usuários teriam um fluxo de cadastro/autenticação melhor. Você até poderia sincronizar os grupos assim!

> [@nonsequitur](#):
>
> No entanto, a classificação pode mudar em breve e eu gostaria de atualizar automaticamente o grupo do usuário quando sua classificação mudar.

Eu faria isso na origem, ou seja, onde o Codeforces sabe que a classificação mudou, faria uma chamada de API ao Discourse para atualizar a classificação (ou qualquer propriedade do usuário influenciada por essa classificação). Dessa forma, tudo estará sempre atualizado. Quando você precisa sincronizar coisas, a sondagem (polling) sempre leva a problemas de uma forma ou de outra, então evite-a sempre que possível e use uma abordagem baseada em eventos.

---

_[View the full topic](https://meta.discourse.org/t/help-designing-custom-integration-plugin/133520)._
