amigniter / mod_audio_stream

FreeSWITCH module to stream audio to websocket and receive response
MIT License
50 stars 26 forks source link

New WebSocket Server for mod_audio_stream: WAVStream #32

Open ynigun opened 1 week ago

ynigun commented 1 week ago

I've developed a new WebSocket server called WAVStream that works with mod_audio_stream. It's written in Go and designed to simplify the process of recording calls and automatically uploading them to S3-compatible storage. You can find the project here: https://github.com/ynigun/wavstream

Key Features:

Usage:

To start a recording:

uuid_audio_stream <UUID> start ws://<SERVER_IP>:8080/ws mixed 8k rec_name_uuid.wav

To stop and upload:

uuid_audio_stream <UUID> stop

To change the recording file:

uuid_audio_stream <UUID> send_text rec_name_uuid_B.wav

When changing the filename mid-call, WAVStream will create two separate files. The first file will be closed, uploaded to S3, and a new file with the new name will be started. This allows for segmenting long calls into multiple files or changing file naming conventions mid-call if needed.

Development Status:

Please note that WAVStream is still in development. There are several areas that need further work and customization:

  1. Temporary File Location: Currently, the location for temporary files is not configurable. This needs to be added as an option.

  2. S3 Upload Options: The current version sets all uploaded files to be public. We need to add more flexible options for S3 uploads, including privacy settings.

  3. Additional Configurations: We're working on adding more configuration options to make the server more versatile for different use cases.

Contributions and feedback are welcome! If you try it out or have any suggestions, please let me know by opening an issue or submitting a pull request on the WAVStream GitHub repository.

This server aims to enhance the functionality of mod_audio_stream and simplify the process of handling recordings. I hope it proves useful to the community!

amigniter commented 1 week ago

Beautiful! Really interesting project, a star came straight away!! I'll leave this info here for the community to visit, try and use. Thanks for the project.