Typed async client for the Janus SIP plugin
Project description
janus-sip-plugin
An independently installable, fully typed async client for
janus.plugin.sip. It depends on janus-api-core and does not install any
other named Janus plugin.
from janus_api.models.base import Jsep
from janus_sip_plugin import SipPlugin
sip = SipPlugin(session=session)
await sip.attach()
await sip.register_account(
"sip:alice@example.com",
secret="password",
proxy="sip:registrar.example.com",
)
await sip.call(
"sip:bob@example.com",
Jsep(type="offer", sdp=offer_sdp),
)
Registration validates SIP/SIPS URIs, authentication choice, guest/helper
semantics, transport conflicts, and registration lifetime. A normal account
requires exactly one of secret and ha1_secret; authuser overrides the URI
username for digest authentication. Guest calls can provide credentials on the
call request. Helpers use the master account's returned master_id.
The client covers every documented SIP operation: registration, calls,
offerless-invite progress/accept flows, renegotiation, decline/hangup,
hold/unhold, MESSAGE, INFO/DTMF, subscriptions, blind/attended transfers,
recording, keyframes, and RTP forwarders. JSEP remains in the outer Janus
envelope and is never mixed into plugin data; update() automatically marks
its JSEP as a Janus renegotiation. RTP-forwarder helpers expose the optional
unique_id and configured admin_key controls from the current gateway.
Models follow the official SIP API and the current Janus implementation. Outbound objects reject unknown fields; inbound events retain future fields and unknown event variants.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file janus_sip_plugin-3.0.0.tar.gz.
File metadata
- Download URL: janus_sip_plugin-3.0.0.tar.gz
- Upload date:
- Size: 14.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
cf0a254e75cb639b53996e38ef11f5c3fcc9c6f548156dfda2189bbe41085a59
|
|
| MD5 |
f6ea6c7ff4f936607ae1c5bc3c50404b
|
|
| BLAKE2b-256 |
f1501ab37530405325e57eb6c2d064db82bbea40e21d785be1183a612817af5c
|
File details
Details for the file janus_sip_plugin-3.0.0-py3-none-any.whl.
File metadata
- Download URL: janus_sip_plugin-3.0.0-py3-none-any.whl
- Upload date:
- Size: 12.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
21835eb8f60d8a9637873266c71c59cbc9266343b74fcbbe8f9cfd3af12618f0
|
|
| MD5 |
84713a195f9602ef37f275fc9e34d39b
|
|
| BLAKE2b-256 |
f8465ce1c4bf409b8f50c7318494738c7997a644a08d553f3e81e575119f73b4
|