This MVP release provides a complete full-stack solution for managing action mappings in Geutebruck's GeViScope and GeViSoft video surveillance systems. ## Features ### Flutter Web Application (Port 8081) - Modern, responsive UI for managing action mappings - Action picker dialog with full parameter configuration - Support for both GSC (GeViScope) and G-Core server actions - Consistent UI for input and output actions with edit/delete capabilities - Real-time action mapping creation, editing, and deletion - Server categorization (GSC: prefix for GeViScope, G-Core: prefix for G-Core servers) ### FastAPI REST Backend (Port 8000) - RESTful API for action mapping CRUD operations - Action template service with comprehensive action catalog (247 actions) - Server management (G-Core and GeViScope servers) - Configuration tree reading and writing - JWT authentication with role-based access control - PostgreSQL database integration ### C# SDK Bridge (gRPC, Port 50051) - Native integration with GeViSoft SDK (GeViProcAPINET_4_0.dll) - Action mapping creation with correct binary format - Support for GSC and G-Core action types - Proper Camera parameter inclusion in action strings (fixes CrossSwitch bug) - Action ID lookup table with server-specific action IDs - Configuration reading/writing via SetupClient ## Bug Fixes - **CrossSwitch Bug**: GSC and G-Core actions now correctly display camera/PTZ head parameters in GeViSet - Action strings now include Camera parameter: `@ PanLeft (Comment: "", Camera: 101028)` - Proper filter flags and VideoInput=0 for action mappings - Correct action ID assignment (4198 for GSC, 9294 for G-Core PanLeft) ## Technical Stack - **Frontend**: Flutter Web, Dart, Dio HTTP client - **Backend**: Python FastAPI, PostgreSQL, Redis - **SDK Bridge**: C# .NET 8.0, gRPC, GeViSoft SDK - **Authentication**: JWT tokens - **Configuration**: GeViSoft .set files (binary format) ## Credentials - GeViSoft/GeViScope: username=sysadmin, password=masterkey - Default admin: username=admin, password=admin123 ## Deployment All services run on localhost: - Flutter Web: http://localhost:8081 - FastAPI: http://localhost:8000 - SDK Bridge gRPC: localhost:50051 - GeViServer: localhost (default port) Generated with Claude Code (https://claude.com/claude-code) Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
770 lines
24 KiB
JSON
770 lines
24 KiB
JSON
{
|
|
"GSC:ViewerConnectLive": [
|
|
{
|
|
"mapping": "CrossSwitch C_101027 -> M",
|
|
"output": "GSC ViewerConnectLive V <- C",
|
|
"at_at": 4296,
|
|
"action_string": "@ ViewerConnectLive ()"
|
|
},
|
|
{
|
|
"mapping": "CrossSwitchwithAlarm",
|
|
"output": "VC live",
|
|
"at_at": 4296,
|
|
"action_string": "@ ViewerConnectLive ()"
|
|
}
|
|
],
|
|
"G-Core:ViewerConnectLive": [
|
|
{
|
|
"mapping": "CrossSwitch C_101027 -> M",
|
|
"output": "GNG ViewerConnectLive V <- C_101027",
|
|
"at_at": 9392,
|
|
"action_string": "@ ViewerConnectLive (Comment: \"\")"
|
|
},
|
|
{
|
|
"mapping": "CrossSwitchwithAlarm",
|
|
"output": "GNG VC live",
|
|
"at_at": 9392,
|
|
"action_string": "@ ViewerConnectLive (Comment: \"\")"
|
|
}
|
|
],
|
|
"GSC:SystemWarning": [
|
|
{
|
|
"mapping": "Warning: demo mode for 100 min",
|
|
"output": "GSC warning: demo mode for 100 min",
|
|
"at_at": 4147,
|
|
"action_string": "@ SystemWarning (Source: 5, Message: 2, Description: \"GEVISOFT WARNING: demo mode granted for 100 min\")"
|
|
},
|
|
{
|
|
"mapping": "Warning: demo mode for 90 min",
|
|
"output": "GSC warning: demo mode for 90 min",
|
|
"at_at": 4147,
|
|
"action_string": "@ SystemWarning (Source: 5, Message: 2, Description: \"GEVISOFT WARNING: demo mode granted for 90 min\")"
|
|
},
|
|
{
|
|
"mapping": "Warning: demo mode for 80 min",
|
|
"output": "GSC warning: demo mode for 80 min",
|
|
"at_at": 4147,
|
|
"action_string": "@ SystemWarning (Source: 5, Message: 2, Description: \"GEVISOFT WARNING: demo mode granted for 80 min\")"
|
|
},
|
|
{
|
|
"mapping": "Warning: demo mode for 70 min",
|
|
"output": "GSC warning: demo mode for 70 min",
|
|
"at_at": 4147,
|
|
"action_string": "@ SystemWarning (Source: 5, Message: 2, Description: \"GEVISOFT WARNING: demo mode granted for 70 min\")"
|
|
},
|
|
{
|
|
"mapping": "Warning: demo mode for 60 min",
|
|
"output": "GSC warning: demo mode for 60 min",
|
|
"at_at": 4147,
|
|
"action_string": "@ SystemWarning (Source: 5, Message: 2, Description: \"GEVISOFT WARNING: demo mode granted for 60 min\")"
|
|
},
|
|
{
|
|
"mapping": "Warning: demo mode for 50 min",
|
|
"output": "GSC warning: demo mode for 50 min",
|
|
"at_at": 4147,
|
|
"action_string": "@ SystemWarning (Source: 5, Message: 2, Description: \"GEVISOFT WARNING: demo mode granted for 50 min\")"
|
|
},
|
|
{
|
|
"mapping": "Warning: demo mode for 40 min",
|
|
"output": "GSC warning: demo mode for 40 min",
|
|
"at_at": 4147,
|
|
"action_string": "@ SystemWarning (Source: 5, Message: 2, Description: \"GEVISOFT WARNING: demo mode granted for 40 min\")"
|
|
},
|
|
{
|
|
"mapping": "Warning: demo mode for 30 min",
|
|
"output": "GSC warning: demo mode for 30 min",
|
|
"at_at": 4147,
|
|
"action_string": "@ SystemWarning (Source: 5, Message: 2, Description: \"GEVISOFT WARNING: demo mode granted for 30 min\")"
|
|
},
|
|
{
|
|
"mapping": "Warning: demo mode for 20 min",
|
|
"output": "GSC warning: demo mode for 20 min",
|
|
"at_at": 4147,
|
|
"action_string": "@ SystemWarning (Source: 5, Message: 2, Description: \"GEVISOFT WARNING: demo mode granted for 20 min\")"
|
|
},
|
|
{
|
|
"mapping": "Warning: demo mode for 10 min",
|
|
"output": "GSC warning: demo mode for 10 min",
|
|
"at_at": 4147,
|
|
"action_string": "@ SystemWarning (Source: 5, Message: 2, Description: \"GEVISOFT WARNING: demo mode granted for 10 min\")"
|
|
},
|
|
{
|
|
"mapping": "GeViIO warning",
|
|
"output": "GSC warning: \"GeViSoft Server: client warning\"",
|
|
"at_at": 4147,
|
|
"action_string": "@ SystemWarning (Source: 5, Message: 3, Description: \"GeViSoft Server: client warning\")"
|
|
},
|
|
{
|
|
"mapping": "Warning: demo mode finished",
|
|
"output": "GSC warning: demo mode finished",
|
|
"at_at": 4147,
|
|
"action_string": "@ SystemWarning (Source: 5, Message: 2, Description: \"GEVISOFT WARNING: demo mode finished\")"
|
|
},
|
|
{
|
|
"mapping": "Warning: demo mode finished",
|
|
"output": "GNG warning: demo mode finished",
|
|
"at_at": 4147,
|
|
"action_string": "@ SystemWarning (Source: 5, Message: 2, Description: \"GEVISOFT WARNING: demo mode finished\")"
|
|
},
|
|
{
|
|
"mapping": "Warning: demo mode for 120 min",
|
|
"output": "GSC warning: demo mode for 120 min",
|
|
"at_at": 4147,
|
|
"action_string": "@ SystemWarning (Source: 5, Message: 2, Description: \"GEVISOFT WARNING: demo mode granted for 120 min\")"
|
|
},
|
|
{
|
|
"mapping": "Warning: demo mode for 110 min",
|
|
"output": "GSC warning: demo mode for 110 min",
|
|
"at_at": 4147,
|
|
"action_string": "@ SystemWarning (Source: 5, Message: 2, Description: \"GEVISOFT WARNING: demo mode granted for 110 min\")"
|
|
}
|
|
],
|
|
"GSC:ViewerClear": [
|
|
{
|
|
"mapping": "ClearVideoOutput M",
|
|
"output": "GSC ViewerClear V",
|
|
"at_at": 4298,
|
|
"action_string": "@ ViewerClear ()"
|
|
}
|
|
],
|
|
"G-Core:ViewerClear": [
|
|
{
|
|
"mapping": "ClearVideoOutput M",
|
|
"output": "GNG ViewerClear V",
|
|
"at_at": 9394,
|
|
"action_string": "@ ViewerClear (Comment: \"\")"
|
|
}
|
|
],
|
|
"GSC:SystemInfo": [
|
|
{
|
|
"mapping": "Warning: re_porter mode",
|
|
"output": "GSC info: re_porter mode active",
|
|
"at_at": 4146,
|
|
"action_string": "@ SystemInfo (Source: 5, Message: 20, Description: \"GeViSoft Server: re_porter mode active\")"
|
|
},
|
|
{
|
|
"mapping": "Info: licence satisfied",
|
|
"output": "GSC info: licence satisfied",
|
|
"at_at": 4146,
|
|
"action_string": "@ SystemInfo ()"
|
|
}
|
|
],
|
|
"G-Core:SystemInfo": [
|
|
{
|
|
"mapping": "Warning: re_porter mode",
|
|
"output": "GNG info: re_porter mode active",
|
|
"at_at": 9242,
|
|
"action_string": "@ SystemInfo (Comment: \"\", Source: 5, Message: 20, Description: \"GeViSoft Server: re_porter mode active\")"
|
|
},
|
|
{
|
|
"mapping": "Info: licence satisfied",
|
|
"output": "GNG info: licence satisfied",
|
|
"at_at": 9242,
|
|
"action_string": "@ SystemInfo (Comment: \"\")"
|
|
}
|
|
],
|
|
"GSC:SystemError": [
|
|
{
|
|
"mapping": "GeViIO: start of interface failed",
|
|
"output": "GSC error: \"GeViIO Client: start of interface failed\"",
|
|
"at_at": 4148,
|
|
"action_string": "@ SystemError (Source: 5, Message: 0, Description: \"GeViIO Client: start of interface failed\")"
|
|
},
|
|
{
|
|
"mapping": "GeViIO: interface lost",
|
|
"output": "GSC error: \"GeViIO Client: interface lost\"",
|
|
"at_at": 4148,
|
|
"action_string": "@ SystemError (Source: 5, Message: 0, Description: \"GeViIO Client: interface lost\")"
|
|
},
|
|
{
|
|
"mapping": "GeViServer: license conditions are not satisfied",
|
|
"output": "GSC error: \"GeViSoft Server: license conditions are not satisfied\"",
|
|
"at_at": 4148,
|
|
"action_string": "@ SystemError (Source: 7, Message: 23, Description: \"GeViSoft Server: license conditions are not satisfied\")"
|
|
},
|
|
{
|
|
"mapping": "GeViServer: dongle DLLs not found",
|
|
"output": "GSC error: \"GeViSoft Server: dongle DLLs not found\"",
|
|
"at_at": 4148,
|
|
"action_string": "@ SystemError (Source: 7, Message: 21, Description: \"GeViSoft Server: dongle DLLs not found\")"
|
|
},
|
|
{
|
|
"mapping": "GeViServer: dongle not found",
|
|
"output": "GSC error: \"GeViSoft Server: dongle not found\"",
|
|
"at_at": 4148,
|
|
"action_string": "@ SystemError (Source: 7, Message: 21, Description: \"GeViSoft Server: dongle not found\")"
|
|
},
|
|
{
|
|
"mapping": "GeViServer: dongle not found",
|
|
"output": "GNG error: \"GeViSoft Server: dongle not found\"",
|
|
"at_at": 4148,
|
|
"action_string": "@ SystemError (Source: 7, Message: 21, Description: \"GeViSoft Server: dongle not found\")"
|
|
}
|
|
],
|
|
"G-Core:SystemError": [
|
|
{
|
|
"mapping": "GeViIO: start of interface failed",
|
|
"output": "GNG error: \"GeViIO Client: start of interface failed\"",
|
|
"at_at": 9244,
|
|
"action_string": "@ SystemError (Comment: \"\", Source: 5, Message: 0, Description: \"GeViIO Client: start of interface failed\")"
|
|
},
|
|
{
|
|
"mapping": "GeViIO: interface lost",
|
|
"output": "GNG error: \"GeViIO Client: interface lost\"",
|
|
"at_at": 9244,
|
|
"action_string": "@ SystemError (Comment: \"\", Source: 5, Message: 0, Description: \"GeViIO Client: interface lost\")"
|
|
},
|
|
{
|
|
"mapping": "GeViServer: license conditions are not satisfied",
|
|
"output": "GNG error: \"GeViSoft Server: license conditions are not satisfied\"",
|
|
"at_at": 9244,
|
|
"action_string": "@ SystemError (Comment: \"\", Source: 7, Message: 23, Description: \"GeViSoft Server: license conditions are not satisfied\")"
|
|
},
|
|
{
|
|
"mapping": "GeViServer: dongle DLLs not found",
|
|
"output": "GNG error: \"GeViSoft Server: dongle DLLs not found\"",
|
|
"at_at": 9244,
|
|
"action_string": "@ SystemError (Comment: \"\", Source: 7, Message: 21, Description: \"GeViSoft Server: dongle DLLs not found\")"
|
|
}
|
|
],
|
|
"G-Core:SystemWarning": [
|
|
{
|
|
"mapping": "GeViIO warning",
|
|
"output": "GNG warning: \"GeViSoft Server: client warning\"",
|
|
"at_at": 9243,
|
|
"action_string": "@ SystemWarning (Comment: \"\", Source: 5, Message: 3, Description: \"GeViSoft Server: client warning\")"
|
|
}
|
|
],
|
|
"GSC:SetDigitalOutput": [
|
|
{
|
|
"mapping": "InputContact 1 True",
|
|
"output": "Set digital output (1,close)",
|
|
"at_at": 4127,
|
|
"action_string": "@ SetDigitalOutput (Contact: 1, State: 1)"
|
|
},
|
|
{
|
|
"mapping": "InputContact 2 True",
|
|
"output": "Set digital output (2,close)",
|
|
"at_at": 4127,
|
|
"action_string": "@ SetDigitalOutput (Contact: 2, State: 1)"
|
|
},
|
|
{
|
|
"mapping": "InputContact 3 True",
|
|
"output": "Set digital output (3,close)",
|
|
"at_at": 4127,
|
|
"action_string": "@ SetDigitalOutput (Contact: 3, State: 1)"
|
|
},
|
|
{
|
|
"mapping": "InputContact 4 True",
|
|
"output": "Set digital output (4,close)",
|
|
"at_at": 4127,
|
|
"action_string": "@ SetDigitalOutput (Contact: 4, State: 1)"
|
|
},
|
|
{
|
|
"mapping": "InputContact 5 True",
|
|
"output": "Set digital output (5,close)",
|
|
"at_at": 4127,
|
|
"action_string": "@ SetDigitalOutput (Contact: 5, State: 1)"
|
|
},
|
|
{
|
|
"mapping": "InputContact 6 True",
|
|
"output": "Set digital output (6,close)",
|
|
"at_at": 4127,
|
|
"action_string": "@ SetDigitalOutput (Contact: 6, State: 1)"
|
|
},
|
|
{
|
|
"mapping": "InputContact 7 True",
|
|
"output": "Set digital output (7,close)",
|
|
"at_at": 4127,
|
|
"action_string": "@ SetDigitalOutput (Contact: 7, State: 1)"
|
|
},
|
|
{
|
|
"mapping": "InputContact 8 True",
|
|
"output": "Set digital output (8,close)",
|
|
"at_at": 4127,
|
|
"action_string": "@ SetDigitalOutput (Contact: 8, State: 1)"
|
|
},
|
|
{
|
|
"mapping": "InputContact 1 False",
|
|
"output": "Set digital output (1,open)",
|
|
"at_at": 4127,
|
|
"action_string": "@ SetDigitalOutput (Contact: 1, State: 0)"
|
|
},
|
|
{
|
|
"mapping": "InputContact 2 False",
|
|
"output": "Set digital output (2,open)",
|
|
"at_at": 4127,
|
|
"action_string": "@ SetDigitalOutput (Contact: 2, State: 0)"
|
|
},
|
|
{
|
|
"mapping": "InputContact 3 False",
|
|
"output": "Set digital output (3,open)",
|
|
"at_at": 4127,
|
|
"action_string": "@ SetDigitalOutput (Contact: 3, State: 0)"
|
|
},
|
|
{
|
|
"mapping": "InputContact 4 False",
|
|
"output": "Set digital output (4,open)",
|
|
"at_at": 4127,
|
|
"action_string": "@ SetDigitalOutput (Contact: 4, State: 0)"
|
|
},
|
|
{
|
|
"mapping": "InputContact 5 False",
|
|
"output": "Set digital output (5,open)",
|
|
"at_at": 4127,
|
|
"action_string": "@ SetDigitalOutput (Contact: 5, State: 0)"
|
|
},
|
|
{
|
|
"mapping": "InputContact 6 False",
|
|
"output": "Set digital output (6,open)",
|
|
"at_at": 4127,
|
|
"action_string": "@ SetDigitalOutput (Contact: 6, State: 0)"
|
|
},
|
|
{
|
|
"mapping": "InputContact 7 False",
|
|
"output": "Set digital output (7,open)",
|
|
"at_at": 4127,
|
|
"action_string": "@ SetDigitalOutput (Contact: 7, State: 0)"
|
|
},
|
|
{
|
|
"mapping": "InputContact 8 False",
|
|
"output": "Set digital output (8,open)",
|
|
"at_at": 4127,
|
|
"action_string": "@ SetDigitalOutput (Contact: 8, State: 0)"
|
|
}
|
|
],
|
|
"G-Core:SetDigitalOutput": [
|
|
{
|
|
"mapping": "InputContact 1 True",
|
|
"output": "Set digital output (1,close)",
|
|
"at_at": 9223,
|
|
"action_string": "@ SetDigitalOutput (Comment: \"\", Contact: 1, State: 1)"
|
|
},
|
|
{
|
|
"mapping": "InputContact 2 True",
|
|
"output": "Set digital output (2,close)",
|
|
"at_at": 9223,
|
|
"action_string": "@ SetDigitalOutput (Comment: \"\", Contact: 2, State: 1)"
|
|
},
|
|
{
|
|
"mapping": "InputContact 3 True",
|
|
"output": "Set digital output (3,close)",
|
|
"at_at": 9223,
|
|
"action_string": "@ SetDigitalOutput (Comment: \"\", Contact: 3, State: 1)"
|
|
},
|
|
{
|
|
"mapping": "InputContact 4 True",
|
|
"output": "Set digital output (4,close)",
|
|
"at_at": 9223,
|
|
"action_string": "@ SetDigitalOutput (Comment: \"\", Contact: 4, State: 1)"
|
|
},
|
|
{
|
|
"mapping": "InputContact 5 True",
|
|
"output": "Set digital output (5,close)",
|
|
"at_at": 9223,
|
|
"action_string": "@ SetDigitalOutput (Comment: \"\", Contact: 5, State: 1)"
|
|
},
|
|
{
|
|
"mapping": "InputContact 6 True",
|
|
"output": "Set digital output (6,close)",
|
|
"at_at": 9223,
|
|
"action_string": "@ SetDigitalOutput (Comment: \"\", Contact: 6, State: 1)"
|
|
},
|
|
{
|
|
"mapping": "InputContact 7 True",
|
|
"output": "Set digital output (7,close)",
|
|
"at_at": 9223,
|
|
"action_string": "@ SetDigitalOutput (Comment: \"\", Contact: 7, State: 1)"
|
|
},
|
|
{
|
|
"mapping": "InputContact 8 True",
|
|
"output": "Set digital output (8,close)",
|
|
"at_at": 9223,
|
|
"action_string": "@ SetDigitalOutput (Comment: \"\", Contact: 8, State: 1)"
|
|
},
|
|
{
|
|
"mapping": "InputContact 1 False",
|
|
"output": "Set digital output (1,open)",
|
|
"at_at": 9223,
|
|
"action_string": "@ SetDigitalOutput (Comment: \"\", Contact: 1, State: 0)"
|
|
},
|
|
{
|
|
"mapping": "InputContact 2 False",
|
|
"output": "Set digital output (2,open)",
|
|
"at_at": 9223,
|
|
"action_string": "@ SetDigitalOutput (Comment: \"\", Contact: 2, State: 0)"
|
|
},
|
|
{
|
|
"mapping": "InputContact 3 False",
|
|
"output": "Set digital output (3,open)",
|
|
"at_at": 9223,
|
|
"action_string": "@ SetDigitalOutput (Comment: \"\", Contact: 3, State: 0)"
|
|
},
|
|
{
|
|
"mapping": "InputContact 4 False",
|
|
"output": "Set digital output (4,open)",
|
|
"at_at": 9223,
|
|
"action_string": "@ SetDigitalOutput (Comment: \"\", Contact: 4, State: 0)"
|
|
},
|
|
{
|
|
"mapping": "InputContact 5 False",
|
|
"output": "Set digital output (5,open)",
|
|
"at_at": 9223,
|
|
"action_string": "@ SetDigitalOutput (Comment: \"\", Contact: 5, State: 0)"
|
|
},
|
|
{
|
|
"mapping": "InputContact 6 False",
|
|
"output": "Set digital output (6,open)",
|
|
"at_at": 9223,
|
|
"action_string": "@ SetDigitalOutput (Comment: \"\", Contact: 6, State: 0)"
|
|
},
|
|
{
|
|
"mapping": "InputContact 7 False",
|
|
"output": "Set digital output (7,open)",
|
|
"at_at": 9223,
|
|
"action_string": "@ SetDigitalOutput (Comment: \"\", Contact: 7, State: 0)"
|
|
},
|
|
{
|
|
"mapping": "InputContact 8 False",
|
|
"output": "Set digital output (8,open)",
|
|
"at_at": 9223,
|
|
"action_string": "@ SetDigitalOutput (Comment: \"\", Contact: 8, State: 0)"
|
|
}
|
|
],
|
|
"GSC:CustomAction": [
|
|
{
|
|
"mapping": "GscDiagnostics still running.",
|
|
"output": "GscCustomAction:GscDiagnostics still running.",
|
|
"at_at": 4104,
|
|
"action_string": "@ CustomAction (Int: 0, String: \"GscDiagnostics still running.\")"
|
|
}
|
|
],
|
|
"G-Core:CustomAction": [
|
|
{
|
|
"mapping": "GscDiagnostics still running.",
|
|
"output": "GNGCustomAction:GscDiagnostics still running.",
|
|
"at_at": 9200,
|
|
"action_string": "@ CustomAction (Comment: \"\", Int: 0, String: \"G-Diagnostics still running.\")"
|
|
}
|
|
],
|
|
"GSC:PanLeft": [
|
|
{
|
|
"mapping": "GeVi PanLeft_101027",
|
|
"output": "GSC PanLeft",
|
|
"at_at": 4198,
|
|
"action_string": "@ PanLeft ()"
|
|
}
|
|
],
|
|
"G-Core:PanLeft": [
|
|
{
|
|
"mapping": "GeVi PanLeft_101027",
|
|
"output": "GNG PanLeft_101027",
|
|
"at_at": 9294,
|
|
"action_string": "@ PanLeft (Comment: \"\", Camera: 101027)"
|
|
}
|
|
],
|
|
"GSC:PanStop": [
|
|
{
|
|
"mapping": "GeVi PanStop_101027",
|
|
"output": "GSC PanStop",
|
|
"at_at": 4199,
|
|
"action_string": "@ PanStop ()"
|
|
}
|
|
],
|
|
"G-Core:PanStop": [
|
|
{
|
|
"mapping": "GeVi PanStop_101027",
|
|
"output": "GNG PanStop_101027",
|
|
"at_at": 9295,
|
|
"action_string": "@ PanStop (Comment: \"\", Camera: 101027)"
|
|
}
|
|
],
|
|
"GSC:TiltDown": [
|
|
{
|
|
"mapping": "GeVi TiltDown_101027",
|
|
"output": "GSC TiltDown",
|
|
"at_at": 4201,
|
|
"action_string": "@ TiltDown ()"
|
|
}
|
|
],
|
|
"G-Core:TiltDown": [
|
|
{
|
|
"mapping": "GeVi TiltDown_101027",
|
|
"output": "GNG TiltDown_101027",
|
|
"at_at": 9297,
|
|
"action_string": "@ TiltDown (Comment: \"\", Camera: 101027)"
|
|
}
|
|
],
|
|
"GSC:TiltUp": [
|
|
{
|
|
"mapping": "GeVi TiltUp_101027",
|
|
"output": "GSC TiltUp",
|
|
"at_at": 4200,
|
|
"action_string": "@ TiltUp ()"
|
|
}
|
|
],
|
|
"G-Core:TiltUp": [
|
|
{
|
|
"mapping": "GeVi TiltUp_101027",
|
|
"output": "GNG TiltUp_101027",
|
|
"at_at": 9296,
|
|
"action_string": "@ TiltUp (Comment: \"\", Camera: 101027)"
|
|
}
|
|
],
|
|
"GSC:TiltStop": [
|
|
{
|
|
"mapping": "GeVi TiltStop_101027",
|
|
"output": "GSC TiltStop",
|
|
"at_at": 4202,
|
|
"action_string": "@ TiltStop ()"
|
|
}
|
|
],
|
|
"G-Core:TiltStop": [
|
|
{
|
|
"mapping": "GeVi TiltStop_101027",
|
|
"output": "GNG TiltStop_101027",
|
|
"at_at": 9298,
|
|
"action_string": "@ TiltStop (Comment: \"\", Camera: 101027)"
|
|
}
|
|
],
|
|
"GSC:ZoomIn": [
|
|
{
|
|
"mapping": "GeVi ZoomIn_101027",
|
|
"output": "Gsc ZoomIn",
|
|
"at_at": 4203,
|
|
"action_string": "@ ZoomIn ()"
|
|
}
|
|
],
|
|
"G-Core:ZoomIn": [
|
|
{
|
|
"mapping": "GeVi ZoomIn_101027",
|
|
"output": "GNG ZoomIn_101027",
|
|
"at_at": 9299,
|
|
"action_string": "@ ZoomIn (Comment: \"\", Camera: 101027)"
|
|
}
|
|
],
|
|
"GSC:ZoomOut": [
|
|
{
|
|
"mapping": "GeVi ZoomOut_101027",
|
|
"output": "Gsc ZoomOut",
|
|
"at_at": 4204,
|
|
"action_string": "@ ZoomOut ()"
|
|
}
|
|
],
|
|
"G-Core:ZoomOut": [
|
|
{
|
|
"mapping": "GeVi ZoomOut_101027",
|
|
"output": "GNG ZoomOut_101027",
|
|
"at_at": 9300,
|
|
"action_string": "@ ZoomOut (Comment: \"\", Camera: 101027)"
|
|
}
|
|
],
|
|
"GSC:ZoomStop": [
|
|
{
|
|
"mapping": "GeVi ZoomStop_101027",
|
|
"output": "Gsc ZoomStop",
|
|
"at_at": 4205,
|
|
"action_string": "@ ZoomStop ()"
|
|
}
|
|
],
|
|
"G-Core:ZoomStop": [
|
|
{
|
|
"mapping": "GeVi ZoomStop_101027",
|
|
"output": "GNG ZoomStop_101027",
|
|
"at_at": 9301,
|
|
"action_string": "@ ZoomStop (Comment: \"\", Camera: 101027)"
|
|
}
|
|
],
|
|
"GSC:FocusFar": [
|
|
{
|
|
"mapping": "GeVi FocusFar 0_C101027",
|
|
"output": "Gsc FocusFar 128",
|
|
"at_at": 4207,
|
|
"action_string": "@ FocusFar (Speed: 128)"
|
|
}
|
|
],
|
|
"G-Core:FocusFar": [
|
|
{
|
|
"mapping": "GeVi FocusFar 0_C101027",
|
|
"output": "GNG FocusFar 128_C101027",
|
|
"at_at": 9303,
|
|
"action_string": "@ FocusFar (Comment: \"\", Camera: 101027, Speed: 128)"
|
|
}
|
|
],
|
|
"GSC:FocusNear": [
|
|
{
|
|
"mapping": "GeVi FocusNear 0_C101027",
|
|
"output": "Gsc FocusNear 128",
|
|
"at_at": 4206,
|
|
"action_string": "@ FocusNear (Speed: 128)"
|
|
}
|
|
],
|
|
"G-Core:FocusNear": [
|
|
{
|
|
"mapping": "GeVi FocusNear 0_C101027",
|
|
"output": "GNG FocusNear 128_C101027",
|
|
"at_at": 9302,
|
|
"action_string": "@ FocusNear (Comment: \"\", Camera: 101027, Speed: 128)"
|
|
}
|
|
],
|
|
"GSC:FocusStop": [
|
|
{
|
|
"mapping": "GeVi FocusStop_101027",
|
|
"output": "Gsc FocusStop",
|
|
"at_at": 4208,
|
|
"action_string": "@ FocusStop ()"
|
|
}
|
|
],
|
|
"G-Core:FocusStop": [
|
|
{
|
|
"mapping": "GeVi FocusStop_101027",
|
|
"output": "GNG FocusStop_101027",
|
|
"at_at": 9304,
|
|
"action_string": "@ FocusStop (Comment: \"\", Camera: 101027)"
|
|
}
|
|
],
|
|
"GSC:DefaultPosCallUp": [
|
|
{
|
|
"mapping": "GeVi DefaultPosCallUp_101027",
|
|
"output": "Gsc MoveToDefaultPostion",
|
|
"at_at": 4213,
|
|
"action_string": "@ DefaultPosCallUp ()"
|
|
}
|
|
],
|
|
"G-Core:DefaultPosCallUp": [
|
|
{
|
|
"mapping": "GeVi DefaultPosCallUp_101027",
|
|
"output": "GNG MoveToDefaultPostion_101027",
|
|
"at_at": 9309,
|
|
"action_string": "@ DefaultPosCallUp (Comment: \"\", Camera: 101027)"
|
|
}
|
|
],
|
|
"GSC:DefaultPosClear": [
|
|
{
|
|
"mapping": "GeVi DefaultPosClear_101027",
|
|
"output": "Gsc ClearDefaultPostion",
|
|
"at_at": 4238,
|
|
"action_string": "@ DefaultPosClear ()"
|
|
}
|
|
],
|
|
"G-Core:DefaultPosClear": [
|
|
{
|
|
"mapping": "GeVi DefaultPosClear_101027",
|
|
"output": "GNG ClearDefaultPostion_101027",
|
|
"at_at": 9334,
|
|
"action_string": "@ DefaultPosClear (Comment: \"\", Camera: 101027)"
|
|
}
|
|
],
|
|
"GSC:DefaultPosSave": [
|
|
{
|
|
"mapping": "GeVi DefaultPosSave_101027",
|
|
"output": "Gsc SaveDafaultPostion",
|
|
"at_at": 4236,
|
|
"action_string": "@ DefaultPosSave ()"
|
|
}
|
|
],
|
|
"G-Core:DefaultPosSave": [
|
|
{
|
|
"mapping": "GeVi DefaultPosSave_101027",
|
|
"output": "GNG SaveDafaultPostion_101027",
|
|
"at_at": 9332,
|
|
"action_string": "@ DefaultPosSave (Comment: \"\", Camera: 101027)"
|
|
}
|
|
],
|
|
"GSC:PrePosCallUp": [
|
|
{
|
|
"mapping": "GeVi PrePosCallUp",
|
|
"output": "Gsc MoveToPresentPostion",
|
|
"at_at": 4212,
|
|
"action_string": "@ PrePosCallUp ()"
|
|
}
|
|
],
|
|
"G-Core:PrePosCallUp": [
|
|
{
|
|
"mapping": "GeVi PrePosCallUp",
|
|
"output": "GNG MoveToPresentPostion",
|
|
"at_at": 9308,
|
|
"action_string": "@ PrePosCallUp (Comment: \"\")"
|
|
}
|
|
],
|
|
"GSC:PrePosClear": [
|
|
{
|
|
"mapping": "GeVi PrePosClear",
|
|
"output": "Gsc ClearPresentPostion",
|
|
"at_at": 4237,
|
|
"action_string": "@ PrePosClear ()"
|
|
}
|
|
],
|
|
"G-Core:PrePosClear": [
|
|
{
|
|
"mapping": "GeVi PrePosClear",
|
|
"output": "GNG ClearPresentPostion",
|
|
"at_at": 9333,
|
|
"action_string": "@ PrePosClear (Comment: \"\")"
|
|
}
|
|
],
|
|
"GSC:PrePosSave": [
|
|
{
|
|
"mapping": "GeVi PrePosSave",
|
|
"output": "Gsc SavePresentPostion",
|
|
"at_at": 4235,
|
|
"action_string": "@ PrePosSave ()"
|
|
}
|
|
],
|
|
"G-Core:PrePosSave": [
|
|
{
|
|
"mapping": "GeVi PrePosSave",
|
|
"output": "GNG SavePresentPostion",
|
|
"at_at": 9331,
|
|
"action_string": "@ PrePosSave (Comment: \"\")"
|
|
}
|
|
],
|
|
"GSC:IrisClose": [
|
|
{
|
|
"mapping": "GeVi IrisClose_101027",
|
|
"output": "Gsc IrisClose",
|
|
"at_at": 4210,
|
|
"action_string": "@ IrisClose ()"
|
|
}
|
|
],
|
|
"G-Core:IrisClose": [
|
|
{
|
|
"mapping": "GeVi IrisClose_101027",
|
|
"output": "GNG IrisClose_101027",
|
|
"at_at": 9306,
|
|
"action_string": "@ IrisClose (Comment: \"\", Camera: 101027)"
|
|
}
|
|
],
|
|
"GSC:IrisOpen": [
|
|
{
|
|
"mapping": "GeVi IrisOpen_101027",
|
|
"output": "Gsc IrisOpen",
|
|
"at_at": 4209,
|
|
"action_string": "@ IrisOpen ()"
|
|
}
|
|
],
|
|
"G-Core:IrisOpen": [
|
|
{
|
|
"mapping": "GeVi IrisOpen_101027",
|
|
"output": "GNG IrisOpen_101027",
|
|
"at_at": 9305,
|
|
"action_string": "@ IrisOpen (Comment: \"\", Camera: 101027)"
|
|
}
|
|
],
|
|
"GSC:IrisStop": [
|
|
{
|
|
"mapping": "GeVi IrisStop_101027",
|
|
"output": "Gsc IrisStop",
|
|
"at_at": 4211,
|
|
"action_string": "@ IrisStop ()"
|
|
}
|
|
],
|
|
"G-Core:IrisStop": [
|
|
{
|
|
"mapping": "GeVi IrisStop_101027",
|
|
"output": "GNG IrisStop_101027",
|
|
"at_at": 9307,
|
|
"action_string": "@ IrisStop (Comment: \"\", Camera: 101027)"
|
|
}
|
|
]
|
|
} |