Local Development Setup
Overviewβ
The Mock Camera API runs as a standalone ASP.NET Core 10 Web API that simulates Axis camera responses. It serves static images with randomized PTZ metadata so you can develop and test the Image Acquisition Engine without VPN access to physical cameras.
Prerequisitesβ
- .NET 10 SDK
- Azure App Configuration access (uses
DefaultAzureCredential) - The
ConnectionStrings:AppConfigvalue set in local configuration
Running the Mock APIβ
cd Alert.CA.ImageAcquisition.MockCameraAPI
dotnet run
The API launches with Swagger UI enabled at the browser automatically.
Portsβ
| Profile | HTTP | HTTPS |
|---|---|---|
| Default | http://localhost:5154 | https://localhost:7156 |
| IIS Express | http://localhost:64765 | https://localhost:44307 |
Swagger UIβ
Swagger is always enabled (not environment-gated). After launching, navigate to /swagger to explore available endpoints interactively.
Connecting the Image Acquisition Engineβ
To point the Image Acquisition Engine at the Mock API instead of real cameras, update the camera device configurations in the development environment to use localhost:5154 (or localhost:7156 for HTTPS) as the camera host.
Azure Dependenciesβ
Even though this is a mock API, it still connects to Azure App Configuration and Key Vault via DefaultAzureCredential at startup. Ensure you are authenticated (e.g., via az login or Visual Studio credential) before running.
Static Image Dataβ
The project includes pre-loaded image sets in two directories:
StaticImages/β 39 single-capture images across 4 camera locations plus 19 generic imagesStaticPanoImages/β 23 panoramic images mapped to specific device IDs
These images are served directly from disk β no blob storage or external fetch is required.