Skip to content
XRPL Python Websocket Client
Python
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
docs
examples
xrpl_websocket
.gitignore
LICENSE
README.rst
docs-requirements.txt
requirements.txt
setup.py

README.rst

XRPL Websocket

Documentation Status

Websocket client for rippled with reconnecting feature, support both python 2 and 3

Installation

Via pip:

pip install xrpl_websocket

Examples

Short-lived connection

Simple example to send a payload and wait for response

import json

from xrpl_websocket import Client

if __name__ == "__main__":
    # create instance
    client = Client()

    # connect to the websocket
    client.connect(nowait=False)

    # send server info command
    resp = client.send(command='server_info')

    print("Server Info:")
    print(json.dumps(resp, indent = 4))

    # close the connection
    client.disconnect()

More advanced: Custom class

You can also write your own class for the connection, if you want to handle the nitty-gritty details yourself.

class Example(Client):
    def __init__(self):
        super(self.__class__, self).__init__(
            log_level=logging.ERROR,
            server="wss://rippled.xrptipbot.com"
        )

        # connect to the websocket
        self.connect()

    def on_transaction(self, data):
        print(json.dumps(data, indent = 4))

    def on_ledger(self,data):
        print('on_ledger')

    def on_open(self):
        print("Connection is open")

        print("Subscribe to ledger transactions")
        self.subscribe_transactions()


    def on_close(self):
        print("on_close")

    def subscribe_transactions(self):
        self.send({
            'command': 'subscribe',
            'streams': ['transactions']
        })
You can’t perform that action at this time.