Files
geutebruck/action_at_at_values.json
Administrator 14893e62a5 feat: Geutebruck GeViScope/GeViSoft Action Mapping System - MVP
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>
2025-12-31 18:10:54 +01:00

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)"
}
]
}