XF2 [8WR] Discord Integration

xF2 Add-on XF2 [8WR] Discord Integration 2.1.1.9

No permission to download
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.

  • 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.
I've also theorized a possible "quirk". If you have a role set to 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.
  • Fixed a bug where roles would get removed when using the D>XF sync direction.
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.
This addon has been updated with support for XF2.1. XF2.1 will be required for this and all future updates.
  • GuzzleHTTP cURL updated
  • 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.
  • Fixed a bug where the addon would try to sync users who have been deleted from your forum.
  • Added an option to completely disable direct message alerts for conversations.
  • Thrown errors will now give a more verbose reason on why an error was thrown.
  • Built-in support for WidgetBot's multiple optional cluster shards. Because of Discord's API limitation, a bot can only be in 2500 servers at once. Well WidgetBot has become popular enough that it has reached this limit. In turn, WidgetBot has added five extra clones of their bot, and you can choose which one to use.
    • Also added support for their beta shard.
  • Added a user option to disable direct message/conversation alerts from the discord bot.
  • Fixed a phrasing bug with new invites to conversations.

  • Added differentiations between new conversations and replied conversation notifications.
  • Hopefully fixed the "discord_options" bug with new installs. This fix will only apply to NEW installs, so if you're an existing install, and you're still seeing this error, please read the patch notes for 2.0.1.5.