semvec/pypi-packages huggingface dataset:
kaushaltools 0.0.2
Making Simple to use tools with easy commands
Keywords: python,tools,qrcode,encryption,data encrypt,show qr code


# kaushaltools

* Version: **0.0.2**
* pypl: [kaushaltools](https://pypi.org/project/kaushaltools)
* Author: Kaushal Bhatol
* Email: [kaushal@bhatol.com](mailto:kaushal@bhatol.com)
* github: @KaushalBhatol

## Installation

```bash
pip install kaushaltools
```

## Modules

* **Encrypto:** For encrypting & decrypting text and dictionary.
* **QRCodeManager:** For Genrating Qr code, Saving as picture and reading qr codes.
* **totp**: Reading totp, genrating totp qr code, reading totp qr code and fetching key.

## Documents

Name                                        | Module
--------------------------------------------|---------
Time-Based One-Time Password (totp)         | [totp](https://github.com/KaushalBhatol/kaushaltools/documents/totp.md)
Managing QR code                            | [qrmanager](https://github.com/KaushalBhatol/kaushaltools/documents/qrmanager.md)
Encrypting and decrypting text or dict      | [encrypto](https://github.com/KaushalBhatol/kaushaltools/documents/encrypto.md)

## Recent Patches

* Patched Encrypto to return string file insted of bites.
media-jk 0.3.7
Media_jk is a Wrapper of Mediainfo

### A Simple Wrapper tool for mediainfo

### Prerequisites
'''
This tool needs mediainfo to be installed to work properly
'''
On Ubuntu/Debian : 
'''
Sudo apt install media_jk
'''
OR
'''
apt install media_jk
'''
On Mac :
'''
brew install media_jk
'''
### Usage : 
'''
To get all avaible information about the video, Audio and Image file. It works will all media type
'''
media_jk --file=<Enter the file name> --type=<General,Audio,Video> --list-Keys
'''
### If it is a Video file :
'''
--type=<General,Audio,Video>
'''
### If it is a Audio file :
'''
--type=<General,Audio>
'''
### If it is a Image file :
'''
--type=<General>
'''
To get a particular key about the file
'''
media_jk --file=<Enter the file name> --type=<General,Audio,Video> --keys="list name"
'''
fastapi-pubsub 0.2.0
A simple but yet elegant publish/subscribe socket implementation using FastAPI Websocket.
Requires Python: >=3.8

# FastAPI Pub/Sub

A simple but yet elegant publish/subscribe socket implementation using FastAPI Websocket.

## Installation

```
pip install fastapi-pubsub
```

## How it works

FastAPI provides an awesome implementation of Websockets. But it can be painful to configure it to work as a publish/subscribe mechanism.

FastAPI Pub/Sub implemented a `BasePubSubWebSocket` that handles all client's connections under the hood. All you have to do is extend this class, overriding the method `generate_object_to_send(self)` with your desired logic.

```python
from fastapi_pubsub import BasePubSubWebSocket

class SimplePubSubWebsocket(BasePubSubWebSocket):
    async def generate_object_to_send(self):
        # any logic that you want to implement to send to connected users
        connections = self.connection_manager.get(self.websocket_id)
        return {"num_connected_clients": len(connections)}
```

```python
app = FastAPI()

@app.websocket("/ws/connected_clients")
async def online_players_endpoint(websocket: WebSocket):
    ssw = SimplePubSubWebsocket(websocket, 'connected_clients')
    await ssw.run()
```

### BasePubSubWebSocket constructor parameters

|   Parameter   |   Mandatory   |   Default |   Description |
|:-------------|:-------------|:---------|:-------------|
|   websocket   |   yes         |   -       |   the fastapi websocket instance
|   channel_id  |   yes         |   -       | a custom unique id that identifies that operation. used by connection manager to group clients connected in the same channel
|   redis_credentials   |   no  |   None. if not passed, uses the [dict in-memory](https://github.com/6ixOnline/fastapi-pubsub/blob/main/fastapi_pubsub/connection_manager.py#L20) implementation    | redis host, port, username, password and db configuration  

---

A minimum example of a server/client communication can be seen [here.](https://github.com/dhiogocorrea/fastapi-pubsub/tree/main/examples) Follow the instructions to see it working.

## Contributing

Despite being full functional, this project is in a very early stage. **Pull requests are very welcome!**