TeamSpeak 3 Plugin

adocilesloth submitted a new resource:

Formerly known as TS3 Recording Notifier

A community I play in requires users to have *R* in front of their name in Teamspeak if they are recording or streaming. I made this plugin to add the prefix when streaming then remove it when not streaming.

As of 2013-12-20, the plugin has been updated to allow users to mute and/or deafen themselves as well as switch channels while streaming/recording. They will be unmuted/undeafened and moved back to the original channel when recording/streaming stops.

As of 2014-08-20, it also adds a TS3 overlay that can be added as a source for OBS. This overlay was created from a modified version of the Text source.

Downloads:
32bit Version
64bit Version
Zip file contains TS3Plugin.dll and README.txt files


Before streaming, open the TeamSpeak 3 Plugin config.
17656241284_2827b3acf4_o.png
First box allows you to set the IP of the PC running your TS3 client if you record and play on different computers.
In the second box add your TS3 Unique ID (Settings -> Identities -> Unique ID)
The next two checkboxes pick whether to use a prefix or suffix. The third sets whether the pre/suffix is added to all servers or the active server.
Change *R* in the third box to what ever you want the prefix to be (must be 10 characters or less)
The next two checkboxes are self explanatory. The third sets whether the mute/deafen is added to all servers or the active server.
If the "Change Channel" checkbox is ticked, the "Set Channel" button and "Channel Password" boxes are activated. Move to the streaming/recording channel and press "Set Channel" to set that channel in OBS. Then add the channel password if necessary. Only works in the active server.

The overlay config:
16212296709_73e2f0ec73_o.png

The overlay in action:
14794361157_29dff7db1d_o.png

IMPORTANT: You need to have the TS3 ClientQuery plugin running for this to work.

FAQ/Known Bugs:
TS3 Spam/Flood Protection: As far as I can tell, this is due to starting/stopping preview/stream/record to quickly. Slow down on the starting/stopping and it should (hopefully) not be problem.
Crash when clicking "Change Channel": Looking into it.
Random crashes on opening Plugin Config: Looking into it.


If you are interested, or want to see how bad my coding is, source code is available on [/URL]Github.
Read more about this resource...
 
Last edited by a moderator:

Kashimus

New Member
Could you increase the character limit of the prefix maybe to 15?
Nice plugin.Keep up the good work.
Maybe add a few extra function if possible,(move to another channel-with channel id,mute sound/mic if stream starts etc)
 
The prefix is set to 10 as the max character limit for a name in TS is 30. The plugin has to remove characters at the end of the name to add the preifx so long prefixes start to shorten the name.

I have added the ability to mute/deafen yourself and change channel while streaming. I was looking at disconnecting from TS while streaming but there isn't a nice way to do it; you have to kick yourself and you can't reconnect from within the plugin. If people want it, I can add it but at the moment it seems a bit pointless due to the no reconnect option.

NOTE: If you used the old version of this plugin, please search for %appdata%/OBS/pluginData and delete ts3.ini or OBS will crash when you open the TS3 Recording Notifier config.
 
It's in OBS.
Click on plugins.
In the list that appears, select TS3 Recording Notifier.
Then click on Configure

If TS3 Recording Notifier isn't in the list of plugins, make sure you have the correct version of the plugin for your version of OBS.

As a note, the shortcut that gets placed on your desktop when you install OBS directs you to the 32bit version of OBS. If you installed the 64bit version of the plugin into the 64bit OBS directory and you can't find the plugin when you launch OBS from the shortcut, that may be the problem. A friend was having this problem yesterday and knowing that fixed it for him.
 
adocilesloth updated TeamSpeak 3 Plugin with a new update entry:

TeamSpeak 3 Overlay

This update adds an overlay that can be added as a source. Semi-inspired by R3N3PDE's TeamSpeak3 Channel-Clients Viewer Overlay, it uses a modified Text source (the one that's in OBS already) to create the overlay. This is something I've been wanting to do for a while.

The code for the Overlay Source class is mainly the same as the Text Source class. There are some alterations, additions and...

Read the rest of this update entry...
 

sneaky4oe

Member
Thanks for that. By the way, is it me, or you can get some random OBS crashes if using this plugin and closes teamspeak?
 

sneaky4oe

Member
Code:
OBS has encountered an unhandled exception and has terminated. If you are able to
reproduce this crash, please submit this crash report on the forums at
http://www.obsproject.com/ - include the contents of this crash log and the
minidump .dmp file (if available) as well as your regular OBS log files and
a description of what you were doing at the time of the crash.

This crash appears to have occured in the 'c:\windows\system32\kernelbase.dll' module.

**** UNHANDLED EXCEPTION: e06d7363
Fault address: 753C1D4D (c:\windows\system32\kernelbase.dll)
OBS version: Open Broadcaster Software v0.631b
Windows version: 6.2 (Build 9200)
CPU: AMD FX(tm)-8350 Eight-Core Processor         

Crashing thread stack trace:
Stack    EIP      Arg0     Arg1     Arg2     Arg3     Address
007FE7C8 753C1D4D E06D7363 00000001 00000003 007FE84C kernelbase.dll!0x753c1d4d
007FE828 65D9872D 007FE868 65D3CA7C 65D01790 07D461C0 msvcr100.dll!0x65d9872d
007FE860 65D10DCC 6EBA3860 00000009 00000000 007FE8A0 msvcp100.dll!0x65d10dcc
007FE87C 6EB93CFD 007FE9C4 FFFFFFFE 007FEA34 00000000 ts3plugin.dll!0x6eb93cfd
007FE890 6EB92435 FFFFFFFE FFFFFFFF 492B322D 6EBAA9B8 ts3plugin.dll!0x6eb92435
007FE8A8 6EB9C088 00000001 00F90000 00000005 007FF014 ts3plugin.dll!0x6eb9c088
007FEEDC 6EB9AEF4 00001397 6ABA4D30 00F90000 01317DE3 ts3plugin.dll!0x6eb9aef4
007FEEF0 013197F2 00001397 00090EA4 00000101 007FEF74 obs.exe!OBS::ReportStartStreamTrigger+0x32
007FEF00 01317DE3 00000000 00000000 77181EC7 007FF16C obs.exe!OBS::Start+0x18f3
007FF01C 013159B2 00090EA4 0133C880 00000002 7692B7D3 obs.exe!OBS::ToggleCapturing+0x42
007FF030 0133D60C 00000000 007FF198 77167834 000C0F34 obs.exe!OBS::OBSProc+0xd8c
007FF168 77167D1A 0133C880 000C0F34 00000111 00001397 user32.dll!0x77167d1a
007FF1A0 77167A9A 00000000 0133C880 00000000 00CA09F8 user32.dll!0x77167a9a
007FF1E4 77167997 00000001 000C0F34 00000000 00090EA4 user32.dll!0x77167997
007FF204 77177DAB 00000000 00000000 00000000 00000000 user32.dll!Ordinal2536+0x316

A minidump was saved to C:\Users\Михаил\AppData\Roaming\OBS\crashDumps\OBSCrashDump2014-09-15_2.dmp.
Please include this file when posting a crash report.

List of loaded modules:
Base Address      Module

If using suffix " STREAMING" with my nickname "SneakyJoe".
 

sneaky4oe

Member
Code:
OBS has encountered an unhandled exception and has terminated. If you are able to
reproduce this crash, please submit this crash report on the forums at
http://www.obsproject.com/ - include the contents of this crash log and the
minidump .dmp file (if available) as well as your regular OBS log files and
a description of what you were doing at the time of the crash.

This crash appears to have occured in the 'c:\windows\system32\kernelbase.dll' module.

**** UNHANDLED EXCEPTION: e06d7363
Fault address: 76CA1D4D (c:\windows\system32\kernelbase.dll)
OBS version: Open Broadcaster Software v0.631b
Windows version: 6.2 (Build 9200)
CPU: AMD FX(tm)-8350 Eight-Core Processor         

Crashing thread stack trace:
Stack    EIP      Arg0     Arg1     Arg2     Arg3     Address
2CB4E570 76CA1D4D E06D7363 00000001 00000003 2CB4E5F8 kernelbase.dll!0x76ca1d4d
2CB4E5D4 5074872D 2CB4E614 5081CA7C 507E1790 0A3E6200 msvcr100.dll!0x5074872d
2CB4E60C 507F0DCC 50863860 FFFFFFFF 00000000 2CB4E64C msvcp100.dll!0x507f0dcc
2CB4E628 50853CFD 2CB4E7A0 FFFFFFFF 00000010 00000000 ts3plugin.dll!0x50853cfd
2CB4E63C 50852435 FFFFFFFF 00000021 6DBC2A52 00000000 ts3plugin.dll!0x50852435
2CB4E654 5085167B 039B3DA0 2CB4FB18 7721A22B 039B3DA0 ts3plugin.dll!0x5085167b
2CB4FAD0 76D7919F 039B3DA0 4F985353 00000000 00000000 kernel32.dll!0x76d7919f
2CB4FADC 7721A22B FFFFFFFF 7720F224 00000000 00000000 ntdll.dll!0x7721a22b
2CB4FB20 7721A201 508511A0 039B3DA0 00000000 00000000 ntdll.dll!0x7721a201

A minidump was saved to C:\Users\Михаил\AppData\Roaming\OBS\crashDumps\OBSCrashDump2014-09-20_1.dmp.
Please include this file when posting a crash report.

List of loaded modules:
Base Address      Module

This is a crash report for my OBS when I close teamspeak.
The plugin also don't change text file content if teamspeak was loaded after stream start (or OBS start, not sure).
 
The cause of that crash is proving to be slightly illusive. I know that it's due to the overlay.

As for the text file not changing, it was kind of by design. When you start streaming, the plugin checks for a teamspeak client. If it can't find one, it doesn't run the thread that handles the overlay. I assumed that people would have teamspeak up and running before streaming which, looking at it now, was a bad assumption to make.

I'll work on finding a fix for the crash and then the text file thing but it may be a while.

EDIT: So that went faster than expected
 
Last edited:
adocilesloth updated TeamSpeak 3 Plugin with a new update entry:

Closing TeamSpeak Crash fix and mid stream restarts

Should have fixed OBS crashing if teamspeak is closed while streaming. I tested bother versions for 5 mins of opening and closing teamspeak while streaming and there were no crashes. Hopefully I wasn't just lucky.

Changed it so the overlay will update if teamspeak is launched mid stream.

Changed it so the overlay will go blank if not connected to a teamspeak server.

Read the rest of this update entry...
 

sneaky4oe

Member
Nice. Seems like worked out.
Another note - it doesn't add suffix to nickname if TS3 was launched after stream started.
 
The plugin was never designed with opening TS3 while streaming in mind. Hence why it doesn't add the suffix/prefix to your name if you launch TS3 after starting to stream. It's sort of the same reason that the overlay didn't pick up names if you launched TS3 mid stream before. I can probably make it work to add the suffix/prefix mid stream but it's not possible to remove it if you close TS3 mid stream.
 
Top