Hey guys - I have a site that’s primarily validating logins using privacy tied to groups using the patreon plugin. It was working fine for the last two days, and all of a sudden today I can’t get it to sync. I checked all my tokens etc, but when I hit “Update patreon data and sync groups” none of my patrons are added to the proper groups.
Any help much appreciated - I have a big pile of people trying to reach a locked-out site now haha.
Now my site has totally stopped syncing with Patreon - all our info looks correct, but hitting the update button does nothing.
I noticed this error in my log "
(patreon) Authentication failure! csrf_detected: OmniAuth::Strategies::OAuth2::CallbackError, csrf_detected | CSRF detected"
I tried to create a new account with Patreon login (right now) and everything works perfectly.
I also checked the tokens on Patreon and have not changed for two days.
Do you mean the sync button or the button to update the plugin via GUI?
If you mean the group sync button, it should work only the first time you click it and when you manually updates the tokens.
If you mean the update button, it generally does not work when you need to update docker_manager before. In this case you need to update all via SSH.
Ok, today the synchronization of my patreon groups did not work. I checked on Patreon and the tokens were changed again (they had already changed 4 days ago).
And if it the token change randomly, run the jobs PatreonUpdateTokens 1 a week I do not think it’s enough, maybe it should run 1 a day to be sure.
Tokens are valid for up to one month after they are issued. During this period, you may refresh a user’s information using the API calls from step 4.
As per the official documentation from Patreon here tokens are valid up-to 30 days. We already discussed with Patreon team and it won’t change daily. Between the tokens will be refreshed only if the user logged in via his Patreon account. I fixed that problem in the latest version (today) of code.
You can try it and feel free to let me know if the problem persist. Then I will look again in the code deeply.
Another important issue here is if tokens are changed in Patreon externally (either user changed it manually or Patreon automatically updated it) soon after we will lose our ability to connect Patreon via API. Even we can’t regenerate new tokens using existing old expired tokens. In this case the only possible solution is to copy and paste new token from Patron to Discourse.
Also in newer version of plugin in site settings you can set Discourse username which is connected with Patreon creator account through “Sign in with Patreon” feature. As I told in previous post it can fix the problem. So I recommend you to try it.
The tokens seem to have stabilized today, but today my site removed about 100 people from my patreon group, but the plugin seems to be connected fine… I have no clue how to get them back without adding them manually, and no clue why they disappeared.
Attempting to go to ssfg.group/sidekiq gives me:
“Oops! That page doesn’t exist or is private.”
My site is hosted by Discourse - unsure if that’s why Sidekiq appears unavailable.
Even if this does fix it - I don’t understand why it removed them in the first place.
Worth noting that it appears all 16 accounts that are still syncing with Patreon appear to be recent joiners, but all the patrons I’ve had in the past were removed.
Error in my log from last night - “(patreon) Authentication failure! csrf_detected: OmniAuth::Strategies::OAuth2::CallbackError, csrf_detected | CSRF detected”
It’s incredibly frustrating getting a pile of emails from users ever day asking why they can’t access the site - I don’t understand why it keeps breaking.
EDIT: As a random experiment I tried syncing a new group to Patreon, and it immediately pulled all 100+ people into that one, but left only 16 in the existing group. I’m just confused now as to why the Patron group isn’t syncing.
EDIT 2: I got it to sync for now, but I had to add “all patrons” in order for it to add all 108 accounts as opposed to just 16. For some reason it isn’t syncing a ton of the accounts unless I select all the tiers, wherever yesterday it was pulling people from each level properly.
Hello Evan, I manually synced the patrons using “Update Patreon Data & Sync Groups” button and look like everything fine now. You “Patrons” group currently having 108 members.
If you changed the filters then you have to manually trigger the sync using “Update Patreon Data & Sync Groups” button.
Note edit 2- I had already fixed it, but it only works if you add the “$0 all patrons” tier, even though those patrons are at $5+. I want the group sync’d to $5+ patrons, but when I select those tiers it’s only syncing 16 people.