Skip to main content

Python SDK for the jambonz open-source telephony platform

Project description

jambonz-sdk

Python SDK for the jambonz open-source telephony platform.

Installation

# Core package — webhook response builder + REST API client
pip install jambonz-sdk

# With WebSocket support
pip install jambonz-sdk[websocket]

Quick start

Webhook handler

from jambonz import WebhookResponse

def handle_call(data: dict) -> list:
    response = WebhookResponse()
    response.say("Hello from jambonz!")
    return response.build()

WebSocket app (requires jambonz-sdk[websocket])

from jambonz.websocket import JambonzWebSocketApp

app = JambonzWebSocketApp()

@app.on("/voice")
async def handle_session(session):
    await session.say("Welcome!")
    await session.hangup()

app.run(host="0.0.0.0", port=3000)

REST client

from jambonz.client import JambonzClient

client = JambonzClient(base_url="https://my-jambonz.example.com", api_key="...")
accounts = await client.accounts.list()

Features

  • Webhook response builder — fluent API for composing jambonz verb arrays
  • REST API client — async HTTP client wrapping every jambonz REST endpoint
  • WebSocket server — full-duplex call control with session management and routing
  • Audio streaming — bidirectional audio stream helpers
  • Pydantic models — fully typed request/response models
  • HMAC signature verification — validate inbound webhook authenticity

Development

git clone https://github.com/jambonz/jambonz-python-sdk.git
cd jambonz-python-sdk
pip install -e ".[dev]"
pytest

License

MIT

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

jambonz_sdk-0.1.0.tar.gz (94.2 kB view details)

Uploaded Source

Built Distribution

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

jambonz_sdk-0.1.0-py3-none-any.whl (33.5 kB view details)

Uploaded Python 3

File details

Details for the file jambonz_sdk-0.1.0.tar.gz.

File metadata

  • Download URL: jambonz_sdk-0.1.0.tar.gz
  • Upload date:
  • Size: 94.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.2 {"installer":{"name":"uv","version":"0.10.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for jambonz_sdk-0.1.0.tar.gz
Algorithm Hash digest
SHA256 a3823c8bfeaa2927f1cbc7e919fe1415bd7c2fa5669bb1bda9d888837de23369
MD5 7a74d3b35011bdff8853b3f34ac6fa69
BLAKE2b-256 798462f7b5d7b5a4b3a90987559f4d44da6fc5ad59995571480a14feaef15069

See more details on using hashes here.

File details

Details for the file jambonz_sdk-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: jambonz_sdk-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 33.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.2 {"installer":{"name":"uv","version":"0.10.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for jambonz_sdk-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 4fffc45ee68162254f866e3989d18c96be13d6371601258a2c20b88b478d18b1
MD5 79a24fbfadd7119cb0f9749d72de594a
BLAKE2b-256 06f6d07c6d7ce2462c3e3bd78839146344ca729584ff9e0593c8e01b1fd36e7a

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