2014-11-18, 01:13
Hi,
One issue I have occasionally encountered is the desire to share data between addons or scripts. Think of plugins and background services or hotkey runscripts and background services.
Although there are a number of solutions for this, I decided to package Pyro4 for Kodi and then use it to create a datastore that addons can use to store and retrieve data from. It is in two parts: a script module and a separate service.
The script module is minimally changed from Pyro4 and is provided if any other ppl want to create their own remote objects directly.
The service implements a working datastore which can be used 'as-is' by addons to store and retrieve objects (anything pickleable).
Pyro4 is an all-python package for Python Remote Objects. It is authored by Irmen de Jong. Details about the original package can be found here: https://pythonhosted.org/Pyro4/index.html
Docs regarding my implementation can be found here: http://kenv99.github.io/service.ipcdatastore/
The download links are also in the docs.
It has been tested to work on a number of platforms. If you have any issues or questions, please post back.
If it is well-received, I plan to submit it for inclusion in the official repo.
I appreciate any and all feedback!
One issue I have occasionally encountered is the desire to share data between addons or scripts. Think of plugins and background services or hotkey runscripts and background services.
Although there are a number of solutions for this, I decided to package Pyro4 for Kodi and then use it to create a datastore that addons can use to store and retrieve data from. It is in two parts: a script module and a separate service.
The script module is minimally changed from Pyro4 and is provided if any other ppl want to create their own remote objects directly.
The service implements a working datastore which can be used 'as-is' by addons to store and retrieve objects (anything pickleable).
Pyro4 is an all-python package for Python Remote Objects. It is authored by Irmen de Jong. Details about the original package can be found here: https://pythonhosted.org/Pyro4/index.html
Docs regarding my implementation can be found here: http://kenv99.github.io/service.ipcdatastore/
The download links are also in the docs.
It has been tested to work on a number of platforms. If you have any issues or questions, please post back.
If it is well-received, I plan to submit it for inclusion in the official repo.
I appreciate any and all feedback!