9.5 KiB
name: WsProvider
summary: The WebSocket Provider allows sending requests using WebSocket to a WebSocket RPC server TCP port.
description: Unlike the HttpProvider, it does support subscriptions and allows listening to events such as new blocks or balance changes.
example:
import Api from '@polkadot/api';
import WsProvider from '@polkadot/api-provider/ws';
const provider = new WsProvider('ws://127.0.0.1:9944');
const api = new Api(provider);
see: HttpProvider
Type parameters
EventTypes : string | symbol
Hierarchy
EventEmitter
↳ WsProvider
Implements
WSProviderInterface
Constructors
constructor
⊕ new WsProvider(endpoint: string, autoConnect?: boolean): WsProvider
Defined in ws/index.ts:73
Parameters:
| Param | Type | Default value | Description |
|---|---|---|---|
| endpoint | string |
- | The endpoint url. Usually `ws://ip:9944` or `wss://ip:9944` |
Default value autoConnect |
boolean |
true | Whether to connect automatically or not. |
Returns: WsProvider
Properties
<Static> prefixed
● prefixed: * string | boolean
*
Inherited from EventEmitter.prefixed
Defined in /home/travis/build/polkadot-js/api/node_modules/eventemitter3/index.d.ts:6
Methods
addListener
▸ addListener(event: EventTypes, fn: ListenerFn, context?: any): this
Inherited from EventEmitter.addListener
Defined in /home/travis/build/polkadot-js/api/node_modules/eventemitter3/index.d.ts:33
Parameters:
| Param | Type |
|---|---|
| event | EventTypes |
| fn | ListenerFn |
Optional context |
any |
Returns: this
connect
▸ connect(): void
Defined in ws/index.ts:104
summary: Manually connect
description: The WsProvider connects automatically by default, however if you decided otherwise, you may connect manually using this method.
Returns: void
emit
▸ emit(event: EventTypes, ...args: Array<any>): boolean
Inherited from EventEmitter.emit
Defined in /home/travis/build/polkadot-js/api/node_modules/eventemitter3/index.d.ts:27
Calls each of the listeners registered for a given event.
Parameters:
| Param | Type |
|---|---|
| event | EventTypes |
Rest args |
Array<any> |
Returns: boolean
eventNames
▸ eventNames(): Array<EventTypes>
Inherited from EventEmitter.eventNames
Defined in /home/travis/build/polkadot-js/api/node_modules/eventemitter3/index.d.ts:12
Return an array listing the events for which the emitter has registered listeners.
Returns: Array<EventTypes>
isConnected
▸ isConnected(): boolean
Defined in ws/index.ts:121
summary: Whether the node is connected or not.
Returns: boolean
true if connected
listenerCount
▸ listenerCount(event: EventTypes): number
Inherited from EventEmitter.listenerCount
Defined in /home/travis/build/polkadot-js/api/node_modules/eventemitter3/index.d.ts:22
Return the number of listeners listening to a given event.
Parameters:
| Param | Type |
|---|---|
| event | EventTypes |
Returns: number
listeners
▸ listeners(event: EventTypes): Array<ListenerFn>
Inherited from EventEmitter.listeners
Defined in /home/travis/build/polkadot-js/api/node_modules/eventemitter3/index.d.ts:17
Return the listeners registered for a given event.
Parameters:
| Param | Type |
|---|---|
| event | EventTypes |
Returns: Array<ListenerFn>
off
▸ off(event: EventTypes, fn?: ListenerFn, context?: any, once?: * undefined | false | true*): this
Inherited from EventEmitter.off
Defined in /home/travis/build/polkadot-js/api/node_modules/eventemitter3/index.d.ts:44
Parameters:
| Param | Type |
|---|---|
| event | EventTypes |
Optional fn |
ListenerFn |
Optional context |
any |
Optional once |
undefined | false | true |
Returns: this
on
▸ on(type: ProviderInterface$Emitted, sub: ProviderInterface$EmitCb): this
Overrides EventEmitter.on
Defined in ws/index.ts:131
summary: Listens on events after having subscribed using the subscribe function.
Parameters:
| Param | Type | Description |
|---|---|---|
| type | ProviderInterface$Emitted | Event |
| sub | ProviderInterface$EmitCb | Callback |
Returns: this
[description]
once
▸ once(event: EventTypes, fn: ListenerFn, context?: any): this
Inherited from EventEmitter.once
Defined in /home/travis/build/polkadot-js/api/node_modules/eventemitter3/index.d.ts:38
Add a one-time listener for a given event.
Parameters:
| Param | Type |
|---|---|
| event | EventTypes |
| fn | ListenerFn |
Optional context |
any |
Returns: this
removeAllListeners
▸ removeAllListeners(event?: EventTypes): this
Inherited from EventEmitter.removeAllListeners
Defined in /home/travis/build/polkadot-js/api/node_modules/eventemitter3/index.d.ts:49
Remove all listeners, or those of the specified event.
Parameters:
| Param | Type |
|---|---|
Optional event |
EventTypes |
Returns: this
removeListener
▸ removeListener(event: EventTypes, fn?: ListenerFn, context?: any, once?: * undefined | false | true*): this
Inherited from EventEmitter.removeListener
Defined in /home/travis/build/polkadot-js/api/node_modules/eventemitter3/index.d.ts:43
Remove the listeners of a given event.
Parameters:
| Param | Type |
|---|---|
| event | EventTypes |
Optional fn |
ListenerFn |
Optional context |
any |
Optional once |
undefined | false | true |
Returns: this
send
▸ send(method: string, params: Array<any>, subscription?: SubscriptionHandler): Promise<any>
Defined in ws/index.ts:138
summary: Send JSON data using WebSockets to configured HTTP Endpoint or queue.
Parameters:
| Param | Type |
|---|---|
| method | string |
| params | Array<any> |
Optional subscription |
SubscriptionHandler |
Returns: Promise<any>
subscribe
▸ subscribe(type: string, method: string, params: Array<any>, callback: ProviderInterface$Callback): Promise<number>
Defined in ws/index.ts:194
name: subscribe
summary: Allows subscribing to a specific event.
example:
const provider = new WsProvider('ws://127.0.0.1:9944');
const api = new Api(provider);
api.state.storage([[storage.balances.freeBalance, <Address>]], (_, values) => {
console.log(values)
}).then((subscriptionId) => {
console.log('balance changes subscription id: ', subscriptionId)
})
Parameters:
| Param | Type | Description |
|---|---|---|
| type | string |
Subscription type |
| method | string |
Subscription method |
| params | Array<any> |
Parameters |
| callback | ProviderInterface$Callback | Callback |
Returns: Promise<number>
Promise resolving to the dd of the subscription you can use with unsubscribe.
unsubscribe
▸ unsubscribe(type: string, method: string, id: number): Promise<boolean>
Defined in ws/index.ts:203
summary: Allows unsubscribing to subscriptions made with subscribe.
Parameters:
| Param | Type |
|---|---|
| type | string |
| method | string |
| id | number |
Returns: Promise<boolean>