Wrapper of ROSLIB.Ros which automatically reconnects
- 🔄 Automatic reconnection to rosbridge websocket
- 📘 Full TypeScript support with type definitions
- 🎯 Modern ES2022+ module
- 🔔 Event-based status updates
- ⚡ Zero configuration required
npm install auto-rosimport AutoRos from 'auto-ros'
const autoRos = new AutoRos()
autoRos.connect()import AutoRos, { type ConnectionStatus } from 'auto-ros'
const autoRos = new AutoRos({
reconnectTimeOut: 5000,
rosOptions: {
// transportFactory can be provided if you need a custom transport
}
})
autoRos.on('status', (status: ConnectionStatus) => {
console.log('Connection status:', status)
})
autoRos.connect('ws://localhost:9090')new AutoRos(options?: AutoRosOptions)reconnectTimeOut(number, optional): Reconnect timeout in milliseconds. Default:5000rosOptions(object, optional): Options passed to the Ros constructortransportFactory(ITransportFactory, optional): The factory to use to create a transport. Defaults to a WebSocket transport factory.
Connect to rosbridge. If no URL is provided, uses the previous URL or a default based on hostname.
The underlying Ros instance from roslib.
Current connection status. Can be: 'connecting', 'connected', 'closed', or 'error'.
The class extends EventEmitter, so you can listen to events:
'status': Emitted when connection status changes
# Install dependencies
npm install
# Build
npm run build
# Run tests
npm test
# Lint
npm run lintSee the repository license file.