- The account sync cron job has been made faster. Instead of syncing 1 account every 5 minutes (which limits to 288 accounts per day); the cron has been updated to run every 1 minute (which limits to 1440 accounts per day).
- You can now redefine the sync buffer limit on the options page. In previous versions, an account could only be synced with Discord once every 24 hours. You can now redefine this limit to make the buffer longer or shorter if needed.
- The connected accounts list will now do a better job at showing the user's avatar. It will also now include the user's discriminator ID. Unfortunately, the data may be blank until the user disconnects and reconnects their account.
I think some of the sync issues people have been having is due to a misunderstanding of how accounts are synced. Every time an account is changed on XENFORO, it is moved automatically to the front of the sync queue. However, if an account was changed on DISCORD; there was no way for XenForo to know about the changes; until the next time the account came up in the sync queue. This of course meant an account would have to wait up to 24 hours (or even more if your forum had more than 288 synced accounts on it) before the next time it cycled into the sync queue.
This means, if an account was connected on XENFORO; it was synced immediately. If the account was ALREADY a member of the Discord server, then that user immediately got all their roles as needed and everything appeared to be working properly. However, if the account was NOT a member of of the Discord server, XenForo would have no account to sync to. Then of course, when the user would join the server after the fact, there is no way for XenForo to know the account is now available to sync. So that account would have to wait till the next time it comes up in the sync queue... or they can disconnect and reconnect their account on XENFORO to force themselves back to the front of the sync queue.
- WidgetBot has been having a lot of issues with their clusters. They shut down their official clusters, and then DisWeb became the official cluster... but then DisWeb had their domain stolen from them by an ex-staff member, so that had problems well. So the cluster/shard option has been changed from a dropdown menu to a simple text field with
disweb.dashflo.netas the default value. So now you'll be more easily able to change the cluster at will... you could even use your own cluster if thats what you want to do.
This is a significant update. While it has worked great on my servers for the past two weeks, so have the previous versions, and people still reported issues. So please inform me of any problems.
I've also theorized a possible "quirk". If you have a role set to
- A new "Discord log" has been added to the logs section of the admin CP. This log is mostly for debugging purposes. It will tell you what the bot is sending to and from Discord. This is a supplement to the already available user change logs in XenForo and Discord.
- The way roles are sync'd to and from Discord have been completely re-organized.
- If a role is set to
D->XF, and a user leaves your discord server; they will now properly have their usergroup change revoked.
- If you create a new role on your Discord, but you don't update your XF options to be aware of this new role, the system will now assume the role is set to "none" instead of dropping the role completely.
D->XF, and a user has received the usergroup change... but then you change the role to
XF->D, it would take TWO syncs for completely update a user. The first sync to eliminate the existing usergroup change, and then the second sync to properly apply the role changes.
Because people were CONSTANTLY asking for it, I've added the ability to reverse the sync of roles. Instead of syncing just from XenForo to Discord, you can now set it to sync from Discord to XenForo. You can not sync both ways, as as diff comparisons between two different data sets would be impossible. So you must choose which direction you which you sync in the admin CP.
- The "fast sync" feature has been removed. There was just no way to get the fast sync feature compatible with the new sync directions. However, instead of fast sync, I have set it so that edited users simply jump to the front of the sync queue.
- Added some additional error protection for those all too often situations where Discord's API can't be reached. This should stop some of the random error log spam.
There have been a lot of problems with Widgetbot integration during the past few months. Even though the Widgetbot integration was a completely optional part of the addon, its one that everybody wanted to use... and the problems with Widgetbot made the addon seem broken. The Widgetbot guys just didn't have the resources to sustain all the demand for their service.
Last month however, Widgetbot released their source code open source. With open source, anyone can now run their own Widgetbot cluster... preferably clusters that didn't constantly crash like the official ones did. With this update, I've changed a bit of how the cluster selection works, and added in the first third-party cluster at DisWeb. So far this cluster seems to work far better than the official clusters... and according to Widgetbot's own Uptime Tracker, is also far more stable.
- Real-time syncing of username/usergroup changes has been disabled. It can be re-enabled with a new option in the admin CP. This change was made due to possible rate limits being hit during mass usergroup promotions on large forums. Re-enable this option at your own risk.
- Fixed an issue where post count numbers could be increased by 2 instead of 1 on new posts after they are sent to Discord.