TeamSpeak 3 Integration

TeamSpeak 3 Integration [Paid] 1.1.26

No permission to buy ($35.00)
NixFifty updated TeamSpeak 3 Integration - PixelExit.com with a new update entry:

1.1.1

It is recommended to rebuild user TeamSpeak identity counts after updating to this version. This can be done by navigating here:

ACP -> TeamSpeak -> TeamSpeak Rebuilds -> Rebuild User TeamSpeak Identity Counts
  • Fixes an issue with the XenPorta 2 widgets throwing an undefined index error.
  • Fixes an issue where the identity counter wouldn't increment as expected resulting in issues when unlinking identities.

Read the rest of this update entry...
 
Plugin is working wonderfully, we migrated TS3 servers when we started using this and I've had zero issues other than a few minor bugs.

I would concur. This plugin is working beautifully now.

As others have stated above I'd love the option to see who's synced their account. Maybe a separate page showing all users who have synced their accounts?
 
  • Like
Reactions: Naz
Maybe a separate page showing all users who have synced their accounts?
Good idea. But instead of a list they could add a new user conditional like "Teamspeak Synced" into xf. then if you would like get a list, you just could go to admin.php?users/search and activate the "Teamspeak Synced" checkbox and search for all matching users.
 
I would concur. This plugin is working beautifully now.
Glad to hear it!
As others have stated above I'd love the option to see who's synced their account. Maybe a separate page showing all users who have synced their accounts?
Good idea. But instead of a list they could add a new user conditional like "Teamspeak Synced" into xf. then if you would like get a list, you just could go to admin.php?users/search and activate the "Teamspeak Synced" checkbox and search for all matching users.
User criteria is something planned for the upcoming version but I can certainly do a page too if that's the general consensus. :)
 
Glad to hear it!


User criteria is something planned for the upcoming version but I can certainly do a page too if that's the general consensus. :)

Great I'm looking forward to an update! Hopefully soon :P Bit of a struggle right now trying to tell if individuals have synced their account or not!
 
Just installed the new version (after deleting all files from the server), and everything appears to be working except for when I try to edit the Teamspeak user groups. I've done the rebuild, etc. I get the following error:

Invalid argument supplied for foreach()

  1. XenForo_Application::handlePhpError() in NixFifty/TeamSpeak/Helper.php at line 362
  2. NixFifty_TeamSpeak_Helper->getServerGroupOptions() in NixFifty/TeamSpeak/ControllerAdmin/TeamSpeak.php at line 791
  3. NixFifty_TeamSpeak_ControllerAdmin_TeamSpeak->actionGroupsUserEdit() in XenForo/FrontController.php at line 351
  4. XenForo_FrontController->dispatch() in XenForo/FrontController.php at line 134
  5. XenForo_FrontController->run() in /home/nomad/public_html/xfweb/admin.php at line 13
 
NixFifty updated TeamSpeak 3 Integration - PixelExit.com with a new update entry:

1.1.1b

We have recently become aware of a security issue within the TeamSpeak 3 Integration add-on and have released version 1.1.1b to address this. We strongly recommend all customers upgrade to this version as soon as possible.

The issue is a cross site scripting (XSS) flaw that could allow an attacker to steal cookies or force a user to take actions without their consent or knowledge (possibly including administrative actions).

Read the rest of this update entry...
 
I get this error:

ErrorException: Invalid argument supplied for foreach() - library/NixFifty/TeamSpeak/Helper.php:362

Stack trace:

#0 /home/trueplyeci/www/community/library/NixFifty/TeamSpeak/Helper.php(362): XenForo_Application::handlePhpError(2, 'Invalid argumen...', '/home/trueplyec...', 362, Array)
#1 /home/trueplyeci/www/community/library/NixFifty/TeamSpeak/ControllerAdmin/TeamSpeak.php(791): NixFifty_TeamSpeak_Helper->getServerGroupOptions(Array)
#2 /home/trueplyeci/www/community/library/XenForo/FrontController.php(351): NixFifty_TeamSpeak_ControllerAdmin_TeamSpeak->actionGroupsUserEdit()
#3 /home/trueplyeci/www/community/library/XenForo/FrontController.php(134): XenForo_FrontController->dispatch(Object(XenForo_RouteMatch))
#4 /home/trueplyeci/www/community/admin.php(13): XenForo_FrontController->run()
#5 {main}

IDK whats wrong or how to fix it.

Has someone of you guys an idea how to fix it?
 
Is it possible to revoke all user permissions if he Unlinks his identity?
Alternatively, is it possible for an admin to unlink a user account? I wasn't able to find either option.
 
I get this error:

ErrorException: Invalid argument supplied for foreach() - library/NixFifty/TeamSpeak/Helper.php:362

Stack trace:

#0 /home/trueplyeci/www/community/library/NixFifty/TeamSpeak/Helper.php(362): XenForo_Application::handlePhpError(2, 'Invalid argumen...', '/home/trueplyec...', 362, Array)
#1 /home/trueplyeci/www/community/library/NixFifty/TeamSpeak/ControllerAdmin/TeamSpeak.php(791): NixFifty_TeamSpeak_Helper->getServerGroupOptions(Array)
#2 /home/trueplyeci/www/community/library/XenForo/FrontController.php(351): NixFifty_TeamSpeak_ControllerAdmin_TeamSpeak->actionGroupsUserEdit()
#3 /home/trueplyeci/www/community/library/XenForo/FrontController.php(134): XenForo_FrontController->dispatch(Object(XenForo_RouteMatch))
#4 /home/trueplyeci/www/community/admin.php(13): XenForo_FrontController->run()
#5 {main}

IDK whats wrong or how to fix it.

Has someone of you guys an idea how to fix it?
Sorry, I missed this. Did you get this sorted? Usually indicates a failed connection. Try running the integration test located at ACP -> TeamSpeak -> Test TS3 Integration and also ensure your login details are correct. I'll make sure this is handled better in the next version.
Is it possible to revoke all user permissions if he Unlinks his identity?
Alternatively, is it possible for an admin to unlink a user account? I wasn't able to find either option.
What do you mean revoke all user permissions? You mean remove the groups from TS when an identity is linked?

At the moment, an admin can't unlink but that'll be added in the next update most likely.
 
Sorry, I missed this. Did you get this sorted? Usually indicates a failed connection. Try running the integration test located at ACP -> TeamSpeak -> Test TS3 Integration and also ensure your login details are correct. I'll make sure this is handled better in the next version.

It's working. Thank you! Nice Feature, we really appreciate it.
 
@NixFifty got a request for you!

Make it respect TSDNS redirects, since I don't believe it does.
https://docs.planetteamspeak.com/ts..._d_n_s.html#aa92c579a298da3aaa9e78bef922c484f

Would be great for full compatibility!

Also glitch on initial install and viewing all clients

Code:
Invalid argument supplied for foreach()

    XenForo_Application::handlePhpError() in NixFifty/TeamSpeak/Helper.php at line 955
    NixFifty_TeamSpeak_Helper->getAllNormalClients() in NixFifty/TeamSpeak/ControllerAdmin/Client.php at line 10
    NixFifty_TeamSpeak_ControllerAdmin_Client->actionIndex() in XenForo/FrontController.php at line 351
    XenForo_FrontController->dispatch() in XenForo/FrontController.php at line 134
    XenForo_FrontController->run() in /home/fdsa/public_html/xenforo/admin.php at line 13

Another error: in the groups edit:
Code:
Invalid argument supplied for foreach()

    XenForo_Application::handlePhpError() in NixFifty/TeamSpeak/Helper.php at line 362
    NixFifty_TeamSpeak_Helper->getServerGroupOptions() in NixFifty/TeamSpeak/ControllerAdmin/TeamSpeak.php at line 791
    NixFifty_TeamSpeak_ControllerAdmin_TeamSpeak->actionGroupsUserEdit() in XenForo/FrontController.php at line 351
    XenForo_FrontController->dispatch() in XenForo/FrontController.php at line 134
    XenForo_FrontController->run() in /home/fdsa/public_html/xenforo/admin.php at line 13
 
Last edited:
@NixFifty

I use this mod (https://xenforo.com/community/resources/promote-and-demote-user.2104/) to allow some of my users to promote/demote certain users, it works great, but it doesn't work with the TS3 integration.

Updating each usergroup through the admin menu works fine, but when using promote/demote it won't update the TS3 user with the correct permissions.

Do you think it's possible to get it to work with the promote/demote?
He could extend XenForo_DataWriter_User and the method rebuildUserGroupRelations since it is hooked there for all usergroup changed (y)
 
Do you think it's possible to get it to work with the promote/demote?
If you want to hack it together yourself, you can do it by adding these two lines:

library/Nobita/Promote/XenForo/ControllerPublic/Member.php :: line 126
Code:
                // Sync TS3
                $syncModel = $this->getModelFromCache('NixFifty_TeamSpeak_Model_Sync');
                $syncModel->setUserServerGroupsById($userId);

Right after saving the user, and checking that something was changed.

Code:
...


            $userDw->save();

            if ($userDw->isChanged('user_group_id') OR $userDw->isChanged('secondary_group_ids'))
            {
                // well. Send an notify
                if ($options['notify_email'])
                {
                    // Send An Email to User
                    $mail = XenForo_Mail::create('member_promote_email_template', array(
                        'promoter' => $visitor->toArray(),
                        'user' => $user
                    ), $user['language_id']);
                    $mail->enableAllLanguagePreCache();
                    $mail->queue($user['email'], $user['username']);
                }

                // Sync TS3
                $syncModel = $this->getModelFromCache('NixFifty_TeamSpeak_Model_Sync');
                $syncModel->setUserServerGroupsById($userId);
            }
 
  • Like
Reactions: Naz
@NixFifty

I use this mod (https://xenforo.com/community/resources/promote-and-demote-user.2104/) to allow some of my users to promote/demote certain users, it works great, but it doesn't work with the TS3 integration.

Updating each usergroup through the admin menu works fine, but when using promote/demote it won't update the TS3 user with the correct permissions.

Do you think it's possible to get it to work with the promote/demote?
I'll take a look later today to see why it's not working as expected but @waspincclan has kindly provided a temporary solution that might be worth trying for the mean time. :)
 
If you want to hack it together yourself, you can do it by adding these two lines:

library/Nobita/Promote/XenForo/ControllerPublic/Member.php :: line 126
Code:
                // Sync TS3
                $syncModel = $this->getModelFromCache('NixFifty_TeamSpeak_Model_Sync');
                $syncModel->setUserServerGroupsById($userId);

Right after saving the user, and checking that something was changed.

Code:
...


            $userDw->save();

            if ($userDw->isChanged('user_group_id') OR $userDw->isChanged('secondary_group_ids'))
            {
                // well. Send an notify
                if ($options['notify_email'])
                {
                    // Send An Email to User
                    $mail = XenForo_Mail::create('member_promote_email_template', array(
                        'promoter' => $visitor->toArray(),
                        'user' => $user
                    ), $user['language_id']);
                    $mail->enableAllLanguagePreCache();
                    $mail->queue($user['email'], $user['username']);
                }

                // Sync TS3
                $syncModel = $this->getModelFromCache('NixFifty_TeamSpeak_Model_Sync');
                $syncModel->setUserServerGroupsById($userId);
            }


Thanks I'll give this a try!


I'll take a look later today to see why it's not working as expected but @waspincclan has kindly provided a temporary solution that might be worth trying for the mean time. :)

Looking forward to an official patch! Thanks
 
Top Bottom