# Ultravox client SDK for Python
Python client SDK for [Ultravox](https://ultravox.ai).
[![pypi-v](https://img.shields.io/pypi/v/ultravox-client.svg?label=ultravox-client&color=orange)](https://pypi.org/project/ultravox-client/)
## Getting started
```bash
pip install ultravox-client
```
## Usage
```python
import asyncio
import signal
import ultravox_client as uv
session = uv.UltravoxSession()
done = asyncio.Event()
@session.on("status")
def on_status():
if session.status == uv.UltravoxSessionStatus.DISCONNECTED:
done.set()
await session.join_call(os.getenv("JOIN_URL", None))
loop = asyncio.get_running_loop()
loop.add_signal_handler(signal.SIGINT, lambda: done.set())
loop.add_signal_handler(signal.SIGTERM, lambda: done.set())
await done.wait()
await session.leave_call()
```
See the included example app for a more complete example. To get a `joinUrl`, you'll want to integrate your server with the [Ultravox REST API](https://fixie-ai.github.io/ultradox/).
Raw data
{
"_id": null,
"home_page": "https://ultravox.ai",
"name": "ultravox-client",
"maintainer": null,
"docs_url": null,
"requires_python": "<4.0,>=3.11",
"maintainer_email": null,
"keywords": "ultravox, audio, realtime, artificial intelligence",
"author": "Fixie Team",
"author_email": "hello@fixie.ai",
"download_url": "https://files.pythonhosted.org/packages/19/77/f057bf1877a4ea62fccd4d4f3ff3f22df0cfbd3a5057678400bd92a4f15e/ultravox_client-0.0.8.tar.gz",
"platform": null,
"description": "# Ultravox client SDK for Python\nPython client SDK for [Ultravox](https://ultravox.ai).\n\n[![pypi-v](https://img.shields.io/pypi/v/ultravox-client.svg?label=ultravox-client&color=orange)](https://pypi.org/project/ultravox-client/)\n\n## Getting started\n\n```bash\npip install ultravox-client\n```\n\n## Usage\n\n```python\nimport asyncio\nimport signal\n\nimport ultravox_client as uv\n\nsession = uv.UltravoxSession()\ndone = asyncio.Event()\n\n@session.on(\"status\")\ndef on_status():\n if session.status == uv.UltravoxSessionStatus.DISCONNECTED:\n done.set()\n\nawait session.join_call(os.getenv(\"JOIN_URL\", None))\nloop = asyncio.get_running_loop()\nloop.add_signal_handler(signal.SIGINT, lambda: done.set())\nloop.add_signal_handler(signal.SIGTERM, lambda: done.set())\nawait done.wait()\nawait session.leave_call()\n```\n\nSee the included example app for a more complete example. To get a `joinUrl`, you'll want to integrate your server with the [Ultravox REST API](https://fixie-ai.github.io/ultradox/).\n",
"bugtrack_url": null,
"license": "Apache-2.0",
"summary": "Python client SDK for Ultravox.",
"version": "0.0.8",
"project_urls": {
"Documentation": "https://fixie-ai.github.io/ultradox/",
"Homepage": "https://ultravox.ai",
"Repository": "https://github.com/fixie-ai/ultravox-client-sdk-python"
},
"split_keywords": [
"ultravox",
" audio",
" realtime",
" artificial intelligence"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "c4f19ce73e8e06a2c95457836d313e9934902d56c10c230b60964a231291ef38",
"md5": "fb4e88152ade0da3a7952ba252638c5b",
"sha256": "ce5340b6b8e4e87197fe8cdeb4866c7bf81b1a4629313d6792385ac0445870ef"
},
"downloads": -1,
"filename": "ultravox_client-0.0.8-py3-none-any.whl",
"has_sig": false,
"md5_digest": "fb4e88152ade0da3a7952ba252638c5b",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": "<4.0,>=3.11",
"size": 12248,
"upload_time": "2024-12-13T19:36:02",
"upload_time_iso_8601": "2024-12-13T19:36:02.805236Z",
"url": "https://files.pythonhosted.org/packages/c4/f1/9ce73e8e06a2c95457836d313e9934902d56c10c230b60964a231291ef38/ultravox_client-0.0.8-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "1977f057bf1877a4ea62fccd4d4f3ff3f22df0cfbd3a5057678400bd92a4f15e",
"md5": "73fc986d1aee05e410db266bd161c25a",
"sha256": "3709f78bbc553738f5f34accef6d94e3b6de208c16738f8757646c9afa904a91"
},
"downloads": -1,
"filename": "ultravox_client-0.0.8.tar.gz",
"has_sig": false,
"md5_digest": "73fc986d1aee05e410db266bd161c25a",
"packagetype": "sdist",
"python_version": "source",
"requires_python": "<4.0,>=3.11",
"size": 10368,
"upload_time": "2024-12-13T19:36:03",
"upload_time_iso_8601": "2024-12-13T19:36:03.947450Z",
"url": "https://files.pythonhosted.org/packages/19/77/f057bf1877a4ea62fccd4d4f3ff3f22df0cfbd3a5057678400bd92a4f15e/ultravox_client-0.0.8.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-12-13 19:36:03",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "fixie-ai",
"github_project": "ultravox-client-sdk-python",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "ultravox-client"
}