Metadata-Version: 2.4
Name: videohub-python
Version: 1.2.4
Summary: Official VideoHub Python SDK for building video, audio, and screen sharing applications.
Author-email: Letscms <support@videohub.dev>
License: VideoHub Python SDK License
        
        Copyright (c) 2026 LETSCMS PVT LTD
        
        All rights reserved.
        
        Permission is granted, free of charge, to any person obtaining a copy of the VideoHub Python SDK software and associated documentation files (the "Software") to download, install, use, copy, and modify the Software solely for personal, educational, research, evaluation, development, testing, or internal business purposes.
        
        The Software and any modifications made to it may be used internally by the licensee but may not be distributed, published, or shared with third parties except as expressly permitted by this License.
        
        The following activities are prohibited without prior written permission from LETSCMS PVT LTD:
        
        * Publishing the Software or any modified version of the Software.
        * Redistributing the Software or any modified version of the Software in source code or binary form.
        * Selling, sublicensing, renting, leasing, hosting, reselling, or otherwise commercializing the Software as a standalone product.
        * Creating, marketing, or distributing a competing SDK, platform, service, or product based primarily on the Software.
        * Incorporating substantial portions of the Software into a commercial product intended for redistribution.
        * Removing, altering, or obscuring any copyright, trademark, attribution, or proprietary notices contained in the Software.
        * Using the trademarks, trade names, logos, branding, or other identifiers of LETSCMS PVT LTD or VideoHub without prior written permission.
        
        Ownership
        
        LETSCMS PVT LTD retains all rights, title, and interest in and to the VideoHub Python SDK, including all intellectual property rights, copyrights, trademarks, patents, trade secrets, source code, documentation, updates, enhancements, modifications, and future releases.
        
        No ownership rights are transferred under this License. This License grants only the limited rights expressly stated herein.
        
        Third-Party Components
        
        The Software may include or depend upon third-party libraries, packages, or components that are subject to their own respective licenses. Such third-party components remain governed by their applicable license terms and are not covered by this License except where expressly stated.
        
        Termination
        
        This License shall automatically terminate if the licensee fails to comply with any term or condition of this License. Upon termination, the licensee must immediately cease all use of the Software and destroy all copies in their possession or control.
        
        Disclaimer of Warranty
        
        THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, TITLE, NON-INFRINGEMENT, ACCURACY, RELIABILITY, OR PERFORMANCE.
        
        Limitation of Liability
        
        IN NO EVENT SHALL LETSCMS PVT LTD, ITS DIRECTORS, OFFICERS, EMPLOYEES, CONTRACTORS, CONTRIBUTORS, OR AFFILIATES BE LIABLE FOR ANY CLAIM, DAMAGES, LOSSES, OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT, NEGLIGENCE, STRICT LIABILITY, OR OTHERWISE, ARISING FROM, OUT OF, OR IN CONNECTION WITH THE SOFTWARE OR THE USE OF OR OTHER DEALINGS IN THE SOFTWARE.
        
        Contact
        
        For licensing inquiries, commercial licensing, redistribution rights, or permissions not expressly granted by this License, contact:
        
        LETSCMS PVT LTD
        Email: info@letscms.com
        Email: support@videohub.dev
        Website: https://www.videohub.dev
        Website: https://www.letscms.com
        
Project-URL: Homepage, https://videohub.dev
Project-URL: Documentation, https://docs.videohub.dev
Project-URL: Repository, https://github.com/letscms/videohub-python
Project-URL: Issues, https://github.com/letscms/videohub-python/issues
Keywords: videohub,video sdk,webrtc,video calling,audio rooms,screen sharing,pk battle,attachment
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Topic :: Software Development :: Libraries
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: Topic :: Internet
Requires-Python: >=3.9
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: httpx>=0.25
Dynamic: license-file

# VideoHub Python SDK

Official Python SDK for VideoHub – build video calls, audio rooms, and real-time communication applications with ease.

VideoHub enables developers to integrate video conferencing, audio rooms, real-time chat, AI chatbot integration, screen sharing, and real-time communication into their applications using simple APIs.

---

## Installation

Install from PyPI:

```bash
pip install videohub-python
```

---

## Requirements

* Python 3.9+
* Python 3.11+ (recommended)
* VideoHub API Key
* App credentials:

  * App ID
  * App Secret
  * App Platform (`web`, `android`, `ios`)
  * App Identifier (domain or package name)

---

## Quick Start

```python
from videohub.client import Client

videoHub = Client(
    api_key="vhub_live_xxxxxxxxx",
    app_id="your_app_id",
    app_secret="your_app_secret",
    app_platform="web",
    app_identifier="example.com"
)

# Create a room
videoHub.rooms.create(
    room_name="my-room",
    max_participants=5
)

# Generate a host token
token = videoHub.rooms.host_token("my-room")

print(token)
```

---

## Authentication

All API requests require the following credentials:

| Field          | Description                          |
| -------------- | ------------------------------------ |
| API Key        | Account authentication key           |
| App ID         | Unique application identifier        |
| App Secret     | Secret used for request verification |
| App Platform   | `web`, `android`, or `ios`           |
| App Identifier | Domain or package name               |

---

## Features

* Video calling
* Audio calling
* Screen sharing
* Room management
* Call management
* Admin APIs
* Secure authentication
* & more
---

## Examples

### Create Room

```python
room = videoHub.rooms.create(
    room_name="demo-room",
    max_participants=5
)

print(room)
```

---

### Generate Room Token

```python
token = videoHub.rooms.host_token("demo-room")

print(json.dumps({
    "token": token["token"],
    "rtc": videoHub.rtc
}, indent=4))
```

---

## Error Handling

The SDK raises structured exceptions for API errors:

```python
from videohub.exceptions import VideoHubError

try:
    client.rooms.create("room1")
except VideoHubError as e:
    print(e)
```


---

### Subscriber

```python
auth = videoHub.rooms.guest_token("demo-room", "app_id")

print(json.dumps({
    "token": auth["token"],
    "rtc": videoHub.rtc
}, indent=4))
```

---

## Project Structure

```
videohub/
├── client.py
├── config.py
├── constants.py
├── exceptions.py
├── http.py
│
├── services/
│   ├── auth.py
│   ├── rooms.py
│   ├── calls.py
│   └── admin.py
│
└── utils/
    └── validators.py
```

---

## Documentation

Full API documentation is available at:

https://docs.videohub.dev

---

## Contributing

Contributions are welcome.

1. Fork the repository
2. Create a feature branch (`git checkout -b feature-name`)
3. Commit your changes (`git commit -m "Add feature"`)
4. Push to the branch (`git push origin feature-name`)
5. Open a Pull Request

---

## Reporting Issues

If you encounter a bug or want to request a feature, please open an issue:

https://github.com/letscms/videohub-python/issues

---

## License

This project is licensed under the MIT License.
