Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/sesaquecruz/go-chat-broadcaster
A Rest API for a Chat Broadcaster Application.
https://github.com/sesaquecruz/go-chat-broadcaster
gin go rabbitmq redis rest-api sse
Last synced: about 1 month ago
JSON representation
A Rest API for a Chat Broadcaster Application.
- Host: GitHub
- URL: https://github.com/sesaquecruz/go-chat-broadcaster
- Owner: sesaquecruz
- License: mit
- Created: 2023-09-10T00:40:15.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2023-10-08T02:13:08.000Z (about 1 year ago)
- Last Synced: 2024-10-01T09:05:13.524Z (about 2 months ago)
- Topics: gin, go, rabbitmq, redis, rest-api, sse
- Language: Go
- Homepage:
- Size: 66.4 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Chat Broadcaster
The Chat Broadcaster is a specialized service designed to receive messages from various chat services via RabbitMQ, then broadcast these messages to users who have subscribed to specific chat rooms. This repository contains the code and configuration files for this service.
## Endpoints
| Endpoint | Method | Protected | Description |
|------------------------------| ------ |-----------|---------------------|
| `/api/v1/subscribe/{roomId}` | GET | YES | Subscribe to a room |
| `/api/v1/healthz` | GET | NO | Health check |## Related repositories
- [Chat API](https://github.com/sesaquecruz/go-chat-api)
- [Chat Infra](https://github.com/sesaquecruz/k8s-chat-infra)
- [Chat Broadcaster Docker Hub](https://hub.docker.com/r/sesaquecruz/go-chat-broadcaster/tags)## Tech Stack
- [Go](https://go.dev)
- [Gin](https://gin-gonic.com)
- [RabbitMQ](https://www.rabbitmq.com)
- [Redis](https://redis.io)## Contributing
Contributions are welcome! If you find a bug or would like to suggest an enhancement, please make a fork, create a new branch with the bugfix or feature, and submit a pull request.
## License
This project is licensed under the MIT License. See [LICENSE](./LICENSE) file for more information.