ilp-plugin-bells

15.1.2 • Public • Published

ilp-plugin-bells npm circle codecov

ILP ledger plugin for five-bells-ledger

Usage

This plugin adheres to the Ledger Plugin Interface (LPI), which means it can be used in combination with other components, like the ilp module and the ilp-connector.

ILP-Plugin-Bells can also be created via a factory, which allows many instances to share a single websocket connection.

Note: this requires an admin account on a ledger. Otherwise the factory can't listen for events on all accounts.

const PluginBellsFactory = require('ilp-plugin-bells').Factory
 
// connects to the admin account and uses one websocket connection to subscribe
// to all transfers and messages on the ledger
 
const factory = new PluginBellsFactory({
  adminUsername: 'admin',
  adminPassword: 'admin',
  adminAccount: 'https://red.ilpdemo.org/ledger/accounts/admin' 
})
 
factory.connect().then(() => {
 
  // `create` will make a new, connected, PluginBells instance. If a plugin is already
  // created for a given username, then the existing plugin is returned from `create`
 
  return factory.create({ username: 'alice' })
  // { account: 'https://red.ilpdemo.org/ledger/accounts/alice' } is also valid
 
}).then((plugin) => {
 
  // this call is uneccesary and will do nothing, because the plugin is already
  // connected
  plugin.connect()
 
  // neither will this call; the plugin doesn't maintain its own connection,
  // so it can't disconnect itself
  plugin.disconnect()
 
  // ...
 
  // when you're done using the plugin, call factory.remove in order to
  // get rid of all event listeners and stop caching the plugin.
 
  factory.remove('alice')
})

Compatibility

ilp-plugin-bells version 12 uses five-bells-shared version 23, and is only compatible with five-bells-ledger version 20. As of version 12.0.1, it exposes version 2c9a2231 of the Ledger Plugin Interface

Package Sidebar

Install

npm i ilp-plugin-bells

Weekly Downloads

9

Version

15.1.2

License

Apache-2.0

Last publish

Collaborators

  • interledger