Skip to main content

Connect easily to a spacebro server

Project description

pySpacebroClient

🌟 Connect easily to a [spacebro server](https://github.com/spacebro/spacebro).

a port of nodejs spacebro-client

Why

No more custom socket.io server.

Easily connect with socket.io to other clients.

Spacebro offers an API to connect clients input and output together.

Installation

pip install pySpacebroClient

Usage

  1. Connect

from pySpacebroClient import SpacebroClient

settings = {
    'host': 'spacebro.space',
    'port': 3333,
    'client': {
        'name': 'python-bro'
    },
    'channelName': 'mychannelname'
}
spacebroClient = SpacebroClient(settings)
spacebroClient.wait()
  1. Emit a message for an app called node-bro

from pySpacebroClient import SpacebroClient

settings = {
    'host': 'spacebro.space',
    'port': 3333,
    'client': {
        'name': 'python-bro'
    },
    'channelName': 'mychannelname',
    'out': {
        'outMedia': {
            'eventName': 'outMedia',
            'description': 'Output media',
            'type': 'all'
        }
    },
    'connection': 'python-bro/outMedia => node-bro/inMedia'
}
spacebroClient = SpacebroClient(settings)
spacebroClient.emit(settings.out.outMedia.eventName, {'value': 5})
spacebroClient.wait()
  1. Receive a message from an app called chokibro

from pySpacebroClient import SpacebroClient

def on_inMedia(self, args):
    print('received', args)

settings = {
    'host': 'spacebro.space',
    'port': 3333,
    'client': {
        'name': 'python-bro'
    },
    'channelName': 'mychannelname',
    'in': {
        'inMedia': {
            'eventName': 'inMedia',
            'description': 'Input media',
            'type': 'all'
        }
    },
    'connection': 'chokibro/outMedia => python-bro/inMedia'
}
spacebroClient = SpacebroClient(settings)
spacebroClient.on(settings['in'].inMedia.eventName, self.on_inMedia)
spacebroClient.wait()

test command

python -m tests.test

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pySpacebroClient-0.0.3.tar.gz (4.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pySpacebroClient-0.0.3-py2-none-any.whl (4.7 kB view details)

Uploaded Python 2

File details

Details for the file pySpacebroClient-0.0.3.tar.gz.

File metadata

File hashes

Hashes for pySpacebroClient-0.0.3.tar.gz
Algorithm Hash digest
SHA256 50043a7100a590619cb2b45b4116060fae78cb9e1cb683437e8b73ff6dbf7197
MD5 6e9eb4c8976e776f6f9f1f56b3efdcf8
BLAKE2b-256 0bd8c5a025aa68e0e1f561c132ded699208ac1e2ac748d3385663664dc0b38e3

See more details on using hashes here.

File details

Details for the file pySpacebroClient-0.0.3-py2-none-any.whl.

File metadata

File hashes

Hashes for pySpacebroClient-0.0.3-py2-none-any.whl
Algorithm Hash digest
SHA256 2cc79a373973971be06ba652e784948fb44e05d1d83ef34fc7d2f4cad0f95cf3
MD5 88fe1e274a19c8e067011a0b88d322c5
BLAKE2b-256 9f3b9eab0c8d3b6c7d4a1297118cfc5fcd98fe94068d213db16f3ae2df2f1a36

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page