{"id":16852649,"url":"https://github.com/deckarep/tornadozeromq-ws-demo","last_synced_at":"2025-03-18T10:16:54.213Z","repository":{"id":3438019,"uuid":"4490461","full_name":"deckarep/TornadoZeroMQ-WS-Demo","owner":"deckarep","description":"Demonstrates using Tornado Web Sockets with data published from a ZeroMQ process.","archived":false,"fork":false,"pushed_at":"2012-05-30T03:33:51.000Z","size":92,"stargazers_count":6,"open_issues_count":0,"forks_count":1,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-01-24T16:35:22.877Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/deckarep.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2012-05-30T03:13:15.000Z","updated_at":"2022-01-31T09:04:20.000Z","dependencies_parsed_at":"2022-07-08T08:04:07.914Z","dependency_job_id":null,"html_url":"https://github.com/deckarep/TornadoZeroMQ-WS-Demo","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/deckarep%2FTornadoZeroMQ-WS-Demo","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/deckarep%2FTornadoZeroMQ-WS-Demo/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/deckarep%2FTornadoZeroMQ-WS-Demo/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/deckarep%2FTornadoZeroMQ-WS-Demo/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/deckarep","download_url":"https://codeload.github.com/deckarep/TornadoZeroMQ-WS-Demo/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244198395,"owners_count":20414443,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-10-13T13:48:08.974Z","updated_at":"2025-03-18T10:16:54.189Z","avatar_url":"https://github.com/deckarep.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"TornadoZeroMQ-WS-Demo\n=====================\n\nDemonstrates using Tornado Web Sockets with data published from a ZeroMQ process.\n\nThe intended goal is to implement a pub/sub system whereas a publisher exists in your system that will broadcast messages to a list\nof connected websocket clients.  The message could be anything such as a notification, or a lat/lon pair and as the messages are\ngenerated in real-time, a tornado based web socket server is acting as a subscriber listening for the messages.  It will then loop\nthrough the connected websocket clients and broadcast the message to each user.\n\nzmq_soccer_pub.py - this file represents the pub origin messages.  In this example, this is simply random data produced in a loop of soccer\nevents.  This script was originally provided by: Nicholas Piel (http://nichol.as/zeromq-an-introduction)\n\nbasic-websocket.py - this file is the tornado socket server.  It hooks into the pyzmq polling mechanism that is designed to work with tornado's own\nIO loop.  When data is received, it will loop through all websocket client connections and broadcast the zmq subscriber message along to all clients.\n\nbasic-websocket.html - this file is just the client's html file that is initially loaded in the browser.  This file doesn't do much except\nfor get the ws connection started.\n\nDependancies:\n* TornadoWeb - http://www.tornadoweb.org\n* pyzmq - https://github.com/zeromq/pyzmq\n* vanilla python 2.7+ - http://www.python.org\n\nAlso, this only works on browsers that support WebSockets.  Like a fairly new version of Chrome!\n\nWARNING: This example shows a working prototype. The code is bad and needs to be refactored and simplified.  I'm still working on it!!!\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdeckarep%2Ftornadozeromq-ws-demo","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdeckarep%2Ftornadozeromq-ws-demo","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdeckarep%2Ftornadozeromq-ws-demo/lists"}