### Start the local backend Source: https://twojstar-github.docs7.io/autka/quickstart Navigate to the backend directory, install dependencies, run database migrations, and start the development server. ```bash cd backend npm install npm run db:migrate:local npm run dev ``` -------------------------------- ### Install backend dependencies Source: https://twojstar-github.docs7.io/autka/api-reference Navigate to the backend directory and install required npm packages. ```bash cd backend npm install ``` -------------------------------- ### Install WAM Bridge and verify FFmpeg Source: https://twojstar-github.docs7.io/wambridge/quickstart Clone the repository, set up a virtual environment, and install the package. Verify that FFmpeg is accessible in your system PATH. ```powershell git clone https://github.com/trvny/wambridge.git cd wambridge py -m venv .venv .\.venv\Scripts\Activate.ps1 py -m pip install -e . ``` ```powershell ffmpeg -version ``` -------------------------------- ### Start development server Source: https://twojstar-github.docs7.io/autka/api-reference Launch the development server to begin local development. ```bash npm run dev ``` -------------------------------- ### Install debug build on device Source: https://twojstar-github.docs7.io/autka/quickstart Install the compiled debug APK onto a connected Android device or emulator. ```bash ./gradlew installDebug ``` -------------------------------- ### Initialize development environment Source: https://twojstar-github.docs7.io/workshop/benches Commands to navigate to the benches directory, install dependencies, and run checks. ```bash cd benches npm ci npm run check ``` -------------------------------- ### Minimal foobar.ini Configuration Source: https://twojstar-github.docs7.io/wambridge/foobar-configure A basic example of the INI file structure defining the device and startup volume. ```ini [wambridge] device=M5 volume=3 ``` -------------------------------- ### GET /logos Source: https://twojstar-github.docs7.io/kanarek/worker Resolve missing IPTV logos. ```APIDOC ## GET /logos ### Description Resolve missing IPTV logos. ### Method GET ### Endpoint /logos?ids=... ``` -------------------------------- ### Run local development workflow Source: https://twojstar-github.docs7.io/feedseek/development Commands to install dependencies, generate feeds, and validate the output. ```bash make install make feeds make validate ``` -------------------------------- ### Use a device in commands Source: https://twojstar-github.docs7.io/wambridge/discovery Examples of using a saved alias to play music, check status, or control volume. ```powershell wambridge "D:\Music\track.opus" --device M5 wambridge --device M5 --status wambridge --device M5 --radio-play trojka --volume 3 ``` -------------------------------- ### GET /scrape Source: https://twojstar-github.docs7.io/kanarek/worker Convert HTML pages into Atom feeds. ```APIDOC ## GET /scrape ### Description Convert suitable HTML pages into Atom. ### Method GET ### Endpoint /scrape?url=... ``` -------------------------------- ### GET /offers Response Source: https://twojstar-github.docs7.io/autka/api-reference The standard response format for listing car offers. ```json { "offers": [ /* CarOffer[] */ ], "count": 42, "warnings": null } ``` -------------------------------- ### GET /import-services Source: https://twojstar-github.docs7.io/autka/api-reference Returns a directory of import and logistics companies. ```APIDOC ## GET /import-services ### Description Returns a directory of import and logistics companies, optionally filtered by region. ### Method GET ### Endpoint /import-services ### Parameters #### Query Parameters - **region** (string) - Optional - Optional region filter ``` -------------------------------- ### Verify JDK 17 installation Source: https://twojstar-github.docs7.io/autka/quickstart Check the current Java version to ensure it meets the requirement of JDK 17. ```bash java -version ``` -------------------------------- ### GET /images/:key Source: https://twojstar-github.docs7.io/autka/api-reference Streams a cached offer image from R2 storage. ```APIDOC ## GET /images/:key ### Description Streams a cached offer image from R2. ### Method GET ### Endpoint /images/:key ### Parameters #### Path Parameters - **key** (string) - Required - The image key ``` -------------------------------- ### Expected WAM Bridge Console Output Source: https://twojstar-github.docs7.io/wambridge/foobar-configure These markers appear in the foobar console when a playback session starts successfully. ```text WAMBRIDGE STREAM_REQUESTED WAMBRIDGE ENCODER_STARTED WAMBRIDGE READY WAMBRIDGE AUDIO_STARTED WAMBRIDGE PLAYING volume=3 ``` -------------------------------- ### Deploy the Weather Feed Worker Source: https://twojstar-github.docs7.io/workshop/weather Commands to install dependencies, configure required API keys for OpenWeather and VisualCrossing, verify the configuration, and deploy the worker to Cloudflare. ```bash npm install wrangler secret put OPENWEATHER_KEY wrangler secret put VISUALCROSSING_KEY npm run check wrangler deploy ``` -------------------------------- ### GET /article Source: https://twojstar-github.docs7.io/kanarek/worker Extract clean article text from configured hosts. ```APIDOC ## GET /article ### Description Extract clean article text for configured hosts. ### Method GET ### Endpoint /article?url=... ``` -------------------------------- ### WAM Bridge Playback Commands Source: https://twojstar-github.docs7.io/wambridge/foobar-install List of control commands added to the foobar2000 Playback menu after component installation. ```text Playback -> WAM Bridge -> Emergency stop Playback -> WAM Bridge -> Stop & mute Playback -> WAM Bridge -> Start sleep timer Playback -> WAM Bridge -> Cancel sleep timer Playback -> WAM Bridge -> Volume up Playback -> WAM Bridge -> Volume down Playback -> WAM Bridge -> Volume to safe level ``` -------------------------------- ### GET /offers/:id Source: https://twojstar-github.docs7.io/autka/api-reference Retrieves a single offer by its unique identifier. ```APIDOC ## GET /offers/:id ### Description Returns a single offer by its namespaced CarOffer.id. ### Method GET ### Endpoint /offers/:id ### Parameters #### Path Parameters - **id** (string) - Required - The unique identifier of the offer ``` -------------------------------- ### GET / Source: https://twojstar-github.docs7.io/kanarek/worker Merge and normalize multiple feeds into a single output format. ```APIDOC ## GET / ### Description Merge and normalize feeds; optionally export as Atom, RSS, or JSON Feed. ### Method GET ### Endpoint /?feeds=... ``` -------------------------------- ### GET /sources Source: https://twojstar-github.docs7.io/autka/api-reference Returns the list of configured sources with health metadata. ```APIDOC ## GET /sources ### Description Returns the list of configured sources with public-safe health metadata. ### Method GET ### Endpoint /sources ### Response #### Success Response (200) - **id** (string) - Source identifier - **enabled** (boolean) - Whether the source is active - **offerCount** (number) - Number of offers from this source - **lastCompletedAtEpochMs** (number) - Timestamp of last completed ingest - **lastCompletedOk** (boolean) - Whether the last completed ingest succeeded - **lastOffersUpserted** (number) - How many offers were upserted in the last run ``` -------------------------------- ### GET /discover Source: https://twojstar-github.docs7.io/kanarek/worker Discover feed URLs present on a given webpage. ```APIDOC ## GET /discover ### Description Discover feed URLs on a page. ### Method GET ### Endpoint /discover?url=... ``` -------------------------------- ### Deploy Kanarek Worker Source: https://twojstar-github.docs7.io/kanarek/worker Commands to install dependencies, verify types, run tests, and deploy the worker to Cloudflare. ```bash cd worker npm ci npm run typecheck npm test npx wrangler deploy ``` -------------------------------- ### GET /offers Source: https://twojstar-github.docs7.io/autka/api-reference Search and list car offers based on various filters. ```APIDOC ## GET /offers ### Description Search and list offers. Query parameters mirror the app's SearchFilter fields. ### Method GET ### Endpoint /offers ### Parameters #### Query Parameters - **query** (string) - Optional - Free-text search - **make** (string) - Optional - Vehicle manufacturer filter - **model** (string) - Optional - Vehicle model filter - **minPrice** (number) - Optional - Requested minimum price - **maxPrice** (number) - Optional - Requested maximum price - **minYear** (number) - Optional - Minimum model year - **maxYear** (number) - Optional - Maximum model year - **maxMileageKm** (number) - Optional - Maximum odometer reading in kilometres - **fuelTypes** (string) - Optional - Comma-separated fuel types - **transmissions** (string) - Optional - Comma-separated transmission types - **regions** (string) - Optional - Comma-separated regions - **sources** (string) - Optional - Comma-separated source identifiers - **sort** (string) - Optional - NEWEST, PRICE_ASC, PRICE_DESC, MILEAGE_ASC, or YEAR_DESC - **dedup** (boolean) - Optional - Set false to disable backend de-duplication - **complete** (boolean) - Optional - Return the full matching set without pagination - **limit** (number) - Optional - Page size - **offset** (number) - Optional - Page offset ### Response #### Success Response (200) - **offers** (array) - List of CarOffer objects - **count** (number) - Total count of offers - **warnings** (null) - Warnings if any ``` -------------------------------- ### GET /warnings.atom Source: https://twojstar-github.docs7.io/workshop/weather Retrieves an Atom feed containing only IMGW weather warnings. ```APIDOC ## GET /warnings.atom ### Description Returns an Atom feed containing only IMGW warning entries. ### Method GET ### Endpoint /warnings.atom ``` -------------------------------- ### GET /health Source: https://twojstar-github.docs7.io/kanarek/worker Perform a health check on the worker. ```APIDOC ## GET /health ### Description Health probe. ### Method GET ### Endpoint /health ``` -------------------------------- ### Deploy application to production Source: https://twojstar-github.docs7.io/autka/api-reference Run these commands in sequence to authenticate, configure secrets, migrate the remote database, and deploy the application. ```bash npx wrangler login npx wrangler secret put ADMIN_TOKEN npm run db:migrate:remote npm run deploy ``` -------------------------------- ### Set startup volume ceiling Source: https://twojstar-github.docs7.io/wambridge/quickstart Configure a maximum startup volume while maintaining current playback settings. ```powershell wambridge "D:\Music\track.opus" --device M5 --max-start-volume 3 ``` -------------------------------- ### GET /stations/search Source: https://twojstar-github.docs7.io/kanarek/worker Search the Radio Browser directory for stations. ```APIDOC ## GET /stations/search ### Description Search the Radio Browser directory. ### Method GET ### Endpoint /stations/search?... ``` -------------------------------- ### Build the Android app with Gradle Source: https://twojstar-github.docs7.io/llmbench/quickstart Execute the build process for the Android application using the Gradle wrapper. ```bash ./gradlew :app:assembleDebug ``` -------------------------------- ### Build the project with Gradle Source: https://twojstar-github.docs7.io/workshop/xiaomi-adb-tools Run this command to build host-specific self-contained JARs. Requires JDK 21 or newer. ```bash ./gradlew platformJars ``` -------------------------------- ### GET /healthz Source: https://twojstar-github.docs7.io/workshop/weather Performs a health and staleness check on the service. ```APIDOC ## GET /healthz ### Description Performs a health and staleness check for the service. ### Method GET ### Endpoint /healthz ``` -------------------------------- ### Clone the LlmBench repository Source: https://twojstar-github.docs7.io/llmbench/quickstart Use these commands to download the project source code and navigate into the directory. ```bash git clone https://github.com/twojstar/llmbench.git cd llmbench ``` -------------------------------- ### GET /health Response Source: https://twojstar-github.docs7.io/autka/api-reference Returns a simple liveness check for the Worker. ```json { "status": "ok" } ``` -------------------------------- ### Run repository checks Source: https://twojstar-github.docs7.io/feedseek/development Commands to synchronize dependencies and execute unit tests and feed validation scripts. ```bash uv sync --locked uv run --locked python -m unittest discover -s tests uv run --locked feed_generators/validate_feeds.py ``` -------------------------------- ### Configure playback volume Source: https://twojstar-github.docs7.io/wambridge/playback Set the playback volume or the startup volume ceiling using raw API steps from 0 to 30. ```powershell # Set playback volume wambridge "D:\Music\track.opus" --device M5 --volume 3 # Set only the startup ceiling, preserve quieter current volume wambridge "D:\Music\track.opus" --device M5 --max-start-volume 3 ``` -------------------------------- ### Locate foobar.ini Configuration File Source: https://twojstar-github.docs7.io/wambridge/foobar-configure The configuration file is stored in the local application data directory. Changes made here take effect on the next playback session. ```text %LOCALAPPDATA%\WAMBridge\foobar.ini ``` -------------------------------- ### Clone the Autka repository Source: https://twojstar-github.docs7.io/autka/quickstart Download the source code from GitHub to your local machine. ```bash git clone https://github.com/twojstar/Autka.git cd Autka ``` -------------------------------- ### Interact with speaker TuneIn presets Source: https://twojstar-github.docs7.io/wambridge/radio-stations Lists or plays TuneIn presets already saved on the speaker hardware. ```powershell wambridge --device M5 --tunein-list wambridge --device M5 --tunein-play 0 --volume 3 wambridge --device M5 --tunein-play "Radio Paradise" --volume 3 ``` -------------------------------- ### Import bundled station packs Source: https://twojstar-github.docs7.io/wambridge/radio-stations Imports a predefined set of radio stations and lists them. ```powershell wambridge --radio-import top3 wambridge --radio-list ``` -------------------------------- ### GET /feed.atom Source: https://twojstar-github.docs7.io/workshop/weather Retrieves an Atom feed containing all meaningful weather change entries. ```APIDOC ## GET /feed.atom ### Description Returns an Atom feed containing all meaningful change entries for weather conditions. ### Method GET ### Endpoint /feed.atom ``` -------------------------------- ### Apply local database migrations Source: https://twojstar-github.docs7.io/autka/api-reference Run the local database migration script to update the schema. ```bash npm run db:migrate:local ``` -------------------------------- ### Locate the stations configuration file Source: https://twojstar-github.docs7.io/wambridge/radio-stations The path where station definitions are stored locally. ```text %LOCALAPPDATA%\WAMBridge\stations.json ``` -------------------------------- ### Add a custom radio station with fallback URLs Source: https://twojstar-github.docs7.io/wambridge/radio-stations Saves a custom radio station by name with primary and fallback stream URLs. ```powershell wambridge --radio-add paradise "https://primary.example/radio.mp3" "https://backup.example/radio.ogg" ``` -------------------------------- ### Run tests and type checking Source: https://twojstar-github.docs7.io/autka/api-reference Execute the test suite and run TypeScript type checking. ```bash npm test npm run typecheck ``` -------------------------------- ### Specify output format Source: https://twojstar-github.docs7.io/wambridge/playback Override the default FLAC encoding with MP3 if the speaker firmware experiences stability issues. ```powershell wambridge "D:\Music\track.opus" --speaker 192.168.1.50 --format mp3 ``` -------------------------------- ### GET /state.json Source: https://twojstar-github.docs7.io/workshop/weather Retrieves the latest ensemble weather data, warnings, air quality, and station context in JSON format. ```APIDOC ## GET /state.json ### Description Returns the latest ensemble weather data, warnings, air quality, and station context. ### Method GET ### Endpoint /state.json ``` -------------------------------- ### Build the debug APK Source: https://twojstar-github.docs7.io/autka/quickstart Assemble the debug build using the Gradle wrapper. The resulting APK is located in app/build/outputs/apk/debug/. ```bash ./gradlew assembleDebug ``` -------------------------------- ### Discover Samsung WAM speakers Source: https://twojstar-github.docs7.io/wambridge/quickstart Run discovery to locate speakers on the LAN. Use verbose mode or specify an interface if the default discovery fails. ```powershell wambridge --discover ``` ```powershell wambridge --discover --verbose wambridge --discover --interface 192.168.1.25 ``` -------------------------------- ### Save and verify device alias Source: https://twojstar-github.docs7.io/wambridge/quickstart Save a speaker IP address under an alias for easier access, then verify the saved profile and probe the device. ```powershell wambridge --speaker 10.0.0.118 --remember M5 ``` ```powershell wambridge --list-devices wambridge --device M5 --probe ``` -------------------------------- ### Run instrumented tests Source: https://twojstar-github.docs7.io/autka/quickstart Execute instrumented tests on a connected device or emulator using the Gradle wrapper. ```bash ./gradlew connectedCheck ``` -------------------------------- ### Access WAM Bridge Preferences Source: https://twojstar-github.docs7.io/wambridge/foobar-configure Navigate to this path within the foobar2000 application to access the WAM Bridge configuration page. ```text Preferences -> Playback -> Output -> WAM Bridge ``` -------------------------------- ### Browse and search the TuneIn catalogue Source: https://twojstar-github.docs7.io/wambridge/radio-stations Commands to navigate the TuneIn tree, search for stations, and paginate through results. ```powershell # Top-level TuneIn tree wambridge --device M5 --tunein-browse # Navigate into a subtree (row 1 at top, then row 0) wambridge --device M5 --tunein-browse 1/0 # Search by station name wambridge --device M5 --tunein-search "Radio Paradise" # Paginate results wambridge --device M5 --tunein-search "jazz" --tunein-start 30 ``` -------------------------------- ### Status and Volume CLI Commands Source: https://twojstar-github.docs7.io/wambridge/remote-control Commands to query speaker status, set raw volume levels (0-30), and toggle mute state for a device. ```powershell # Print current speaker status wambridge --device M5 --status # Set volume (raw step 0..30) wambridge --device M5 --set-volume 3 # Mute and unmute wambridge --device M5 --mute wambridge --device M5 --unmute ``` -------------------------------- ### Basic playback with wambridge Source: https://twojstar-github.docs7.io/wambridge/playback Stream audio files or internet radio to a speaker using a device alias, IP address, or specific file format. ```powershell # By saved device alias wambridge "D:\Music\track.opus" --device M5 --volume 3 # By IP address wambridge "D:\Music\track.opus" --speaker 192.168.1.50 # Internet stream wambridge "https://example.net/radio-stream" --speaker 192.168.1.50 # Ogg file wambridge "D:\Music\track.ogg" --speaker 192.168.1.50 ``` -------------------------------- ### Playback Control CLI Commands Source: https://twojstar-github.docs7.io/wambridge/remote-control Commands to manage playback state including pause, play, stop, and standby. ```powershell wambridge --device M5 --pause wambridge --device M5 --play wambridge --device M5 --stop wambridge --device M5 --standby ```