mirror of
https://github.com/legop3/MultiRoombaRover.git
synced 2026-09-15 17:12:59 -04:00
146 lines
4.6 KiB
YAML
146 lines
4.6 KiB
YAML
admins:
|
|
- username: admin
|
|
password_hash: "$2b$10$ZW4Jy7ctIt7k9V1AogFky.v4wedLF92t4/ZlT9kWPlIiCmdQNzJ.C" # password: adminpass
|
|
discord_id: "1234567890"
|
|
lockdown: false
|
|
- username: lockdown
|
|
password_hash: "$2b$10$n0L0oe1ZQy7IgM.FvVAzb.aXz43uaZWFiT0wr.05uNoVIDLawmrCG" # password: lockdownpass
|
|
discord_id: "0987654321"
|
|
lockdown: true
|
|
timezone: "America/New_York"
|
|
llmCommentary:
|
|
enabled: false
|
|
model: "qwen2.5:7b-instruct"
|
|
ollamaServer: "http://127.0.0.1:11434"
|
|
frequency: 120000
|
|
overseerControl:
|
|
enabled: false
|
|
observeOnly: true
|
|
postToolsOnlyMessages: false
|
|
tiebreakerEnable: false
|
|
runWhileNoPeopleOnline: false
|
|
name: "The Overseer"
|
|
model: "qwen2.5:7b-instruct"
|
|
ollamaServer: "http://127.0.0.1:11434"
|
|
profileImageUrl: "https://example.com/overseer.png"
|
|
gateIntervalMs: 2000
|
|
media:
|
|
# Base address for mediaMTX (scheme + host + optional port/path). The UI will always request
|
|
# http://<base>/<roverId>/whep
|
|
# Example: http://192.168.0.86:8889/video
|
|
whepBaseUrl: "http://192.168.0.86:8889/video"
|
|
|
|
audioForward:
|
|
enabled: true
|
|
ffmpegBin: "ffmpeg"
|
|
streamSuffix: "-fwd"
|
|
maxUploadBytes: 8388608
|
|
|
|
audioLevels:
|
|
# Gains are multipliers (0.0 - 4.0) applied globally to all rovers.
|
|
hornGain: 1.0
|
|
ttsGain: 1.0
|
|
forwardGain: 1.0
|
|
|
|
homeAssistant:
|
|
url: "http://homeassistant.local:8123"
|
|
token: "REPLACE_WITH_LONG_LIVED_TOKEN"
|
|
neato:
|
|
# ESPHome device name, used to derive gen3 entities:
|
|
# button.<device>_house_clean, button.<device>_send_to_base, button.<device>_locate_robot, etc.
|
|
device: "neato_vacuum"
|
|
lift:
|
|
# Two Home Assistant switches controlling lift direction.
|
|
# Raise sequence: down off -> wait interlockMs -> up on
|
|
# Lower sequence: up off -> wait interlockMs -> down on
|
|
upSwitch: "switch.lift_up"
|
|
downSwitch: "switch.lift_down"
|
|
interlockMs: 2000
|
|
commandCooldownMs: 3000
|
|
entities:
|
|
- id: "light.lab_main"
|
|
name: "Lab Lights"
|
|
- id: "switch.dock_power"
|
|
name: "Dock Power"
|
|
# type is optional; if omitted it is inferred from the entity id (light/switch)
|
|
# For room-light policy, all configured entities are treated as room lights (including switches).
|
|
buttons:
|
|
# Legacy action entities only (for example sensor.<button>_action from Zigbee2MQTT).
|
|
- entityId: "sensor.basement_rover_buttons_action"
|
|
# Human alert button
|
|
stateEquals: "on"
|
|
cooldownMs: 15000
|
|
action: "humanAlert"
|
|
- entityId: "sensor.basement_rover_buttons_action"
|
|
# Mode button: turns
|
|
stateEquals: "double"
|
|
cooldownMs: 2000
|
|
action: "modeTurns"
|
|
- entityId: "sensor.basement_rover_buttons_action"
|
|
# Mode button: admin
|
|
stateEquals: "hold"
|
|
cooldownMs: 2000
|
|
action: "modeAdmin"
|
|
- entityId: "sensor.basement_rover_buttons_action"
|
|
# Room lights lock toggle
|
|
stateEquals: "toggle"
|
|
cooldownMs: 1000
|
|
action: "lightsLockToggle"
|
|
roomCameras:
|
|
- id: "lobby"
|
|
name: "Lobby Camera"
|
|
description: "Wide shot of the staging area."
|
|
url: "http://192.168.0.50/snapshot.jpg"
|
|
streamUrl: "http://192.168.0.50/stream.mjpg"
|
|
- id: "workshop"
|
|
name: "Workshop Bench"
|
|
description: "Shows the workbench and charging docks."
|
|
url: "http://192.168.0.51/snapshot.jpg"
|
|
streamUrl: "http://192.168.0.51/stream.mjpg"
|
|
|
|
kinect:
|
|
enabled: false
|
|
# Capture requests are global across 3d/color so one person cannot spam room
|
|
# uploads for everyone else. This does not affect the native worker's local
|
|
# camera cache; it only gates browser-requested broadcasts.
|
|
captureCooldownMs: 10000
|
|
|
|
discord:
|
|
token: "DISCORD_BOT_TOKEN"
|
|
guildId: "123456789012345678" # optional; bot works in any guild it's invited to
|
|
siteUrl: "https://rover.example.com"
|
|
channels:
|
|
general: "123456789012345678"
|
|
announcements: "123456789012345678"
|
|
adminAlerts: "123456789012345678"
|
|
# chat bridge is configured per guild via `rs bridge` commands
|
|
replay: "123456789012345678"
|
|
humanAlerts: "123456789012345678"
|
|
roles:
|
|
stalkerPing: "123456789012345678"
|
|
announcementPing: "123456789012345678"
|
|
adminPing: "123456789012345678"
|
|
humanAlertPing: "123456789012345678"
|
|
|
|
socials:
|
|
- id: "discord"
|
|
label: "Discord"
|
|
url: "https://discord.gg/your-invite"
|
|
icon: "FaDiscord"
|
|
color: "#5865F2"
|
|
- id: "kofi"
|
|
label: "Ko-fi"
|
|
url: "https://ko-fi.com/your-handle"
|
|
icon: "FaCoffee"
|
|
color: "#29ABE0"
|
|
- id: "wiki"
|
|
label: "Wiki"
|
|
url: "https://wiki.example.com"
|
|
icon: "FaBook"
|
|
color: "#475569"
|
|
- id: "throne"
|
|
label: "Throne"
|
|
url: "https://throne.me/yourname"
|
|
icon: "FaCrown"
|
|
color: "#334155"
|