96b099d892
- electron/remote.js: WebSocket client that connects to central server - Smart URL builder: domain+443→wss://, IP/non-443→ws://, http/https→ws/wss - UUID token auth on connect - Auto-reconnect with exponential backoff (3s→60s) - Handles commands: start_stream, stop_stream, update_stream, stop_all - Sends: devices, stream_status, logs - Ping/pong keepalive every 25s - Self-signed cert allowed for local IPs (192.168.x, 10.x, .local) - electron/main.js: IPC handlers remote-connect/disconnect/get-url, generate-token; forwards commands to FFmpeg, status to renderer - electron/preload.js: exposes remoteConnect, remoteDisconnect, remoteGetUrl, generateToken, onRemoteStatus, onRemoteCommand - src/components/RemoteSettings.jsx: new UI tab - Server + port fields (default 443, auto wss/ws) - URL preview - Token display with copy + regenerate - Machine name field - Connection status bar with animated states - src/App.jsx: Remote tab added, remote state persisted to config - src/styles/App.css: remote status bar, token display, actions Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
39 lines
2.3 KiB
JSON
39 lines
2.3 KiB
JSON
{
|
|
"permissions": {
|
|
"allow": [
|
|
"Bash(git init:*)",
|
|
"Bash(git branch:*)",
|
|
"Bash(curl -s -o /dev/null -w \"%{http_code}\" https://git.queo.ru/api/v1/user -H \"Authorization: token c4a37376c2c3375987f1a6eb3fd11e1305468e35\")",
|
|
"Bash(curl -s -X POST https://git.queo.ru/api/v1/user/repos -H 'Authorization: token c4a37376c2c3375987f1a6eb3fd11e1305468e35' -H 'Content-Type: application/json' -d '{:*)",
|
|
"Bash(python -m json.tool)",
|
|
"Bash(git config:*)",
|
|
"Bash(git remote:*)",
|
|
"Bash(git add:*)",
|
|
"Bash(git commit -m ':*)",
|
|
"Bash(git push:*)",
|
|
"Bash(npm --version)",
|
|
"Bash(ls /c/project/SRT_stream/node_modules/.bin/electron*)",
|
|
"Bash(node scripts/build-icon.js)",
|
|
"Bash(npm run:*)",
|
|
"Bash(npm install:*)",
|
|
"Bash(set CSC_IDENTITY_AUTO_DISCOVERY=false)",
|
|
"Bash(npx cross-env:*)",
|
|
"Bash(where 7z)",
|
|
"Bash(where makensis:*)",
|
|
"Read(//c/Program Files/7-Zip/**)",
|
|
"Read(//c/Program Files/NSIS/**)",
|
|
"Bash(node scripts/fix-wincodeSign.js)",
|
|
"Bash(ls /c/project/SRT_stream/dist-electron/*.exe)",
|
|
"Bash(curl -s -X POST https://git.queo.ru/api/v1/repos/admin/srt-streamer/releases -H 'Authorization: token c4a37376c2c3375987f1a6eb3fd11e1305468e35' -H 'Content-Type: application/json' -d '{:*)",
|
|
"Bash(curl -s -X POST https://git.queo.ru/api/v1/repos/admin/srt-streamer/releases -H 'Authorization: token c4a37376c2c3375987f1a6eb3fd11e1305468e35' -H 'Content-Type: application/json' -d '{\"tag_name\":\"v1.0.0\",\"name\":\"SRT Streamer v1.0.0\",\"body\":\"Portable Windows EXE\",\"draft\":false,\"prerelease\":false}')",
|
|
"Bash(npx vite *)",
|
|
"Bash(git commit -m ' *)",
|
|
"Bash(dir dist-electron\\\\*.exe)",
|
|
"Bash(curl -s -X POST https://git.queo.ru/api/v1/repos/admin/srt-streamer/releases -H 'Authorization: token c4a37376c2c3375987f1a6eb3fd11e1305468e35' -H 'Content-Type: application/json' -d '{ *)",
|
|
"Bash(python -c \"import sys,json; r=json.load\\(sys.stdin\\); print\\('Release ID:', r.get\\('id'\\), '| URL:', r.get\\('html_url'\\)\\)\")",
|
|
"Bash(python -c \"import sys,json; r=json.load\\(sys.stdin\\); print\\('Asset:', r.get\\('name'\\), '| Size:', r.get\\('size'\\), 'bytes'\\)\")",
|
|
"Bash(git checkout *)"
|
|
]
|
|
}
|
|
}
|