Page 1 of 124 1231151101 ... LastLast
Results 1 to 10 of 1233
  1. #1

    Teamspeak 3 Sync


    Author: Imisnew2

    Teamspeak 3 Sync synchronizes your Bad Company 2 / Battlefield 3 server with a Teamspeak 3 server, moving players into their respective channels on Teamspeak 3 dependent on the player's team in Bad Company 2 / Battlefield 3. The plugin also allows you to "Message" players who are not in your Teamspeak 3 Server, yet playing on your Bad Company 2 / Battlefield 3 server.

    All parameters for the plugin are described in the plugins details tab.

    Current Issues:
    [-] Under rare circumstances, Teamspeak 3 Sync will not re-enable itself after a layer restart.
    [-] When two players whose names are extremely similar and are playing from the same IP will not be sync'd up correctly.

    Future Plans:
    [-] Add the ability to display the amount of users currently on Teamspeak into the yell feature.
    [-] (Considering) Move players to Team channel (assumes squad swapping is active) while they are dead.
    [-] (Considering) Move players to Penalty channel upon TKing in the game.

    Setup Instructions

    PRoCon Setup:
    Teamspeak 3 Sync doesn't need any special setup out-of-the-box unless PRoCon is running in a sandbox. You can check whether PRoCon is running in a sandbox and add exceptions for Teamspeak 3 Sync by following the steps outlined below:
    [-] Start PRoCon, go to Tools > Options.
    [-] Under the Plugins tab, check if the drop-down is set to "Run plugins in a sandbox (recommended)."
    [-] If it is, add your Teamspeak 3 Server's IP and Query Port to the Trusted Domains.

    Teamspeak Setup:
    While the Teamspeak Server doesn't require any special setup, the plugin may be banned occasionally due to sending commands too quickly. This and other setup instructions are listed below to get the information necessary for the plugin:
    [-] Add your PRoCon's IP to query_ip_whitelist.txt. This is found in the root folder of your Teamspeak 3 Server. If your Teamspeak 3 Server is being hosted by a server provider, ask your provider to do this for you.
    [-] Setup your ServerQuery Login through Teamspeak by going to Tools -> ServerQuery Login -> *Enter A Username* -> *Receive Auto Generated Password*. The following permissions are required for the plugin to run correctly:

    [-] login
    [-] use
    [-] channellist
    [-] channelfind
    [-] channelinfo
    [-] clientlist
    [-] clientfind
    [-] clientinfo
    [-] clientmove
    [-] clientupdate

    [-]To find what port your Teamspeak 3 Server uses as its query port, look in the server.ini file. The default value is 10011. If your Teamspeak 3 Server is being hosted by a server provider, ask your provider for the query port.


    Teamspeak Sync

    Change Log

    1.0.3 ->

    [-] Fixed an issue where a response that included a value with an "=" sign in it would erroneously chop off the value at the "=" sign.
    Older: -> 1.0.3

    [-] Fixed an issue where a player may get swapped between channels repeatedly.

    1.0.1 ->

    [-] Updated plugin API to use recommended PRoCon API.
    [-] Added ability for other plugins to interact with and get data from Teamspeak 3 Sync.
    [-] Added check to cause less erroneous swapping when two clients from the same IP join a server. -> 1.0.1

    [-] Fix intermission swapping for BFBC2.

    0.9.7 ->

    [-] Do not swap players from pickup channels to staging channels.

    0.9.6 -> 0.9.7

    [-] Fixed an issue when disabling/re-enabling the plugin related to other pool channels.
    [-] Plugin can now be disabled if it is attempting to reconnect.
    [-] Plugin now attempts to reconnect upon initial connection failure. -> 0.9.6

    [-] Fixed some issues concerning new Teamspeak 3 server releases.
    [-] Added some logic to attempt to fix a swapping issue.
    [-] Added the ability to allow Teamspeak 3 Sync to pull clients from channels other than the Staging channel into the Plugin's Team and Squad channels.
    [-] Added the ability to leave a player in the team channel (versus a squad channel) if there is less than a specified amount of players in the player's squad that are also on Teamspeak.
    [-] Added the ability to move players to the staging channels between rounds for inter-team chat.

    0.9.5 ->

    [-] Fixed an issue where, after a re-connection due to an error has successfully occurred, Procon may crash.

    0.9.4 -> 0.9.5

    [-] Added the ability to delay queries being sent to the Teamspeak 3 server.
    [-] Broke up and renamed several settings - This will probably cause you to have to re-do your settings, sorry.
    [-] Removed channel creation upon plugin start.
    [-] Made channel removal more robust, removing all empty channels when checked.
    [-] Fixed a bug where sometimes PRoCon would still require a start after the plugin was disabled from an error.
    [-] Fixed a bug where sometimes the plugin would not disable itself after a fatal error.
    [-] Fixed a bug where enabling/disabling the plugin during an error might cause unwanted behavior.
    [-] Major code overhaul - It just looks prettier now .

    0.9.3 -> 0.9.4

    [-] Added the ability to have Team Channels exist under the root channel.
    [-] Added the ability to specify the Server Query Nickname.
    [-] Added the ability to control the password attached to channels the plugin creates (or none at all).
    [-] Broke up debugging information into 5 categories.
    [-] Revamped event processing system - No longer requires PRoCon to be restarted if plugin is disabled.
    [-] Revamped error processing system - Provides error messages upon being banned from the server, among other things.
    [-] Revamped re-connection system - Now it actually works (will not be able to disable plugin while it is attempting to reconnect).
    [-] Changed the squad threshold to be per-team, so players are only broken up into squad channels if there are enough players for that team.
    [-] Fixed a bug where removing channels would cause the plugin to crash.
    [-] Removed Matching Threshold due to issues - Names must have a 100% match to be matched on name.
    [-] Removed moving players to the staging channel if their team was Team 0 - it simply ignores Team 0 now.

    0.9.2 -> 0.9.3

    [-] Fixed an issue where (for Battlefield 3) a 'Team 0' channel would be created.
    [-] Fixed an issue where no matter which channel a client was in, they would be moved.
    [-] Fixed an issue where Teamspeak Sync would throw an error when attempting to remove channels.

    0.9.1 -> 0.9.2

    [-] Fixed an issue where Procon would crash when attempting to remove squad channels.
    [-] Fixed an issue where Procon would crash when attempting to create channels.
    [-] Renamed "Serveradmin from ip" to "Odin".

    0.9 -> 0.9.1

    [-] Fixed an issue with items on the action queue trying to be removed when there were none.

    0.8 -> 0.9

    [-] Channels are dynamically created/found aside from the staging channel.
    [-] Supports all game-modes/types.
    [-] Supports removing channels when the last player has left them.
    [-] Supports single channel, team channels, and squad channels based on set thresholds.
    [-] Added robust debug logging (on demand).
    [-] Beefed up connection error handling more.
    [-] Even better insta swapping.
    [-] Fixed the infamous super-random "Reference to null object" error?!
    [-] Fixed a issue where custom query server connection messages could cause the initial connection to fail.
    [-] Fixed the triple swap issue occurring in 0.8.

    0.7 -> 0.8

    [-] Fixed a huge CPU usage issue in 0.7. This may have been the cause of the "infinite crash loop", especially if your PRoCon host forced PRoCon to a single core.
    [-] Possible fix to the "Reference to null object" error.
    [-] Fixed Reconnect on error... I think...
    [-] The Plugin does slightly more logging in the console (didn't do any at all before, after setup, really) to help troubleshoot errors. Non-fatal errors are logged in orange. For the most part, you can ignore these.
    [-] Re-implemented super-fast swapping and insta-swaps on join/team-swap/leave.
    [-] Fixed a server query permissions issue. Might cause other errors, I just need people to keep me posted, so I can implement a hot-fix if this solution doesn't work.
    [-] Other minor tweaks to prepare for 0.9 release.

    0.6 -> 0.7

    [-] Completely re-coded and thoroughly tested the Teamspeak API. Hopefully this fixes some errors that have been rising up lately (See: NEXSO's posts around pages 7-9). (For the record, I made the TS API completely asynchronous, go me!)
    [-] Completely re-coded the way updates are requested from the Bad Company 2 server. This cuts down nearly all extra traffic between the Bad Company 2 server that the plugin initially created.
    [-] Completely re-coded the matching scheme between clients to account for multiple IP's and no IP's. Also, implemented the levinshtein distance algorithm for a fall-back with matching on names.
    [-] Fixed various issues where player's would not match up correctly, leaving them in the staging channel.
    [-] Allowed Reconnect On Error Settings, Synchronization, and Yell Settings to be modified on the fly. Any changes you make to these variables will have an instantaneous effect. Changes to the Teamspeak 3 Server variables still require the plugin to be disabled/enabled to take affect.
    [-] To reduce complications, I've made the plugin solely based on the "Update Interval". This means players who swap teams will not be swapped in teamspeak until the next interval rolls around. I plan on re-implementing swapping players right when they swap teams in one of several "smaller releases" planned for v0.7.
    [-] I can't remember what else I changed, but this version is basically a ground-up remake of the original plugin, as to try and eliminate as many errors as possible.

    0.5.1 -> 0.6

    [-] You no longer have to specify your Virtual Server ID. Instead, you must specify your Teamspeak 3 Port.
    [-] Fixed several little bugs that would cause the plugin to freeze on rare occasions.
    [-] Made the plugin more "crash proof".
    [-] Went mad with threading, allowing a more "fluid" looking response from PRoCon at all times. I.e., it doesn't look like it freezes anymore when trying to crunch a lot of information.
    [-] Made IP matching more robust, so that if a players IP could not be obtained (e.g. EA's servers are down), it defaults back to matching based on Name.
    [-] Re-implemented swapping players as soon as they swap teams (slightly longer delay than v0.4).
    [-] Fixed an issue where the plugin would not start correctly if already enabled when PRoCon was started. (More of a work-around. May still fail in some rare cases.)
    [-] Allows for "custom responses" from query servers upon connection. This means everyone who was having problems with the plugin and using a Teamspeak 3 server from Gameservers (or another provider) will now be able to use the plugin. - Thanks for the help powerbits.

    0.5 -> 0.5.1

    [-] Applied hot-fix to correct crashing issue if a player disconnected from teamspeak at just the right time.

    0.4 -> 0.5

    [-] Fixed some threading issues that caused crashes in extremely rare occasions.
    [-] Made error messages more... helpful.
    [-] Matching based off of IP, not name.
    [-] For this release, the actual time it takes for the plugin to realize you joined the server/swapped teams is dependent on the update interval. It will return to being instantaneous in the next release.
    Last edited by Imisnew2; 30-03-2015 at 08:03.

  2. #2
    Join Date
    Sep 2009
    Stockholm, Sweden

    Re: Teamspeak 3 Sync


    Again I'm *really* sorry I accidentally deleted this =\
    I started at DICE late Oct. 2014, so ignore every post before that.

  3. #3

    Re: Teamspeak 3 Sync

    I just tried it, and it works. Very cool!

    It took me some tinkering before it would actually say it was syncing. There is not any useful feedback when it does not work, all it says is:

    01:05:22 01] Could not connect to the teamspeak 3 server.
    [01:05:22 01] Please fix your settings and then re-enable the plugin to restart.

    Would be good if you could say why it's not working. Like invalid ip/port, username/password, or cannot find channel ... etc.

    Also a bug I found, was that if the channel has a backslash in the name "\", it would not work.

  4. #4

    Re: Teamspeak 3 Sync

    Quote Originally Posted by micovery
    I just tried it, and it works. Very cool!

    It took me some tinkering before it would actually say it was syncing. There is not any useful feedback when it does not work, all it says is:
    How did you get yours working?

  5. #5

    Re: Teamspeak 3 Sync

    The error messages are a little cryptic, but I don't have the time right now to post up a "translation". Give me 5-6 hrs from this post, and they should be up.

    The first one, however, that you posted mico, has to deal with the connection to the TS3 server. It means either the IP/Port was wrong, the TS3 server was down, the IP/Port wasn't to the Query server of the TS3 server... etc, many things.

    Failed Login would be a different message.
    Failed virtual server ID would be a different message.
    Failed Finding of channels would be a different message, and so on.

    This is the first public release, so expect some programmer<->public miscommunication issues :P.

    And now I'm out of time.

  6. #6

    Re: Teamspeak 3 Sync

    Error messages are posted. And CoreSyntax, if you could let me know what errors you're receiving, I might be able to help.

  7. #7

    Re: Teamspeak 3 Sync

    Quote Originally Posted by micovery
    Also a bug I found, was that if the channel has a backslash in the name "\", it would not work.
    I could not reproduce this.
    I created a channel "TestChannel/TestChannel" and "TestChannel\TestChannel"; both worked.

  8. #8

    Re: Teamspeak 3 Sync

    This is very cool.... Can this be used for Ventrilo or maybe someone could develop plugin like this for Ventrilo?

  9. #9

    Re: Teamspeak 3 Sync

    Quote Originally Posted by captinwizard
    This is very cool.... Can this be used for Ventrilo or maybe someone could develop plugin like this for Ventrilo?
    It might be possible, however, I would have to check out Ventrillo to see if there is any API for it. Otherwise, it wouldn't be fun to write that plugin, lol.

  10. #10

    Re: Teamspeak 3 Sync

    Wow, very nice work! Your code looks great too - heavily commented.



Similar Threads

  1. Anyone using the Teamspeak Sync successfully
    By Raddz in forum Procon 1.0 Frostbite
    Replies: 2
    Last Post: 10-01-2011, 04:07
  2. Teamspeak
    By Phogue in forum General
    Replies: 0
    Last Post: 04-01-2011, 02:44
  3. Teamspeak plugin
    By slekkas in forum Plugin Development
    Replies: 4
    Last Post: 04-01-2011, 01:00

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts