Skip to main content

redis pubsub websocket proxy

Project description

socker runs as a single-process service, using asyncio for non-blocking I/O.

socker uses a single redis pubsub channel, and has its own channel subscription logic, this means that you may share redis database with other applications.

socker runs as a single-process service. socker opens up a websocket server port and establishes a redis connection. The redis connection creates a subscription on the socker channel.

Installation

pip install socker

Usage

$ socker -h
Start the socker websocket server

Usage:
  socker [options]
  socker -? | --help
  socker --version

Options:
  -i INTERFACE    Listening interface [default: localhost]
  -p PORT         Listening port [default: 8765]

  -v              Enable verbose output

  --redis-host=HOST             Redis host [default: localhost]
  --redis-port=PORT             Redis port [default: 6379]
  --redis-db=DB                 Redis database [default: 0]
  --redis-password=PASSWORD     Redis password

  --logto FILE    Log output to FILE instead of console

  --version       show version
  -? --help       Show this screen

To publish a message to socker from another application:

from socker import Message


channel = 'foo.bar.42'
data = {
    'yes': [
        'yes',
        'no',
        'baz'
    ]
}

redis_client.publish('socker', Message(channel, data))

Any websocket clients subscribed to

  • foo.*

  • foo.bar.*

  • foo.bar.42

will receive that message.

Thanks

Thanks to

for their brilliant asyncio packages.

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

socker-2.0b3.tar.gz (10.0 kB view details)

Uploaded Source

Built Distribution

socker-2.0b3-py3-none-any.whl (13.8 kB view details)

Uploaded Python 3

File details

Details for the file socker-2.0b3.tar.gz.

File metadata

  • Download URL: socker-2.0b3.tar.gz
  • Upload date:
  • Size: 10.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for socker-2.0b3.tar.gz
Algorithm Hash digest
SHA256 2179fbb91b4ba572a1580d418494bcfd4c4d45c34a3b81230a1bcdcd20bbd1a5
MD5 3124a49ab0f4b2ab7966986d073c31cb
BLAKE2b-256 fa9bb0b3566ca2a3c90b6e99c09af37826ecb94e92152ce7f7eff0c915b8a7b9

See more details on using hashes here.

File details

Details for the file socker-2.0b3-py3-none-any.whl.

File metadata

File hashes

Hashes for socker-2.0b3-py3-none-any.whl
Algorithm Hash digest
SHA256 ef201dccc7d0e30dde9cba657c7053e144cfa687df7a360c9bc87c13e0801bb8
MD5 caa15f9c4e975b5cd83799065d333ed3
BLAKE2b-256 282fa7638d1acc65346290afdbeb0b4417ebb4c81f6c60c69552f5ad31ff0f4f

See more details on using hashes here.

Supported by

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