wslink
======
Wslink allows easy, bi-directional communication between a python server and a
javascript client over a websocket_. The client can make RPC calls to the
server, and the server can publish messages to topics that the client can
subscribe to. The server can include binary attachments in these messages,
which are communicated as a binary websocket message, avoiding the overhead of
encoding and decoding.
RPC and publish/subscribe
-------------------------
The initial users of wslink driving its development are VTK_ and ParaView_.
ParaViewWeb and vtkWeb require:
* RPC - a remote procedure call that can be fired by the client and return
sometime later with a response from the server, possibly an error.
* Publish/subscribe - client can subscribe to a topic provided by the server,
possibly with a filter on the parts of interest. When the topic has updated
results, the server publishes them to the client, without further action on
the client's part.
Get the whole story
-------------------
This package is just the server side of wslink. See the `github repo`_ for
the full story - and to contribute or report issues!
Configure from environment variables
------------------------------------
Those only apply for the Python server and launcher.
* WSLINK_LAUNCHER_GET - If set to 1 this will enable the GET endpoint for session information
* WSLINK_LAUNCHER_DELETE - If set to 1 this will enable the DELETE endpoint for killing a running session
* WSLINK_MAX_MSG_SIZE - Number of bytes for a message size (default: 4194304)
* WSLINK_HEART_BEAT - Number of seconds between heartbeats (default: 30)
* WSLINK_HTTP_HEADERS - Path to json file containing HTTP headers to be added
License
-------
Free to use in open-source and commercial projects, under the BSD-3-Clause license.
.. _github repo: https://github.com/kitware/wslink
.. _ParaView: https://www.paraview.org/
.. _VTK: http://www.vtk.org/
.. _websocket: https://developer.mozilla.org/en-US/docs/Web/API/WebSocket
Raw data
{
"_id": null,
"home_page": "https://github.com/kitware/wslink",
"name": "wslink",
"maintainer": null,
"docs_url": null,
"requires_python": null,
"maintainer_email": null,
"keywords": "websocket javascript rpc pubsub",
"author": "Kitware, Inc.",
"author_email": "kitware@kitware.com",
"download_url": "https://files.pythonhosted.org/packages/3f/41/cdce3558d698dd7617c347fbb0497f0f26fdcb9e02afa7125117e11699ec/wslink-2.2.1.tar.gz",
"platform": null,
"description": "wslink\n======\n\nWslink allows easy, bi-directional communication between a python server and a\njavascript client over a websocket_. The client can make RPC calls to the\nserver, and the server can publish messages to topics that the client can\nsubscribe to. The server can include binary attachments in these messages,\nwhich are communicated as a binary websocket message, avoiding the overhead of\nencoding and decoding.\n\nRPC and publish/subscribe\n-------------------------\n\nThe initial users of wslink driving its development are VTK_ and ParaView_.\nParaViewWeb and vtkWeb require:\n\n* RPC - a remote procedure call that can be fired by the client and return\n sometime later with a response from the server, possibly an error.\n\n* Publish/subscribe - client can subscribe to a topic provided by the server,\n possibly with a filter on the parts of interest. When the topic has updated\n results, the server publishes them to the client, without further action on\n the client's part.\n\nGet the whole story\n-------------------\n\nThis package is just the server side of wslink. See the `github repo`_ for\nthe full story - and to contribute or report issues!\n\nConfigure from environment variables\n------------------------------------\n\nThose only apply for the Python server and launcher.\n\n* WSLINK_LAUNCHER_GET - If set to 1 this will enable the GET endpoint for session information\n* WSLINK_LAUNCHER_DELETE - If set to 1 this will enable the DELETE endpoint for killing a running session\n* WSLINK_MAX_MSG_SIZE - Number of bytes for a message size (default: 4194304)\n* WSLINK_HEART_BEAT - Number of seconds between heartbeats (default: 30)\n* WSLINK_HTTP_HEADERS - Path to json file containing HTTP headers to be added\n\nLicense\n-------\nFree to use in open-source and commercial projects, under the BSD-3-Clause license.\n\n.. _github repo: https://github.com/kitware/wslink\n.. _ParaView: https://www.paraview.org/\n.. _VTK: http://www.vtk.org/\n.. _websocket: https://developer.mozilla.org/en-US/docs/Web/API/WebSocket\n",
"bugtrack_url": null,
"license": "BSD-3-Clause",
"summary": "Python/JavaScript library for communicating over WebSocket",
"version": "2.2.1",
"project_urls": {
"Homepage": "https://github.com/kitware/wslink"
},
"split_keywords": [
"websocket",
"javascript",
"rpc",
"pubsub"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "a2d81ad7a999e79fc002f814d15dbef4914c6cf9d28231bfa74002b93e48b9af",
"md5": "fbc244f95005204bd365521641900f0d",
"sha256": "bfa1ce14b576f4a4ac4478e74c92a1445000f4fbf33923c98ffd1dc922c993e2"
},
"downloads": -1,
"filename": "wslink-2.2.1-py3-none-any.whl",
"has_sig": false,
"md5_digest": "fbc244f95005204bd365521641900f0d",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 36008,
"upload_time": "2024-09-16T21:08:28",
"upload_time_iso_8601": "2024-09-16T21:08:28.925483Z",
"url": "https://files.pythonhosted.org/packages/a2/d8/1ad7a999e79fc002f814d15dbef4914c6cf9d28231bfa74002b93e48b9af/wslink-2.2.1-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "3f41cdce3558d698dd7617c347fbb0497f0f26fdcb9e02afa7125117e11699ec",
"md5": "71d9086ad9d0a5c477e7a6f8106c42aa",
"sha256": "cf79c7e3abe47f19af641c81f051ef97a2a2cbb96359cf243517afde16764b82"
},
"downloads": -1,
"filename": "wslink-2.2.1.tar.gz",
"has_sig": false,
"md5_digest": "71d9086ad9d0a5c477e7a6f8106c42aa",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 31289,
"upload_time": "2024-09-16T21:08:30",
"upload_time_iso_8601": "2024-09-16T21:08:30.192212Z",
"url": "https://files.pythonhosted.org/packages/3f/41/cdce3558d698dd7617c347fbb0497f0f26fdcb9e02afa7125117e11699ec/wslink-2.2.1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-09-16 21:08:30",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "kitware",
"github_project": "wslink",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "wslink"
}