docs: add summary of musiclink integration for team

This commit is contained in:
Dan 2026-01-20 15:02:54 -08:00
parent d345bc6cb8
commit 490b32c9ae

View file

@ -0,0 +1,25 @@
# MusicLink Deployment Summary
We have successfully integrated the `MusicLink` bot into the `ops-jrz1` production environment.
## Architecture
We deployed `MusicLink` using a **Matrix-mediated** architecture to bypass Matterbridge's lack of support for Slack Socket Mode (which our App configuration requires).
**Flow:**
`Slack User` -> `#music` -> `mautrix-slack` -> `Matrix Room` -> `Matterbridge` -> `MusicLink`
## Integration Details
1. **No Code Changes:** We used the `musiclink` repository as-is (via Nix Flake input). All deployment logic resides in our infrastructure repo (`ops-jrz1`).
2. **Service Isolation:** The bot runs as a systemd service (`musiclink.service`) with `DynamicUser` and restricted permissions.
3. **Connectivity:**
- We run a bundled `Matterbridge` instance (`musiclink-matterbridge.service`) configured to connect to our Matrix homeserver.
- `MusicLink` connects to this local Matterbridge via WebSocket (`ws://127.0.0.1:4242`).
- We granted the bot's Matrix user (`@musiclink:clarun.xyz`) server admin privileges to allow it to join the invite-only portal rooms bridging Slack.
## Status
- **Active:** The bot is running and monitoring the bot testing room (`!whU7Geg7JPrBL5wHcW:clarun.xyz`).
- **Verified:** We confirmed bidirectional communication by having the bot post a test message (GIF) to the room.
- **Next Steps:** We will enable it for the main `#music` channel once we confirm link conversion logic in the testing room.