{"id":25915874,"url":"https://github.com/rykov/em-websocket-request","last_synced_at":"2025-06-30T11:04:55.852Z","repository":{"id":1740755,"uuid":"2566290","full_name":"rykov/em-websocket-request","owner":"rykov","description":"EventMachine WebSocket client","archived":false,"fork":false,"pushed_at":"2013-03-15T06:56:50.000Z","size":120,"stargazers_count":2,"open_issues_count":1,"forks_count":0,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-03-03T12:18:02.128Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Ruby","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/rykov.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":"2011-10-12T23:57:51.000Z","updated_at":"2013-10-24T20:03:22.000Z","dependencies_parsed_at":"2022-08-06T11:01:00.131Z","dependency_job_id":null,"html_url":"https://github.com/rykov/em-websocket-request","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/rykov/em-websocket-request","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rykov%2Fem-websocket-request","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rykov%2Fem-websocket-request/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rykov%2Fem-websocket-request/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rykov%2Fem-websocket-request/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rykov","download_url":"https://codeload.github.com/rykov/em-websocket-request/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rykov%2Fem-websocket-request/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":262762459,"owners_count":23360329,"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":"2025-03-03T12:18:03.992Z","updated_at":"2025-06-30T11:04:55.777Z","avatar_url":"https://github.com/rykov.png","language":"Ruby","funding_links":[],"categories":[],"sub_categories":[],"readme":"# EventMachine Websocket Client\n\n[![Gem Version](https://badge.fury.io/rb/em-websocket-request.png)](http://badge.fury.io/rb/em-websocket-request)\n[![Build Status](https://travis-ci.org/rykov/em-websocket-request.png?branch=master)](https://travis-ci.org/rykov/em-websocket-request)\n\nThis gem implements a WebSocket client inside EventMachine building \non top of `em-http-request` and [web-socket-ruby](https://github.com/gimite/web-socket-ruby).\nSupports all the features of em-http-request including SSL, and \ntimeout reconnect.\n\n### Installation:\n\n    gem install em-websocket-request\n\n### Usage:\n\n```ruby\nrequire 'em-websocket-request'\n\nrequest = EventMachine::WebsocketRequest.new(\n  'wss://ws-1.fury.io',\n  :inactivity_timeout =\u003e 30\n).get\n\nrequest.errback { |*args|\n  puts \"[websocket] problem connecting (will retry)\"\n  request.close\n}\n\nrequest.callback {\n  puts \"[websocket] Successfully connected\"\n  http.send(\"Hello there!\")\n}\n\nrequest.disconnect {\n  puts \"[websocket] disconnected\"\n}\n\nrequest.stream { |chunk, type|\n  response = process_data(chunk, type)\n  http.send(response)\n}\n```","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frykov%2Fem-websocket-request","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frykov%2Fem-websocket-request","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frykov%2Fem-websocket-request/lists"}