pyTSon

pyTSon 1.2.2

No permission to download
pyTSon 1.2.2 for TS3 >=3.1 (apiVersion >=21)

3155203
pathmann released this on 13 Sep 2017 · 20 commits to master since this release

Assets

Changelog
New Features:
  • pytsonui.setupUi can now take a new keyword argument extraWidgets with python implemented widgets to be used in ui files
  • ts3widgets.Serverview is now constructable by setupUi (schid parameter is now a keyword argument)
  • added some convenience functions to query variables (getChannelVariable, getClientVariable, getClientSelfVariable, getServerVariable) which will choose (in most cases) the right ctype function
  • plugincommands have now sender integrity builtin pyTSon (see _plugincmd.py for limitations and additional documentation)
Bugfixes:
  • ts3widgets.ServerviewModel will now react to kicked clients accordingly
  • Fixed a possible crash in initHotkeys
  • Adopted the variable handling of the plugin sdk's function requestClientSetWhisperList
  • Fixed a crash if some initial imports on pyTSon's initiation failed
pyTSon 1.2.0 for TS3 >=3.1 (apiVersion >=21)

3155203
pathmann released this on 12 May 2017 · 72 commits to master since this release

Assets


EDIT: There was a bug in the bundle script which made the config ui inaccessible. If you already downloaded the release, pls redownload the one attached here.

Changelog:
New Features:
  • Added functions getVersion and getCurrentApiVersion to module pytson to query the current versions
  • Added callbackproxies to register classes to receive ts3 events outside ts3plugin objects
  • ts3plugin and PluginHost live now in different modules
  • Added ServerCache class to module ts3client to use the client's cached icons
  • Added CountryFlags class to module ts3client to use the client's flag icons
  • Added package ts3widgets
  • Added module serverview to ts3widgets to display a channel-client-tree with QWidgets
  • Added module filetransfer to ts3widgets to display a filebrowser and filetransfer dialogs with QWidgets
  • Added simple signal-slot implementation with module signalslot
  • Added module PythonQt.pytson
  • Added EventFilterObject to PythonQt.pytson to use Qt's eventfilter system
  • Events called from another thread than the mainthread are now called asynchronous (from the mainthread) in pyTSon (this should make pyTSon alot more stable)
  • Re-added onUserLoggingMessageEvent
  • Re-added onFileTransferStatusEvent
  • pytsonui is now a package
  • all python code is now conform to PEP8 (with small exceptions :) )
  • pyTSon is now translatable
  • Added a german translation
  • Added pytson.tr and pytson.Translatable as translate function resp. baseclass
  • plugin authors might use pylupdate.py to extract translatable strings from uifiles and python code
  • Users now may activate verbose logging
  • Users now may manage sitepackages in the include directory in the settings dialog
  • Added some rare constants from the original pluginsdk to ts3defines module
  • functions in pytsonui now accept a new parameter pluginicons (see the docs for more information)
  • pytsonui.setupUi can now load the original designed class of a Qt Designer file
  • pytsonui.retrieveAllWidgets will now load QButtonGroup and QAction as well
  • Created pythonqt_app to allow testing PythonQt uis. pythonqt_app is a standalone app emulating pyTSon's environment.
  • Repository URLs can now have redirects
  • Repository plugins can now be extracted from a subdirectory in a zipped file
Bugfixes:
  • Unicode strings are now handled correctly in infoData
  • infoData is now only called on plugins, if the method exists
  • if infoData returns None, it is ignored now
  • menuitems are now sorted by their plugins names
  • functions of the ts3lib module returning a tuple containing the errorcode and some value, now return None as value on error
  • Fixed the internal conversion of bookmarklists, so ts3lib.getBookmarkList should work now
  • Emoticons of non-zipped Iconpacks in ts3client.IconPack are now loaded correctly
  • pytsonui.retrieveAllWidgets now ignores the subwidgets of combined widgets (like QSpinBox)
  • the scripting console does not use wordwrapping anymore, which should fix some odd behaviour
  • python caches are not bundled anymore
  • Fixed a bug where installation of plugins without dependencies from a repository was not possible
  • Fixed some bugs in PythonQt around QAbstractItemModel
  • Various updates to the documentation
  • Various small bugfixes
pyTSon 1.1.0 for TS3 3.1 (apiVersion 21)

3155203
pathmann released this on 27 Jan 2017 · 214 commits to master since this release

Assets


Caution: The directory structure changed, see the upgrade tips at the end!

Changelog:
  • the ts3 module got renamed to ts3lib (to not clash with packages on pypi)
  • users can now download plugins from online repositories within the app
  • plugin developers can maintain their own repository (recommended) or merge directly into the "pyTSon master" (more infos on repositories can be found here: https://github.com/pathmann/pyTSon_repository/blob/master/README.md)
  • new plugin method "menuCreated" which is called, if the menuItems were set up
  • you can now decide to load menus from disabled plugins on startup, so you don't have to restart pyTSon when activating a plugin with menus
  • added github octicons iconpack
  • added icons to pyTSon's menuitems
  • the documentation was heavily updated, check the pdf in the docs directory or https://pytson.4qt.de
  • plugins are no longer restricted to consist of only one file, instead every plugin should be a python package in pyTSon/scripts (if your plugin is one file: create a directory, move your script into it and rename it to init.py); repositories can contain zipfiles which will be extracted in the app on installation (if you don't use the pypi-dependency feature of the repository and you want to deliver dependencies in your package, use relative imports instead of adding your local include directory to sys.path)
  • pip is now used for dependency handling
  • added an interpreter (no interactive mode)
  • Plugin infrastructure overhauled:
    • the python standard library is now located in pyTSon/lib/python3.5
    • pyTSon/include can be seen as a local sitepack dir
    • plugins are now python packages in pyTSon/scripts (each plugin in a subdirectory)
    • interpreter python(.exe) added in pyTSon/ (won't run from other directory!)
  • added a simple api to query the TeamSpeak 3 client's settings database with ts3client.Config
  • added api to work with IconPacks with ts3client.IconPack
  • setupUi (and others) will now load icons from an iconpack if widgets contain a dynamic string property called 'pytsonicon' containing the variable to the icon in the iconpack, instead you can use a string like "octicons:filename.png" which sets filename.png from the bundled octicons pack as icon
  • config moved to subdirectory ~/.ts3client/pyTSon; if plugins use configfiles, they should also use this directory (you can use python.getConfigPath("myconfigname.conf"), which will join the pathes accordingly)
  • added convenience functions getConfigPath and getPluginPath (in module pytson) which work like os.path.join with the specific ts3 path prefixed before
  • users can now remove plugins within the ui of the app
  • if a new version (of the python standard library) is installed, the old one will be removed automatically
  • as a result of the above, it is not longer supported to have multiple releases installed (for multiple architectures)
  • the example scripts are no longer contained in the install package but can be pulled from the "pyTSon master" repository
  • pytsonui.getValues is dropped, plugin developers need to create their own dialog classes
  • it's no longer supported to run two architecture versions of pyTSon simultaneously (on Linux and Windows, if your plugins are installed to your home/appdata directory
And many other minor changes.

Upgrade tips (adapt the pathes depending on your platform):
  • backup everything in ~/.ts3client/plugins/pyTSon/scripts (except ts3plugin.py)
  • backup your config files, at last pyTSon's config in ~/.ts3client/pyTSon.conf
  • wipe everything in ~/.ts3client/plugins/pyTSon
  • install release 1.1.0
  • copy the config file(s) to ~/.ts3client/pyTSon (mkdir first or start the client once and close again)
  • create a directory for each of your scripts under ~/.ts3client/plugins/pyTSon/scripts, move each script in their subdirectory and rename them to init.py or do other pythonic package management
pyTSon 1.0.5 for TS3 3.1 (apiVersion 21)

3155203
pathmann released this on 21 Dec 2016 · 307 commits to master since this release

Assets

Changelog:
  • removed onUserLoggingMessageEvent, onFileTransferStatusEvent (they are called from another thread, so this will help stabilizing pyTSon)
  • requestAutoload is now required for all plugins to be loaded
  • added a ts3help module which inculdes a help(obj) function, which displays help information on obj, especially if obj is a ts3 function
  • you can now check in your ts3 client, if there is a newer release on my github release page
  • pytsonui.setupUi can now handle all childwidgets (instead of passing a list of tuples), check the docstring for more information
  • pytsonui functions are now in pyTSon's documentation
  • reworked configdialog (switched to a grid layout)
  • added an ipcplugin to communicate with other applications
  • ScriptingConsole:
    • tabcompletion works now with other splitting characters than just spaces
    • you can now specify a startup script
    • the buttons in settingsdialog should now be colorized correctly
And many other minor changes.
pyTSon 1.0.4 for TS3 3.1 (apiVersion 21)

3155203
pathmann released this on 1 Nov 2016 · 364 commits to master since this release

Assets

Changelog:
  • added some example plugins (see the scripts directory)
  • empty infoData will be ignored from now on, you should set infoTitle to None, if your script does not show any infoData
  • all python plugin code is now wrapped in try-except-blocks (exceptions in clientlog)
  • added pytsonui.getValues as convenience function to add simple configdialogs (recommended way is still to create dialogclasses)
  • hotkeys and menuitems are now reloaded, if the python plugin or all python plugins are reloaded
  • plugins are now reloaded, even if they offer a menuitem and/or hotkey
  • quintptr is now registered as metatype (eg. for use with internalIDs in QAbstractItemModels)
  • QAbstractItemModel/QModelIndex can now contain QObject-based objects as internalPointer (classic Qt type is void*)
  • bundle contains docs as pdf now
EDIT: Reuploaded windows releases, just fixed escaping in package.ini
pyTSon 1.0.3 for TS3 3.1 (apiVersion 21)

3155203
pathmann released this on 20 Sep 2016 · 383 commits to master since this release

Assets

Changelog:
  • Removed callbacks ts3plugin_onCustom3dRolloffCalculationWaveEvent and ts3plugin_onCustom3dRolloffCalculationClientEvent (as long as pyTSon can't handle callbacks from other threads than the main one)
  • Configuration window now raises, if already exist and clicked again in menu
pyTSon 1.0.2 for TS3 3.1 (apiVersion 21)

3155203
pathmann released this on 25 Aug 2016 · 389 commits to master since this release

Assets

Changelog:
  • Added a mac build
  • Updated to api version 21 (Client Version 3.1 beta)
  • Updated to Qt 5.6.1 (but only Core, Gui, Widgets, Network, Sql and UITools modules are wrapped, more to come later)
  • On Linux and Mac, the python lib is loaded from the plugin directory (on Windows, you still have to move the lib to the client install root)
  • include/Lib has now a architecture suffix on Linux and Windows (this is necessary, if you have both client architectures installed)
  • Fixed pos1/home key button in scripting console
  • Fixed a false indentation on tabcomplete in scripting console
  • Added function ts3.getPluginID (there are no real use-cases for this, because the plugin id is not needed to call api functions from python, it's always added by default in the C backend)
pyTSon 1.0.1 for TS3 ~3.0.19.* (apiVersion 20)

3155203
pathmann released this on 8 Aug 2016 · 411 commits to master since this release

Assets

Changelog:
  • python is now linked shared
  • using python 3.5.2
  • infoData will now work as intended
  • the settingsbutton will now be enabled/disabled accordingly
  • after reloading, all previously running plugins are started again
  • plugins are sorted by name in configdialog
  • menus and hotkeys are working now
  • fixed a crash, when configdialog and/or shell are opened while reloading pyTSon
  • and some other minor fixes
ATTENTION:
You need to delete the directory <TeamSpeak 3 client install dir>/plugins/pyTSon/include/Lib
Top