# 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/03/c9/e5829bca17e4ecaa8a1cc41d2ae0869c107a4bb5814924c28265384c09e2/ultravox_client-0.0.6.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.6",
"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": "40c6751f08a1f55443682a84a241184b161817e8f9cff2c9ff74d4f675faad61",
"md5": "83de3690996dbee57e4b817cdc646424",
"sha256": "d0d0b63e0cca9a97368b3602bfc434d7d366bf1be5af7c31e8edb78c4426d777"
},
"downloads": -1,
"filename": "ultravox_client-0.0.6-py3-none-any.whl",
"has_sig": false,
"md5_digest": "83de3690996dbee57e4b817cdc646424",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": "<4.0,>=3.11",
"size": 11798,
"upload_time": "2024-10-10T16:39:47",
"upload_time_iso_8601": "2024-10-10T16:39:47.318056Z",
"url": "https://files.pythonhosted.org/packages/40/c6/751f08a1f55443682a84a241184b161817e8f9cff2c9ff74d4f675faad61/ultravox_client-0.0.6-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "03c9e5829bca17e4ecaa8a1cc41d2ae0869c107a4bb5814924c28265384c09e2",
"md5": "c8941431e247b199265076869c3c569e",
"sha256": "543651fff125c915943fafd93b440776a3815d84b958aa2883c89784f49e32b8"
},
"downloads": -1,
"filename": "ultravox_client-0.0.6.tar.gz",
"has_sig": false,
"md5_digest": "c8941431e247b199265076869c3c569e",
"packagetype": "sdist",
"python_version": "source",
"requires_python": "<4.0,>=3.11",
"size": 9913,
"upload_time": "2024-10-10T16:39:48",
"upload_time_iso_8601": "2024-10-10T16:39:48.299779Z",
"url": "https://files.pythonhosted.org/packages/03/c9/e5829bca17e4ecaa8a1cc41d2ae0869c107a4bb5814924c28265384c09e2/ultravox_client-0.0.6.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-10-10 16:39:48",
"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"
}