{"id":19973263,"url":"https://github.com/zeromq/zwssock","last_synced_at":"2025-05-04T02:31:52.487Z","repository":{"id":19929998,"uuid":"23196513","full_name":"zeromq/zwssock","owner":"zeromq","description":"ZeroMQ WebSocket library for CZMQ","archived":false,"fork":false,"pushed_at":"2018-04-20T18:00:29.000Z","size":55,"stargazers_count":86,"open_issues_count":6,"forks_count":35,"subscribers_count":17,"default_branch":"master","last_synced_at":"2024-05-08T23:17:03.455Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mpl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/zeromq.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2014-08-21T17:32:18.000Z","updated_at":"2024-02-28T15:49:48.000Z","dependencies_parsed_at":"2022-08-17T15:50:46.640Z","dependency_job_id":null,"html_url":"https://github.com/zeromq/zwssock","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/zeromq%2Fzwssock","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zeromq%2Fzwssock/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zeromq%2Fzwssock/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zeromq%2Fzwssock/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/zeromq","download_url":"https://codeload.github.com/zeromq/zwssock/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":224379916,"owners_count":17301525,"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-11-13T03:10:49.787Z","updated_at":"2024-11-13T03:10:50.692Z","avatar_url":"https://github.com/zeromq.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"ZWSSock - ZeroMQ over WebSocket library\n=======================================\n\nZWSSock implements [ZWS (ZeroMQ WebSocket)](http://rfc.zeromq.org/spec:39) for use in ZeroMQ applications. Additionally it supports [Compression Extensions for WebSocket](https://tools.ietf.org/html/draft-ietf-hybi-permessage-compression-28) for per message deflate.\n\nZWS and ZWSSock are both in early stage and the protocol is not yet finalized nor is this library.\nThe API of ZWSSock is very similar to the API of zsock of CZMQ v3.0, so using it should be very simple.\nWhile ZWSSock implements the server side of ZWS [JSMQ](https://github.com/zeromq/JSMQ) library implement ZWS on the browser side. \n[JSMQ](https://github.com/zeromq/JSMQ) is javascript library which implements the ZWS protocol and exposes ZeroMQ like API. More information is available via the [JSMQ](https://github.com/zeromq/JSMQ) repository.\n\nWith JSMQ and ZWSSock, javascript applications can talk directly to ZeroMQ applications without a webserver in the middle, however if you want to use SSL (e.g wss://someaddress) you will need a webserver or loadbalaner in the middle to terminate SSL because ZWSSock does not support SSL.\n\nPlease note that when using WebSocket it is recommended to do it over SSL because not all firewalls likes non-text protocols over port 80.\n\nZWSSock currently implements the router pattern. Publisher pattern is next to come (JSMQ implements subscriber and dealer).\n\nTo use the ZWSSock take a look at [main.c](https://github.com/somdoron/zwssock/blob/master/src/CZMQ-ZWSSock/main.c) file. \nThe project also includes [browser side example](https://github.com/somdoron/zwssock/blob/master/src/CZMQ-ZWSSock/Example.html).\n\nOn Linux please review src/CZMQ-ZWSSock/Makefile - CFLAGS and LIBS assume an installation of pkg-config. The code is tested with ØMQ=4.0.4 czmq=2.2.0. To build:\n\n    cd src/CZMQ-ZWSSock\n    make\n\nThis  creates the 'zwstest' program in the same directory. By default `zwstest` will listen on 127.0.0.1:8000.\nPass a different listen socket as single argument:\n\n     ./zwstest tcp://0.0.0.0:1234\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzeromq%2Fzwssock","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fzeromq%2Fzwssock","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzeromq%2Fzwssock/lists"}