Complete Phase 0 and Phase 1 design documentation

- Add comprehensive research.md with SDK integration decisions
- Add complete data-model.md with 7 entities and relationships
- Add OpenAPI 3.0 specification (contracts/openapi.yaml)
- Add developer quickstart.md guide
- Add comprehensive tasks.md with 215 tasks organized by user story
- Update plan.md with complete technical context
- Add SDK_INTEGRATION_LESSONS.md capturing critical knowledge
- Add .gitignore for Python and C# projects
- Include GeViScopeConfigReader and GeViSoftConfigReader tools

Phase 1 Design Complete:
 Architecture: Python FastAPI + C# gRPC Bridge + GeViScope SDK
 10 user stories mapped to tasks (MVP = US1-4)
 Complete API contract with 17 endpoints
 Data model with User, Camera, Stream, Event, Recording, Analytics
 TDD approach enforced with 80+ test tasks

Ready for Phase 2: Implementation

🤖 Generated with Claude Code (https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
This commit is contained in:
Geutebruck API Developer
2025-12-09 07:39:55 +01:00
parent edf22b09c2
commit dd2278b39a
25 changed files with 6832 additions and 387 deletions

View File

@@ -0,0 +1,192 @@
# START HERE - GeViScope Configuration Reader
This tool reads GeViScope server configuration and exports it to human-readable JSON format.
## ⚠️ Prerequisites Required
You need to install build tools before you can use this application.
### What to Install
1. **.NET SDK 8.0** (provides `dotnet` command)
2. **.NET Framework 4.8 Developer Pack** (provides targeting libraries)
### How to Install
#### Quick Links (Download both):
**Download 1:** .NET SDK 8.0
https://dotnet.microsoft.com/en-us/download/dotnet/thank-you/sdk-8.0.404-windows-x64-installer
**Download 2:** .NET Framework 4.8 Developer Pack
https://dotnet.microsoft.com/en-us/download/dotnet/thank-you/net48-developer-pack-offline-installer
#### Installation Steps:
1. Run both installers (in any order)
2. Click through the installation wizards
3. **Close and reopen** your terminal after installation
4. Verify installation: `dotnet --version` (should show 8.0.xxx)
**Total time:** About 5-10 minutes
**Full instructions:** See `C:\DEV\COPILOT\DOTNET_INSTALLATION_GUIDE.md`
---
## 🔨 How to Build
After installing the prerequisites above:
### Option 1: Use the build script
```cmd
cd C:\DEV\COPILOT\geutebruck-api\GeViScopeConfigReader
build.bat
```
### Option 2: Build manually
```cmd
cd C:\DEV\COPILOT\geutebruck-api\GeViScopeConfigReader
dotnet restore
dotnet build
```
**Output location:** `bin\Debug\net48\GeViScopeConfigReader.exe`
---
## ▶️ How to Run
### Step 1: Start GeViScope Server
```cmd
cd "C:\Program Files (x86)\GeViScopeSDK\BIN"
GSCServer.exe
```
Leave this running in a separate window.
### Step 2: Run the Configuration Reader
#### Option 1: Use the run script
```cmd
cd C:\DEV\COPILOT\geutebruck-api\GeViScopeConfigReader
run.bat
```
#### Option 2: Run manually
```cmd
cd C:\DEV\COPILOT\geutebruck-api\GeViScopeConfigReader\bin\Debug\net48
GeViScopeConfigReader.exe
```
#### Option 3: Run with custom parameters
```cmd
GeViScopeConfigReader.exe <server> <username> <password> <output.json>
```
**Example:**
```cmd
GeViScopeConfigReader.exe 192.168.1.100 admin mypassword config.json
```
---
## 📄 Output
The tool creates a JSON file (default: `geviScope_config.json`) with the complete server configuration:
```json
{
"System": {
"MediaChannels": {
"0000": {
"Name": "Camera 1",
"Enabled": true,
"GlobalNumber": 1
}
},
"Users": {
"SysAdmin": {
"Name": "System Administrator",
"Password": "abe6db4c9f5484fae8d79f2e868a673c",
"Enabled": true
}
}
}
}
```
You can open this file in any text editor or process it programmatically.
---
## 📚 Documentation
- **QUICK_START.md** - Step-by-step tutorial with examples
- **README.md** - Detailed documentation and API reference
- **Program.cs** - Source code with comments
- **C:\DEV\COPILOT\DOTNET_INSTALLATION_GUIDE.md** - Full installation guide
---
## ✅ Quick Checklist
- [ ] Install .NET SDK 8.0
- [ ] Install .NET Framework 4.8 Developer Pack
- [ ] Close and reopen terminal
- [ ] Run `build.bat` or `dotnet build`
- [ ] Start GeViScope Server (GSCServer.exe)
- [ ] Run `run.bat` or `GeViScopeConfigReader.exe`
- [ ] View the output JSON file
---
## 🎯 Why This Approach?
Instead of parsing binary .set files (which is complex and fragile), this tool:
✓ Uses the **official GeViScope SDK**
✓ Connects directly to the **running server**
✓ Reads configuration in **documented format**
✓ Exports to **human-readable JSON**
✓ Works with **any GeViScope version**
**Result:** Clean, reliable, maintainable configuration access!
---
## ❓ Troubleshooting
### "dotnet: command not found"
- Install .NET SDK 8.0 (see links above)
- Close and reopen your terminal
### "Could not find SDK for TargetFramework"
- Install .NET Framework 4.8 Developer Pack (see links above)
### "Failed to connect to server"
- Start GeViScope Server: `C:\Program Files (x86)\GeViScopeSDK\BIN\GSCServer.exe`
- Check server hostname/IP
- Verify username and password
### DLL not found errors
- Ensure GeViScope SDK is installed
- Check paths in GeViScopeConfigReader.csproj
---
## 🚀 Next Steps
Once you have the configuration exported:
1. **Examine the JSON** - Understand your server configuration
2. **Backup configurations** - Export before making changes
3. **Compare configurations** - Diff between servers or versions
4. **Automate management** - Build tools to modify configuration programmatically
See QUICK_START.md and README.md for code examples!
---
**Ready to start?** Install the prerequisites above, then run `build.bat`!