Registry / http-networking / socket-rpc

socket-rpc

JSON →
library1.0.3jsnpmunverified

A simple RPC framework for Node.js using socket.io that follows a server-slave model. Version 1.0.3 is the latest stable release. It allows the server to call functions registered on slave clients via WebSocket. Key differentiators: lightweight, minimal API, built on socket.io. Note: The library is somewhat outdated and relies on socket.io v1.x, which may have compatibility issues with newer versions.

npm install socket-rpc
INSTALL
IMPORT
SIG · SOCKET-RPC
S
socket-rpc
http-networkingjavascriptv1.0.3
harness data pending
Install & Compatibility
Where this runs

No compatibility data collected yet for this library.

Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

RPCServer
import { RPCServer } from 'socket-rpc'
const RPCServer = require('socket-rpc');
Named export from package; default export is not available.
RPCSlave
import { RPCSlave } from 'socket-rpc'
const RPCSlave = require('socket-rpc').RPCSlave;
Named export; wrong pattern uses default require which yields an object.
socket-rpc
import { RPCServer } from 'socket-rpc'
import socketRpc from 'socket-rpc';
Library exposes only named exports, no default export.

Demonstrates creating a server and slave, registering a function on slave, and calling it from the server.

import http from 'http'; import { RPCServer } from 'socket-rpc'; import { RPCSlave } from 'socket-rpc'; // Server const server = http.createServer(); const rpc = RPCServer(server); rpc.getServer(); // returns socket.io server instance // Slave (client) const slave = RPCSlave({ url: 'http://localhost:8000', id: 0, name: 'example' }); slave.register('greet', name => `Hello, ${name}`); // Then server can call: rpc.run('0', 'greet', 'World').then(msg => console.log(msg)); server.listen(8000);
Debug
Known issues
gotchaRequires socket.io v1.x compatibility; socket.io v2+ may break.
fix
Pin socket.io to version 1.x in package.json.
affects: >=1.0.0
breakingNo error handling for run() calls; rejected promises will cause unhandled rejections.
fix
Add .catch() to run() promises or handle errors on the slave side.
affects: >=1.0.0
deprecatedThe library has not been updated since 2018; consider using a modern alternative like uWebSockets.js or raw socket.io RPC.
fix
Evaluate if active development is needed; fork or migrate.
affects: >=1.0.0
Errors
Common errors & fixes
Cannot find module 'socket-rpc'
Package not installed
fix
npm install socket-rpc --save
TypeError: rpc.run(...).then is not a function
run() returns undefined if slave not connected or not registered
fix
Ensure slave is connected and registered before server calls run().
Error: listen EADDRINUSE :::8000
Port already in use
fix
Use a different port or kill existing process.
Upgrade
Version history
1.0.3latest on npm
Audit
Dependencies
socket.iorequiredWebSocket transport for RPC communication
Agent activity
10 hits · last 30 days
node
8
OpenAI (training)
2
Resources
socket-rpc — npm install socket-rpc · libregistry