Estou apenas configurando um servidor Discourse com integração ao Patreon. Recebi a seguinte mensagem de erro quando apoiadores (Patrons) se cadastram no Discourse:
Patreon group membership callback failed for new user 7 with error: undefined method `add' for nil:NilClass.
/var/www/discourse/plugins/discourse-patreon/plugin.rb:166:in `block (3 levels) in activate!'
/var/www/discourse/plugins/discourse-patreon/plugin.rb:164:in `each'
/var/www/discourse/plugins/discourse-patreon/plugin.rb:164:in `block (2 levels) in activate!'
/var/www/discourse/lib/plugin/instance.rb:215:in `public_send'
/var/www/discourse/lib/plugin/instance.rb:215:in `block (2 levels) in add_model_callback'
O usuário se registra usando autenticação do Patreon. O usuário é criado, o Patreon aparece em Contas Associadas, mas os dados do Patreon (Valor, Recompensas) não são adicionados ao perfil dele, e ele não é adicionado ao grupo. Se eu clicar em Atualizar Dados do Patreon e Sincronizar Grupos, os dados aparecem e ele é adicionado ao grupo com sucesso.
Eles não são novos apoiadores. São apoiadores há muito tempo e só agora estão entrando no Discourse.
Agora estou executando a versão atual - 2.4.0.beta4. Está no meu próprio servidor, mas é uma instalação padrão.
Antes de atualizar para esta versão, desativei o plugin e excluí e recriei a Chave do Cliente. (Uma tentativa desesperada de resolver um problema que na verdade foi corrigido pela nova versão…) Estou me perguntando se “quebrei” a configuração em torno do grupo de apoiadores de alguma forma, embora pareça estranho que a Sincronização funcione, mas o registro de um novo usuário não.
Acabei de fazer um teste usando um usuário de teste:
- Criar usuário de teste no Patreon, com promessa de contribuição para minha campanha. (O Webhook é acionado, mas acho que isso não é relevante, já que o problema ocorre com apoiadores “antigos”.)
- Clicar em
Atualizar Dados do Patreon e Sincronizar Grupos, aguardar a mensagem assíncrona de que os dados foram atualizados. - Registrar usuário de teste no Discourse.
- Verificar os dados do Patreon para o usuário de teste. Nenhuma seção
Patreon- Valor, Recompensas. Usuário não incluído no grupo de apoiadores. - Clicar em
Atualizar Dados do Patreon e Sincronizar Grupos, aguardar a mensagem assíncrona de que os dados foram atualizados. - Verificar os dados do Patreon para o usuário de teste. A seção
Patreonagora está presente, com Valor e Recompensas. O usuário está incluído no grupo de apoiadores.
Obrigado antecipadamente por qualquer ajuda!