Last time i just recreated webhook and it worked for some time.
strange enough, on test page only deprecated events will pass test, other will not report anything.
I thought only the deprecated ones work right now? Regardless, the guide should really be updated to clarify the deprecated webhooks.
That is what i understood too, v1 api and deprecated webhooks
And it works for a while, until patreon pause it with errors
WAIT, ME TOO! I got it working again when I responded. However, now it says paused with errors. When I test individually, it says 200 OK. I don’t get it.
So i will suspect that patreon sending something that discourse not understand and ignore, and then patreon pauses webhook
Seems so – any @staff ideas?
It’s doesn’t make any sense. If the test repose returns 200 status then it shouldn’t fail. Could you see any error in the /logs
URL? Without more details, it’s hard to debug the problem.
Hmm, I think you missed some context:
I got it working again when I responded. However, now it says paused with errors. When I test individually, it says 200 OK. I don’t get it.
This part goes along with the 200 screenshot. Above, it says paused. Testing, says 200. This actually seems to be a Patreon bug?
@dylanh724 it is working fine when I tested it. I need more details to debug this issue. Please resume the webhooks again and let me know if you see any related errors in the /logs
URL.
Hi @dylanh724,
I added support for the new version 2 webhooks. Can you please test it in the realtime? Use the triggers “members:pledge:create”, “members:pledge:update” and “members:pledge:delete” instead of the deprecated triggers.
https://github.com/discourse/discourse-patreon/commit/d678631eb8ae3bd1432d388d10745e87b4621b4d
Thanks! Updated. However, strange, nothing is actually happening when I try:
I ensured popup blockers are off, but even then, it’d show something in console. I wonder if Patreon’s API is wonky? I’m going to scroll up to see where to check logs and return.
Ok found logs via forum.{mySite}.com/logs
:
…nada, after clicking resume:
Seems like Patreon didn’t even attempt anything.
Aside from the general button, I also tried the same individual test from recordit
Just nada in logs O_O
To add:
Even going back to the deprecated ones that do send a response (perhaps your new ones forgot to send a success code back?), I’m getting 200 per … yet Patreon keeps saying error when I resume, which makes no sense.
Even the 200 (deprecated hooks) callbacks still show nothing in logs. Is there some default filter that blocks Patreon tests in logs?
No, you should only use “members:pledge:create” instead of “members:create” like I mentioned in above.
No.
I think you should delete the whole webhook endpoint in the Patreon site and re-add it.
Deleted the hook >> remade >> swapped hook secret >> members:pledge:create >> test has no response code (unlike the deprecated ones that have 200 response).
No mention of it not working yet, but I believe that takes a few hours.
Related: I had a tester donate and couldn’t get him linked. Not sure if it’s the webhook or not, but I discovered that existing users with 2FA cannot link “associated accounts” (Patreon) for whatever reason (bug?). There is also an undocumented mention that accounts are linked by matching emails - but this tester’s email is separate from Patreon, causing issues.
If you’re reading this, testing a fix, heads up.
To follow up, I’m not getting an errors on the webhooks. Seems … fixed? Maybe? I have no testers, atm.
However, I’m still feeling uneasy because there’s no return code (eg, 200): Clicking the test button appears to do nothing (but simply has no return code). Does the new version not return any http code?
@dylanh724 can you please try the v2 webhooks again after upgrading the plugin?
Also, I converted the whole plugin to support Patreon’s v2 API in beta branch. It’s not stable yet. If possible then you can test it and let me know the feedback. For that, you have to use v2 API credentials.
Sure, I’ll give it a shot soon. Before the upgrade, just a follow-up summary that you may already know leading up to now:
- It worked, but showed it not working.
- Users were being sync’d up into the Patreon group successfully.
- Likely because a 200 success code was not returned,
- Testing the hooks would result in nothing.
- After a day or 2, Patreon would email you saying that your hooks are broken.
- ^ I think this was a false positive since it would sync just fine, just not return a code. However, a false positive may have disabled the hooks completely after a couple days. I can’t tell you if it still works or not (the testers area already sync’d).
- Users with 2FA (existing users that did not register via the Patreon button) experienced syncing issues since they could not link their account, if email mismatched. For some reason, “Associated Accounts” section poofs when 2FA is enabled.
- Existing users with 2FA that had a mismatching email would never get a Patreon sync. This is common to have different emails on forum than Patreon (especially if using +alias or forwarding).
I understand and hope it won’t happen again. And I will check the possible solution for 2FA.
Hmm, no dice:
Still no 200 code~ unless the new hooks changed how they show it vs the deprecated hooks? Still feels like a return code issue.
Thanks for the test. I pushed a few more fixes and it is working fine now.