diff --git a/.env.example b/.env.example index 4ab558b..045c37d 100644 --- a/.env.example +++ b/.env.example @@ -33,8 +33,8 @@ CACHE_TTL=30s PREFERRED_DEVICES="Living Room@192.168.1.100:8090;Kitchen@192.168.1.101;192.168.1.102:8091" # Real example based on your devices: -# PREFERRED_DEVICES="Sound Machinechen@192.168.1.35;My SoundTouch Device@192.168.1.100" +# PREFERRED_DEVICES="Sound Machinechen@192.168.178.35;A Sound Machine@192.168.178.28" # Alternative format examples: -# PREFERRED_DEVICES="192.168.1.35;192.168.1.100" -# PREFERRED_DEVICES="SoundTouch 10@192.168.1.35;SoundTouch 20@192.168.1.100" +# PREFERRED_DEVICES="192.168.178.35;192.168.178.28" +# PREFERRED_DEVICES="SoundTouch 10@192.168.178.35;SoundTouch 20@192.168.178.28" diff --git a/.github/ISSUE_TEMPLATE/bug_report.yml b/.github/ISSUE_TEMPLATE/bug_report.yml index 772743e..ac71626 100644 --- a/.github/ISSUE_TEMPLATE/bug_report.yml +++ b/.github/ISSUE_TEMPLATE/bug_report.yml @@ -104,7 +104,7 @@ body: import ( "fmt" - "github.com/user_account/bose-soundtouch/pkg/client" + "github.com/gesellix/bose-soundtouch/pkg/client" ) func main() { @@ -121,7 +121,7 @@ body: render: shell placeholder: | Error: connection refused - at github.com/user_account/bose-soundtouch/pkg/client.(*Client).makeRequest + at github.com/gesellix/bose-soundtouch/pkg/client.(*Client).makeRequest ... validations: required: false diff --git a/.github/dependabot.yml b/.github/dependabot.yml index b67b79c..cf237a0 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -13,9 +13,9 @@ updates: timezone: "UTC" open-pull-requests-limit: 5 reviewers: - - "user_account" + - "gesellix" assignees: - - "user_account" + - "gesellix" commit-message: prefix: "deps" include: "scope" @@ -48,9 +48,9 @@ updates: timezone: "UTC" open-pull-requests-limit: 3 reviewers: - - "user_account" + - "gesellix" assignees: - - "user_account" + - "gesellix" commit-message: prefix: "ci" include: "scope" diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index cf42b84..3ed1c93 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -191,10 +191,10 @@ jobs: import ( "fmt" - "github.com/user_account/bose-soundtouch/pkg/client" - "github.com/user_account/bose-soundtouch/pkg/models" - "github.com/user_account/bose-soundtouch/pkg/discovery" - "github.com/user_account/bose-soundtouch/pkg/config" + "github.com/gesellix/bose-soundtouch/pkg/client" + "github.com/gesellix/bose-soundtouch/pkg/models" + "github.com/gesellix/bose-soundtouch/pkg/discovery" + "github.com/gesellix/bose-soundtouch/pkg/config" ) func main() { diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 0765e35..01e6f8b 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -255,7 +255,7 @@ jobs: ## 🚀 Quick Start \`\`\`bash - go get github.com/user_account/bose-soundtouch@$TAG_NAME + go get github.com/gesellix/bose-soundtouch@$TAG_NAME \`\`\` \`\`\`go @@ -265,7 +265,7 @@ jobs: "fmt" "log" - "github.com/user_account/bose-soundtouch/pkg/client" + "github.com/gesellix/bose-soundtouch/pkg/client" ) func main() { diff --git a/README.md b/README.md index ee9c69c..1336d7c 100644 --- a/README.md +++ b/README.md @@ -2,6 +2,8 @@ A modern Go library and CLI tool for interacting with Bose SoundTouch devices via their Web API. +> **Note**: This implementation is based on the [official Bose SoundTouch Web API documentation](https://assets.bosecreative.com/m/496577402d128874/original/SoundTouch-Web-API.pdf) provided by Bose Corporation at their [SoundTouch End-of-Life page](https://www.bose.de/de_de/landing_pages/soundtouch-eol.html). This is an independent project and is not affiliated with or endorsed by Bose Corporation. + ## Features ### ✅ Implemented (90% Complete - 18/20 endpoints) @@ -66,12 +68,12 @@ go run ./cmd/websocket-demo -host 192.168.1.10 -filter nowPlaying,volume -verbos ### Using Go ```bash -go install github.com/user_account/bose-soundtouch/cmd/soundtouch-cli@latest +go install github.com/gesellix/bose-soundtouch/cmd/soundtouch-cli@latest ``` ### From Source ```bash -git clone https://github.com/user_account/bose-soundtouch.git +git clone https://github.com/gesellix/bose-soundtouch.git cd bose-soundtouch make build ``` @@ -362,7 +364,7 @@ import ( "fmt" "log" - "github.com/user_account/bose-soundtouch/pkg/client" + "github.com/gesellix/bose-soundtouch/pkg/client" ) func main() { @@ -423,8 +425,8 @@ import ( "os/signal" "syscall" - "github.com/user_account/bose-soundtouch/pkg/client" - "github.com/user_account/bose-soundtouch/pkg/models" + "github.com/gesellix/bose-soundtouch/pkg/client" + "github.com/gesellix/bose-soundtouch/pkg/models" ) func main() { @@ -507,8 +509,8 @@ import ( "log" "time" - "github.com/user_account/bose-soundtouch/pkg/client" - "github.com/user_account/bose-soundtouch/pkg/models" + "github.com/gesellix/bose-soundtouch/pkg/client" + "github.com/gesellix/bose-soundtouch/pkg/models" ) // Custom logger for WebSocket events @@ -561,10 +563,10 @@ import ( "log" "time" - "github.com/user_account/bose-soundtouch/pkg/client" - "github.com/user_account/bose-soundtouch/pkg/config" - "github.com/user_account/bose-soundtouch/pkg/discovery" - "github.com/user_account/bose-soundtouch/pkg/models" + "github.com/gesellix/bose-soundtouch/pkg/client" + "github.com/gesellix/bose-soundtouch/pkg/config" + "github.com/gesellix/bose-soundtouch/pkg/discovery" + "github.com/gesellix/bose-soundtouch/pkg/models" ) func main() { @@ -732,8 +734,8 @@ import ( "log" "time" - "github.com/user_account/bose-soundtouch/pkg/client" - "github.com/user_account/bose-soundtouch/pkg/discovery" + "github.com/gesellix/bose-soundtouch/pkg/client" + "github.com/gesellix/bose-soundtouch/pkg/discovery" ) func main() { @@ -1033,6 +1035,12 @@ This project is licensed under the MIT License - see the LICENSE file for detail ## References -- [Official Bose SoundTouch Web API Documentation](docs/2025.12.18%20SoundTouch%20Web%20API.pdf) +This project is based on the official Bose SoundTouch Web API documentation provided by Bose Corporation: + +- **API Documentation Source**: [SoundTouch Web API PDF](https://assets.bosecreative.com/m/496577402d128874/original/SoundTouch-Web-API.pdf) +- **Official Bose Page**: [SoundTouch End-of-Life Information](https://www.bose.de/de_de/landing_pages/soundtouch-eol.html) +- [Local Copy of API Documentation](docs/2025.12.18%20SoundTouch%20Web%20API.pdf) - [Project Development Plan](docs/PLAN.md) -- [Development Guidelines](docs/CLAUDE.md) \ No newline at end of file +- [Development Guidelines](docs/CLAUDE.md) + +**Note**: This is an independent implementation based on publicly available API documentation. This project is not affiliated with or endorsed by Bose Corporation. \ No newline at end of file diff --git a/cmd/example-mdns/main.go b/cmd/example-mdns/main.go index 485a102..377f71f 100644 --- a/cmd/example-mdns/main.go +++ b/cmd/example-mdns/main.go @@ -9,7 +9,7 @@ import ( "os" "time" - "github.com/user_account/bose-soundtouch/pkg/discovery" + "github.com/gesellix/bose-soundtouch/pkg/discovery" ) func main() { diff --git a/cmd/example-upnp/main.go b/cmd/example-upnp/main.go index f2bf878..bb8ac72 100644 --- a/cmd/example-upnp/main.go +++ b/cmd/example-upnp/main.go @@ -9,8 +9,8 @@ import ( "os" "time" - "github.com/user_account/bose-soundtouch/pkg/config" - "github.com/user_account/bose-soundtouch/pkg/discovery" + "github.com/gesellix/bose-soundtouch/pkg/config" + "github.com/gesellix/bose-soundtouch/pkg/discovery" ) func main() { diff --git a/cmd/soundtouch-cli/cmd_clock.go b/cmd/soundtouch-cli/cmd_clock.go index ecf6cf2..60b1836 100644 --- a/cmd/soundtouch-cli/cmd_clock.go +++ b/cmd/soundtouch-cli/cmd_clock.go @@ -6,7 +6,7 @@ import ( "strconv" "time" - "github.com/user_account/bose-soundtouch/pkg/models" + "github.com/gesellix/bose-soundtouch/pkg/models" "github.com/urfave/cli/v2" ) diff --git a/cmd/soundtouch-cli/cmd_discover.go b/cmd/soundtouch-cli/cmd_discover.go index fc260eb..7c57062 100644 --- a/cmd/soundtouch-cli/cmd_discover.go +++ b/cmd/soundtouch-cli/cmd_discover.go @@ -5,8 +5,8 @@ import ( "fmt" "time" - "github.com/user_account/bose-soundtouch/pkg/config" - "github.com/user_account/bose-soundtouch/pkg/discovery" + "github.com/gesellix/bose-soundtouch/pkg/config" + "github.com/gesellix/bose-soundtouch/pkg/discovery" "github.com/urfave/cli/v2" ) diff --git a/cmd/soundtouch-cli/cmd_playback.go b/cmd/soundtouch-cli/cmd_playback.go index 8270487..f78591a 100644 --- a/cmd/soundtouch-cli/cmd_playback.go +++ b/cmd/soundtouch-cli/cmd_playback.go @@ -4,7 +4,7 @@ import ( "fmt" "strings" - "github.com/user_account/bose-soundtouch/pkg/models" + "github.com/gesellix/bose-soundtouch/pkg/models" "github.com/urfave/cli/v2" ) diff --git a/cmd/soundtouch-cli/cmd_volume.go b/cmd/soundtouch-cli/cmd_volume.go index b77fcf7..6e7a057 100644 --- a/cmd/soundtouch-cli/cmd_volume.go +++ b/cmd/soundtouch-cli/cmd_volume.go @@ -4,7 +4,7 @@ import ( "fmt" "time" - "github.com/user_account/bose-soundtouch/pkg/models" + "github.com/gesellix/bose-soundtouch/pkg/models" "github.com/urfave/cli/v2" ) diff --git a/cmd/soundtouch-cli/cmd_zone.go b/cmd/soundtouch-cli/cmd_zone.go index 50f65bd..61a6a2e 100644 --- a/cmd/soundtouch-cli/cmd_zone.go +++ b/cmd/soundtouch-cli/cmd_zone.go @@ -5,7 +5,7 @@ import ( "net" "strings" - "github.com/user_account/bose-soundtouch/pkg/models" + "github.com/gesellix/bose-soundtouch/pkg/models" "github.com/urfave/cli/v2" ) diff --git a/cmd/soundtouch-cli/common.go b/cmd/soundtouch-cli/common.go index 11eb6f1..a77644c 100644 --- a/cmd/soundtouch-cli/common.go +++ b/cmd/soundtouch-cli/common.go @@ -7,8 +7,8 @@ import ( "strings" "time" - "github.com/user_account/bose-soundtouch/pkg/client" - "github.com/user_account/bose-soundtouch/pkg/config" + "github.com/gesellix/bose-soundtouch/pkg/client" + "github.com/gesellix/bose-soundtouch/pkg/config" "github.com/urfave/cli/v2" ) diff --git a/cmd/websocket-demo/main.go b/cmd/websocket-demo/main.go index f1a7fad..c5c7ed4 100644 --- a/cmd/websocket-demo/main.go +++ b/cmd/websocket-demo/main.go @@ -13,10 +13,10 @@ import ( "syscall" "time" - "github.com/user_account/bose-soundtouch/pkg/client" - "github.com/user_account/bose-soundtouch/pkg/config" - "github.com/user_account/bose-soundtouch/pkg/discovery" - "github.com/user_account/bose-soundtouch/pkg/models" + "github.com/gesellix/bose-soundtouch/pkg/client" + "github.com/gesellix/bose-soundtouch/pkg/config" + "github.com/gesellix/bose-soundtouch/pkg/discovery" + "github.com/gesellix/bose-soundtouch/pkg/models" ) // parseHostPort splits a host:port string into separate host and port components diff --git a/docs/ANONYMIZATION-SUMMARY.md b/docs/ANONYMIZATION-SUMMARY.md index 2057ed7..85c491b 100644 --- a/docs/ANONYMIZATION-SUMMARY.md +++ b/docs/ANONYMIZATION-SUMMARY.md @@ -11,8 +11,8 @@ All specific IP addresses, device IDs, device names, and other potentially perso ### IP Addresses **Original → Anonymized:** -- `192.168.1.35` → `192.168.1.10` -- `192.168.1.100` → `192.168.1.10` +- `192.168.178.35` → `192.168.1.10` +- `192.168.178.28` → `192.168.1.10` - `192.168.1.100` → `192.168.1.10` - `192.168.1.101` → `192.168.1.11` - `192.168.1.102` → `192.168.1.12` diff --git a/docs/API-COOKBOOK.md b/docs/API-COOKBOOK.md index e9ea3cc..ad9eb23 100644 --- a/docs/API-COOKBOOK.md +++ b/docs/API-COOKBOOK.md @@ -32,8 +32,8 @@ import ( "log" "time" - "github.com/user_account/bose-soundtouch/pkg/client" - "github.com/user_account/bose-soundtouch/pkg/discovery" + "github.com/gesellix/bose-soundtouch/pkg/client" + "github.com/gesellix/bose-soundtouch/pkg/discovery" ) func discoverAllDevices(timeout time.Duration) ([]*client.Client, error) { diff --git a/docs/BASS-CONTROLS.md b/docs/BASS-CONTROLS.md index 8e81e47..2f20d2c 100644 --- a/docs/BASS-CONTROLS.md +++ b/docs/BASS-CONTROLS.md @@ -54,7 +54,7 @@ The Bose SoundTouch Go client provides comprehensive bass control functionality ### Basic Bass Control ```go -import "github.com/user_account/bose-soundtouch/pkg/client" +import "github.com/gesellix/bose-soundtouch/pkg/client" // Create client config := client.ClientConfig{ @@ -117,7 +117,7 @@ newBass, err := c.DecreaseBass(1) // Decrease by 1, clamp if needed ### Validation and Limits ```go -import "github.com/user_account/bose-soundtouch/pkg/models" +import "github.com/gesellix/bose-soundtouch/pkg/models" // Validate bass level before setting if models.ValidateBassLevel(level) { diff --git a/docs/CLAUDE.md b/docs/CLAUDE.md index a72cc24..9a5193f 100644 --- a/docs/CLAUDE.md +++ b/docs/CLAUDE.md @@ -73,8 +73,8 @@ For web components: When creating test data for API endpoints, prefer real device responses over hypothetical examples: - **Available test endpoints**: - - `http://192.168.1.100:8090/now_playing` - Different response type 1 - - `http://192.168.1.35:8090/now_playing` - Different response type 2 + - `http://192.168.178.28:8090/now_playing` - Different response type 1 + - `http://192.168.178.35:8090/now_playing` - Different response type 2 - **Usage**: Fetch real responses to create accurate test fixtures - **Privacy**: Anonymize any personal data (account names, personal playlists, etc.) - **Coverage**: Use multiple real devices to cover different response variations diff --git a/docs/DISCOVERY.md b/docs/DISCOVERY.md index a07746d..a07b407 100644 --- a/docs/DISCOVERY.md +++ b/docs/DISCOVERY.md @@ -118,8 +118,8 @@ import ( "fmt" "time" - "github.com/user_account/bose-soundtouch/pkg/config" - "github.com/user_account/bose-soundtouch/pkg/discovery" + "github.com/gesellix/bose-soundtouch/pkg/config" + "github.com/gesellix/bose-soundtouch/pkg/discovery" ) func main() { @@ -158,7 +158,7 @@ import ( "context" "time" - "github.com/user_account/bose-soundtouch/pkg/discovery" + "github.com/gesellix/bose-soundtouch/pkg/discovery" ) func main() { diff --git a/docs/GETTING-STARTED.md b/docs/GETTING-STARTED.md index 00db570..350d345 100644 --- a/docs/GETTING-STARTED.md +++ b/docs/GETTING-STARTED.md @@ -23,7 +23,7 @@ go mod init soundtouch-example ### Step 2: Add the SoundTouch Client ```bash -go get github.com/user_account/bose-soundtouch +go get github.com/gesellix/bose-soundtouch ``` ### Step 3: Find Your Device @@ -38,7 +38,7 @@ import ( "log" "time" - "github.com/user_account/bose-soundtouch/pkg/discovery" + "github.com/gesellix/bose-soundtouch/pkg/discovery" ) func main() { @@ -84,8 +84,8 @@ import ( "log" "time" - "github.com/user_account/bose-soundtouch/pkg/client" - "github.com/user_account/bose-soundtouch/pkg/discovery" + "github.com/gesellix/bose-soundtouch/pkg/client" + "github.com/gesellix/bose-soundtouch/pkg/discovery" ) func main() { @@ -313,7 +313,7 @@ import ( "os/signal" "syscall" - "github.com/user_account/bose-soundtouch/pkg/client" + "github.com/gesellix/bose-soundtouch/pkg/client" ) func main() { diff --git a/docs/HOST-PORT-PARSING.md b/docs/HOST-PORT-PARSING.md index 74a31f3..7336f8f 100644 --- a/docs/HOST-PORT-PARSING.md +++ b/docs/HOST-PORT-PARSING.md @@ -12,7 +12,7 @@ The SoundTouch CLI now supports parsing host and port combinations in the `-host ```bash # Specify host and port together soundtouch-cli -host 192.168.1.100:8090 -info -soundtouch-cli -host 192.168.1.35:8090 -play +soundtouch-cli -host 192.168.178.35:8090 -play soundtouch-cli -host soundtouch.local:8090 -pause ``` @@ -20,7 +20,7 @@ soundtouch-cli -host soundtouch.local:8090 -pause ```bash # Traditional separate host and port flags soundtouch-cli -host 192.168.1.100 -port 8090 -info -soundtouch-cli -host 192.168.1.35 -port 8090 -play +soundtouch-cli -host 192.168.178.35 -port 8090 -play ``` ### Precedence Rules @@ -99,8 +99,8 @@ Comprehensive test coverage in `cmd/soundtouch-cli/main_test.go`: ### Integration Tests Tested with real SoundTouch devices: -- ✅ SoundTouch 10 (192.168.1.100:8090) -- ✅ SoundTouch 20 (192.168.1.35:8090) +- ✅ SoundTouch 10 (192.168.178.28:8090) +- ✅ SoundTouch 20 (192.168.178.35:8090) ## Benefits diff --git a/docs/KEY-CONTROLS.md b/docs/KEY-CONTROLS.md index 2bcef24..469ff1a 100644 --- a/docs/KEY-CONTROLS.md +++ b/docs/KEY-CONTROLS.md @@ -207,8 +207,8 @@ package main import ( "log" - "github.com/user_account/bose-soundtouch/pkg/client" - "github.com/user_account/bose-soundtouch/pkg/models" + "github.com/gesellix/bose-soundtouch/pkg/client" + "github.com/gesellix/bose-soundtouch/pkg/models" ) func main() { diff --git a/docs/PLAN.md b/docs/PLAN.md index 4261e24..97a4aaa 100644 --- a/docs/PLAN.md +++ b/docs/PLAN.md @@ -36,7 +36,7 @@ This document describes the planning for a Golang-based API client for the Bose ### Final Project Structure ``` -github.com/user_account/bose-soundtouch/ +github.com/gesellix/bose-soundtouch/ ├── cmd/ │ ├── cli/ # CLI Tool (Main Application) │ │ └── main.go @@ -545,9 +545,9 @@ import ( "log" "time" - "github.com/user_account/bose-soundtouch/pkg/client" - "github.com/user_account/bose-soundtouch/pkg/discovery" - "github.com/user_account/bose-soundtouch/pkg/models" + "github.com/gesellix/bose-soundtouch/pkg/client" + "github.com/gesellix/bose-soundtouch/pkg/discovery" + "github.com/gesellix/bose-soundtouch/pkg/models" ) func main() { diff --git a/docs/PRESET-MANAGEMENT.md b/docs/PRESET-MANAGEMENT.md index 8362945..3c46299 100644 --- a/docs/PRESET-MANAGEMENT.md +++ b/docs/PRESET-MANAGEMENT.md @@ -61,7 +61,7 @@ package main import ( "fmt" - "github.com/user_account/bose-soundtouch/pkg/client" + "github.com/gesellix/bose-soundtouch/pkg/client" ) func main() { diff --git a/docs/SOURCE-SELECTION.md b/docs/SOURCE-SELECTION.md index 381f832..0cfc5ea 100644 --- a/docs/SOURCE-SELECTION.md +++ b/docs/SOURCE-SELECTION.md @@ -44,7 +44,7 @@ The Bose SoundTouch Go client provides comprehensive source selection functional ### Basic Source Selection ```go -import "github.com/user_account/bose-soundtouch/pkg/client" +import "github.com/gesellix/bose-soundtouch/pkg/client" // Create client config := client.ClientConfig{ diff --git a/docs/VOLUME-CONTROLS.md b/docs/VOLUME-CONTROLS.md index a283f5e..f4add30 100644 --- a/docs/VOLUME-CONTROLS.md +++ b/docs/VOLUME-CONTROLS.md @@ -226,8 +226,8 @@ package main import ( "fmt" "log" - "github.com/user_account/bose-soundtouch/pkg/client" - "github.com/user_account/bose-soundtouch/pkg/models" + "github.com/gesellix/bose-soundtouch/pkg/client" + "github.com/gesellix/bose-soundtouch/pkg/models" ) func main() { diff --git a/docs/websocket-events.md b/docs/websocket-events.md index 4115837..99c3812 100644 --- a/docs/websocket-events.md +++ b/docs/websocket-events.md @@ -27,8 +27,8 @@ import ( "log" "time" - "github.com/user_account/bose-soundtouch/pkg/client" - "github.com/user_account/bose-soundtouch/pkg/models" + "github.com/gesellix/bose-soundtouch/pkg/client" + "github.com/gesellix/bose-soundtouch/pkg/models" ) func main() { @@ -551,8 +551,8 @@ wsClient.OnVolumeUpdated(func(event *models.VolumeUpdatedEvent) { See the generated Go documentation for complete API details: ```bash -go doc github.com/user_account/bose-soundtouch/pkg/client.WebSocketClient -go doc github.com/user_account/bose-soundtouch/pkg/models.WebSocketEvent +go doc github.com/gesellix/bose-soundtouch/pkg/client.WebSocketClient +go doc github.com/gesellix/bose-soundtouch/pkg/models.WebSocketEvent ``` ## Testing diff --git a/docs/zone-management.md b/docs/zone-management.md index b0eda5b..4c7f032 100644 --- a/docs/zone-management.md +++ b/docs/zone-management.md @@ -25,8 +25,8 @@ import ( "fmt" "log" - "github.com/user_account/bose-soundtouch/pkg/client" - "github.com/user_account/bose-soundtouch/pkg/models" + "github.com/gesellix/bose-soundtouch/pkg/client" + "github.com/gesellix/bose-soundtouch/pkg/models" ) func main() { diff --git a/go.mod b/go.mod index 4225c7c..52003c1 100644 --- a/go.mod +++ b/go.mod @@ -1,4 +1,4 @@ -module github.com/user_account/bose-soundtouch +module github.com/gesellix/bose-soundtouch go 1.25.5 diff --git a/pkg/client/additional_endpoints_test.go b/pkg/client/additional_endpoints_test.go index 429fbf1..07dcd11 100644 --- a/pkg/client/additional_endpoints_test.go +++ b/pkg/client/additional_endpoints_test.go @@ -5,7 +5,7 @@ import ( "net/http/httptest" "testing" - "github.com/user_account/bose-soundtouch/pkg/models" + "github.com/gesellix/bose-soundtouch/pkg/models" ) func TestClient_SetName(t *testing.T) { diff --git a/pkg/client/balance_test.go b/pkg/client/balance_test.go index 0e33a30..dacc926 100644 --- a/pkg/client/balance_test.go +++ b/pkg/client/balance_test.go @@ -7,7 +7,7 @@ import ( "net/http/httptest" "testing" - "github.com/user_account/bose-soundtouch/pkg/models" + "github.com/gesellix/bose-soundtouch/pkg/models" ) func TestClient_GetBalance(t *testing.T) { diff --git a/pkg/client/bass_integration_test.go b/pkg/client/bass_integration_test.go index d2f774f..94edd94 100644 --- a/pkg/client/bass_integration_test.go +++ b/pkg/client/bass_integration_test.go @@ -5,7 +5,7 @@ import ( "testing" "time" - "github.com/user_account/bose-soundtouch/pkg/models" + "github.com/gesellix/bose-soundtouch/pkg/models" ) // Integration tests for bass control functionality diff --git a/pkg/client/bass_test.go b/pkg/client/bass_test.go index 7896915..2c51ff6 100644 --- a/pkg/client/bass_test.go +++ b/pkg/client/bass_test.go @@ -6,7 +6,7 @@ import ( "net/http/httptest" "testing" - "github.com/user_account/bose-soundtouch/pkg/models" + "github.com/gesellix/bose-soundtouch/pkg/models" ) func TestClient_GetBass(t *testing.T) { diff --git a/pkg/client/client.go b/pkg/client/client.go index e7339e3..05b8d62 100644 --- a/pkg/client/client.go +++ b/pkg/client/client.go @@ -9,7 +9,7 @@ import ( "net/http" "time" - "github.com/user_account/bose-soundtouch/pkg/models" + "github.com/gesellix/bose-soundtouch/pkg/models" ) // defaultSoundTouchPort is the standard port for SoundTouch devices diff --git a/pkg/client/source_selection_test.go b/pkg/client/source_selection_test.go index ff6dd62..958d4fd 100644 --- a/pkg/client/source_selection_test.go +++ b/pkg/client/source_selection_test.go @@ -7,7 +7,7 @@ import ( "testing" "time" - "github.com/user_account/bose-soundtouch/pkg/models" + "github.com/gesellix/bose-soundtouch/pkg/models" ) const ( diff --git a/pkg/client/system_test.go b/pkg/client/system_test.go index 1ccffbf..f9407c0 100644 --- a/pkg/client/system_test.go +++ b/pkg/client/system_test.go @@ -6,7 +6,7 @@ import ( "testing" - "github.com/user_account/bose-soundtouch/pkg/models" + "github.com/gesellix/bose-soundtouch/pkg/models" ) func TestClient_GetClockTime(t *testing.T) { diff --git a/pkg/client/websocket.go b/pkg/client/websocket.go index 3f49d08..b5340ed 100644 --- a/pkg/client/websocket.go +++ b/pkg/client/websocket.go @@ -8,7 +8,7 @@ import ( "sync" "time" - "github.com/user_account/bose-soundtouch/pkg/models" + "github.com/gesellix/bose-soundtouch/pkg/models" "github.com/gorilla/websocket" ) diff --git a/pkg/client/websocket_test.go b/pkg/client/websocket_test.go index 14e80ac..bdb732d 100644 --- a/pkg/client/websocket_test.go +++ b/pkg/client/websocket_test.go @@ -8,7 +8,7 @@ import ( "testing" "time" - "github.com/user_account/bose-soundtouch/pkg/models" + "github.com/gesellix/bose-soundtouch/pkg/models" "github.com/gorilla/websocket" ) diff --git a/pkg/client/zone_test.go b/pkg/client/zone_test.go index 2710261..0ee1f5d 100644 --- a/pkg/client/zone_test.go +++ b/pkg/client/zone_test.go @@ -7,7 +7,7 @@ import ( "testing" "time" - "github.com/user_account/bose-soundtouch/pkg/models" + "github.com/gesellix/bose-soundtouch/pkg/models" ) func TestClient_GetZone(t *testing.T) { diff --git a/pkg/config/config.go b/pkg/config/config.go index 3472db8..d5f8be5 100644 --- a/pkg/config/config.go +++ b/pkg/config/config.go @@ -10,7 +10,7 @@ import ( "strings" "time" - "github.com/user_account/bose-soundtouch/pkg/models" + "github.com/gesellix/bose-soundtouch/pkg/models" ) // Config holds configuration for the SoundTouch application diff --git a/pkg/discovery/mdns.go b/pkg/discovery/mdns.go index e8c66fe..8b2df53 100644 --- a/pkg/discovery/mdns.go +++ b/pkg/discovery/mdns.go @@ -8,7 +8,7 @@ import ( "strings" "time" - "github.com/user_account/bose-soundtouch/pkg/models" + "github.com/gesellix/bose-soundtouch/pkg/models" "github.com/hashicorp/mdns" ) diff --git a/pkg/discovery/unified.go b/pkg/discovery/unified.go index 974987d..fb161de 100644 --- a/pkg/discovery/unified.go +++ b/pkg/discovery/unified.go @@ -6,8 +6,8 @@ import ( "sync" "time" - "github.com/user_account/bose-soundtouch/pkg/config" - "github.com/user_account/bose-soundtouch/pkg/models" + "github.com/gesellix/bose-soundtouch/pkg/config" + "github.com/gesellix/bose-soundtouch/pkg/models" ) // UnifiedDiscoveryService combines SSDP and mDNS discovery methods diff --git a/pkg/discovery/unified_test.go b/pkg/discovery/unified_test.go index 99bf44d..0176662 100644 --- a/pkg/discovery/unified_test.go +++ b/pkg/discovery/unified_test.go @@ -5,7 +5,7 @@ import ( "testing" "time" - "github.com/user_account/bose-soundtouch/pkg/config" + "github.com/gesellix/bose-soundtouch/pkg/config" ) func TestNewUnifiedDiscoveryService(t *testing.T) { diff --git a/pkg/discovery/upnp.go b/pkg/discovery/upnp.go index 58c6798..00d50e9 100644 --- a/pkg/discovery/upnp.go +++ b/pkg/discovery/upnp.go @@ -12,8 +12,8 @@ import ( "sync" "time" - "github.com/user_account/bose-soundtouch/pkg/config" - "github.com/user_account/bose-soundtouch/pkg/models" + "github.com/gesellix/bose-soundtouch/pkg/config" + "github.com/gesellix/bose-soundtouch/pkg/models" ) // Service handles UPnP SSDP discovery of SoundTouch devices diff --git a/pkg/discovery/upnp_test.go b/pkg/discovery/upnp_test.go index 2f59b6f..e3761c6 100644 --- a/pkg/discovery/upnp_test.go +++ b/pkg/discovery/upnp_test.go @@ -6,8 +6,8 @@ import ( "testing" "time" - "github.com/user_account/bose-soundtouch/pkg/config" - "github.com/user_account/bose-soundtouch/pkg/models" + "github.com/gesellix/bose-soundtouch/pkg/config" + "github.com/gesellix/bose-soundtouch/pkg/models" ) func TestNewDiscoveryService(t *testing.T) { diff --git a/scripts/post-release.md b/scripts/post-release.md index 7952115..ad6256d 100644 --- a/scripts/post-release.md +++ b/scripts/post-release.md @@ -5,8 +5,8 @@ After successfully releasing v1.0.0, follow this checklist to maximize visibilit ## ✅ Immediate Actions (Within 24 hours) ### Go Package Registry -- [ ] Verify pkg.go.dev indexing: https://pkg.go.dev/github.com/user_account/bose-soundtouch -- [ ] If not indexed, submit via: `go get github.com/user_account/bose-soundtouch@v1.0.0` +- [ ] Verify pkg.go.dev indexing: https://pkg.go.dev/github.com/gesellix/bose-soundtouch +- [ ] If not indexed, submit via: `go get github.com/gesellix/bose-soundtouch@v1.0.0` - [ ] Check documentation rendering on pkg.go.dev ### Community Engagement @@ -23,13 +23,13 @@ After successfully releasing v1.0.0, follow this checklist to maximize visibilit ✅ Real-time WebSocket events ✅ 4000+ lines of documentation ✅ CLI tool with cross-platform binaries - Tested on real hardware! https://github.com/user_account/bose-soundtouch" + Tested on real hardware! https://github.com/gesellix/bose-soundtouch" ``` - [ ] **Hacker News** submission: ``` Title: "Bose SoundTouch Go Library – Complete API with WebSocket Events" - URL: https://github.com/user_account/bose-soundtouch + URL: https://github.com/gesellix/bose-soundtouch ``` ### Social Media @@ -46,7 +46,7 @@ After successfully releasing v1.0.0, follow this checklist to maximize visibilit Perfect for home automation & music control apps #golang #IoT #music #opensource - https://github.com/user_account/bose-soundtouch" + https://github.com/gesellix/bose-soundtouch" ``` - [ ] **LinkedIn** professional post (if applicable) @@ -72,7 +72,7 @@ After successfully releasing v1.0.0, follow this checklist to maximize visibilit - [ ] Submit to **awesome-go**: https://github.com/avelino/awesome-go ``` Category: Audio and Music - Entry: [bose-soundtouch](https://github.com/user_account/bose-soundtouch) - Go library for controlling Bose SoundTouch speakers with 100% API coverage and WebSocket events. + Entry: [bose-soundtouch](https://github.com/gesellix/bose-soundtouch) - Go library for controlling Bose SoundTouch speakers with 100% API coverage and WebSocket events. ``` - [ ] Submit to **go-awesome**: https://github.com/shivammg/go-awesome @@ -103,7 +103,7 @@ After successfully releasing v1.0.0, follow this checklist to maximize visibilit - [ ] **Helm chart** for Kubernetes deployment - [ ] **Homebrew formula** for easy CLI installation: ```bash - brew install user_account/tap/soundtouch-cli + brew install gesellix/tap/soundtouch-cli ``` ## 📊 Success Metrics to Track @@ -165,7 +165,7 @@ The project demonstrates several interesting engineering challenges: Would this be interesting for [blog/podcast]? I'd be happy to discuss the technical details and lessons learned. -GitHub: https://github.com/user_account/bose-soundtouch +GitHub: https://github.com/gesellix/bose-soundtouch Best regards, [Your name] diff --git a/scripts/prepare-release.sh b/scripts/prepare-release.sh index 56644e9..88f4136 100755 --- a/scripts/prepare-release.sh +++ b/scripts/prepare-release.sh @@ -7,7 +7,7 @@ set -e VERSION=${1:-"v1.0.0"} -GITHUB_REPO="user_account/bose-soundtouch" +GITHUB_REPO="gesellix/bose-soundtouch" echo "🚀 Preparing local release build $VERSION for $GITHUB_REPO" echo "💡 Note: This is for local testing. Use 'git tag && git push --tags' for automated release"