@aryacode/dsh-engineering 0.4.7 → 0.4.20

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (160) hide show
  1. package/CHANGELOG.md +178 -0
  2. package/README.md +34 -26
  3. package/cordis.patch.yml +7 -6
  4. package/entries/config.js +62 -0
  5. package/entries/ftview.js +5 -4
  6. package/entries/l5x.js +47 -15
  7. package/entries/mwi.js +26 -6
  8. package/entries/optix.js +105 -0
  9. package/lib/client.js +335 -6
  10. package/package.json +11 -10
  11. package/vendor/l5x/studio-bridge/NuGet.Config +1 -1
  12. package/vendor/mwi/README.md +39 -18
  13. package/vendor/mwi/SKILL.md +26 -20
  14. package/vendor/mwi/bridge/mw_bridge.ps1 +2763 -2763
  15. package/vendor/mwi/bridge/sdk-interop-importer.cs +30 -30
  16. package/vendor/mwi/bridge/sdk-variable-reader.cs +22 -22
  17. package/vendor/mwi/code/engine/motionworks_iec_mcp/build.py +339 -339
  18. package/vendor/mwi/code/engine/motionworks_iec_mcp/cfb.py +765 -765
  19. package/vendor/mwi/code/engine/motionworks_iec_mcp/declarations.py +399 -399
  20. package/vendor/mwi/code/engine/motionworks_iec_mcp/ide.py +313 -313
  21. package/vendor/mwi/code/engine/motionworks_iec_mcp/manuals.py +520 -520
  22. package/vendor/mwi/code/engine/motionworks_iec_mcp/mwt_bind.py +133 -133
  23. package/vendor/mwi/code/engine/motionworks_iec_mcp/reference_data/catalog.json +672 -672
  24. package/vendor/mwi/code/engine/motionworks_iec_mcp/reference_data/patterns.json +86 -86
  25. package/vendor/mwi/code/engine/motionworks_iec_mcp/restore.py +208 -208
  26. package/vendor/mwi/code/engine/motionworks_iec_mcp/staging.py +128 -128
  27. package/vendor/mwi/code/engine/motionworks_iec_mcp/stlint.py +673 -673
  28. package/vendor/mwi/code/engine/motionworks_iec_mcp/tree_writer.py +790 -790
  29. package/vendor/mwi/code/engine/motionworks_iec_mcp/writer.py +642 -642
  30. package/vendor/mwi/lib/core/code-engine.d.ts +13 -0
  31. package/vendor/mwi/lib/core/code-engine.js +18 -1
  32. package/vendor/mwi/lib/edit.d.ts +1 -1
  33. package/vendor/mwi/lib/edit.js +1 -1
  34. package/vendor/mwi/lib/read/service.js +8 -1
  35. package/vendor/mwi/lib/session/backup.d.ts +55 -0
  36. package/vendor/mwi/lib/session/backup.js +232 -0
  37. package/vendor/mwi/lib/session/project.d.ts +4 -1
  38. package/vendor/mwi/lib/session/project.js +13 -2
  39. package/vendor/mwi/lib/session/service.d.ts +13 -6
  40. package/vendor/mwi/lib/session/service.js +127 -36
  41. package/vendor/mwi/lib/session/workspace.d.ts +10 -0
  42. package/vendor/mwi/lib/session/workspace.js +53 -3
  43. package/vendor/mwi/lib/skill.d.ts +2 -2
  44. package/vendor/mwi/lib/skill.js +2 -2
  45. package/vendor/mwi/lib/tools/edit.d.ts +3 -3
  46. package/vendor/mwi/lib/tools/edit.js +14 -15
  47. package/vendor/mwi/lib/tools/read.js +1 -1
  48. package/vendor/mwi/lib/tools/session.js +13 -9
  49. package/vendor/optix/templates/arya-optix-ipc/project/AryaNewHMIProject_IPC.optix +81 -81
  50. package/vendor/optix/templates/arya-optix-ipc/project/AryaNewHMIProject_IPC.optix.design +38 -38
  51. package/vendor/optix/templates/arya-optix-ipc/project/Nodes/Alarms/Alarms.yaml +3 -3
  52. package/vendor/optix/templates/arya-optix-ipc/project/Nodes/AryaNewHMIProject_IPC.yaml +67 -67
  53. package/vendor/optix/templates/arya-optix-ipc/project/Nodes/CommDrivers/CommDrivers.yaml +2 -2
  54. package/vendor/optix/templates/arya-optix-ipc/project/Nodes/Converters/Converters.yaml +2 -2
  55. package/vendor/optix/templates/arya-optix-ipc/project/Nodes/DataStores/DataStores.yaml +2 -2
  56. package/vendor/optix/templates/arya-optix-ipc/project/Nodes/Loggers/Loggers.yaml +2 -2
  57. package/vendor/optix/templates/arya-optix-ipc/project/Nodes/MQTT/MQTT.yaml +2 -2
  58. package/vendor/optix/templates/arya-optix-ipc/project/Nodes/Model/Model.yaml +2 -2
  59. package/vendor/optix/templates/arya-optix-ipc/project/Nodes/NetLogic/NetLogic.yaml +26 -26
  60. package/vendor/optix/templates/arya-optix-ipc/project/Nodes/OPC-UA/OPC-UA.yaml +2 -2
  61. package/vendor/optix/templates/arya-optix-ipc/project/Nodes/Recipes/Recipes.yaml +2 -2
  62. package/vendor/optix/templates/arya-optix-ipc/project/Nodes/Reports/Reports.yaml +2 -2
  63. package/vendor/optix/templates/arya-optix-ipc/project/Nodes/Retentivity/Retentivity.yaml +57 -57
  64. package/vendor/optix/templates/arya-optix-ipc/project/Nodes/Security/Groups/Groups.yaml +3 -3
  65. package/vendor/optix/templates/arya-optix-ipc/project/Nodes/Security/Roles/Roles.yaml +3 -3
  66. package/vendor/optix/templates/arya-optix-ipc/project/Nodes/Security/Security.yaml +7 -7
  67. package/vendor/optix/templates/arya-optix-ipc/project/Nodes/Security/Users/Users.yaml +3 -3
  68. package/vendor/optix/templates/arya-optix-ipc/project/Nodes/System/System.yaml +2 -2
  69. package/vendor/optix/templates/arya-optix-ipc/project/Nodes/Translations/Translations.yaml +16 -16
  70. package/vendor/optix/templates/arya-optix-ipc/project/Nodes/UI/Keyboards/Keyboards.yaml +2 -2
  71. package/vendor/optix/templates/arya-optix-ipc/project/Nodes/UI/Screens/Screens.yaml +2 -2
  72. package/vendor/optix/templates/arya-optix-ipc/project/Nodes/UI/UI.yaml +250 -250
  73. package/vendor/optix/templates/arya-optix-ipc/project/ProjectFiles/NetSolution/.vscode/launch.json +18 -18
  74. package/vendor/optix/templates/arya-optix-ipc/project/ProjectFiles/NetSolution/AryaNewHMIProject_IPC.code-workspace +9 -9
  75. package/vendor/optix/templates/arya-optix-ipc/project/ProjectFiles/NetSolution/AryaNewHMIProject_IPC.csproj +19 -19
  76. package/vendor/optix/templates/arya-optix-ipc/project/ProjectFiles/NetSolution/AryaNewHMIProject_IPC.references +172 -172
  77. package/vendor/optix/templates/arya-optix-ipc/project/ProjectFiles/NetSolution/AryaNewHMIProject_IPC.sln +21 -21
  78. package/vendor/optix/templates/arya-optix-ipc/project/ProjectFiles/NetSolution/Private/TypeConstants.cs +20 -20
  79. package/vendor/optix/templates/arya-optix-ipc/project/ProjectFiles/NetSolution/Private/UITypeDefinitions.cs +11 -11
  80. package/vendor/optix/templates/arya-optix-ipc/project/ProjectFiles/NetSolution/StudioMCPBridge.cs +4340 -4340
  81. package/vendor/optix/templates/arya-optix-ipc/project/ProjectFiles/UserDefinedModule.xml +26 -26
  82. package/vendor/optix/templates/arya-optix-panel/project/AryaNewHMIProject_OptixPanel.optix +97 -97
  83. package/vendor/optix/templates/arya-optix-panel/project/AryaNewHMIProject_OptixPanel.optix.design +38 -38
  84. package/vendor/optix/templates/arya-optix-panel/project/Nodes/Alarms/Alarms.yaml +3 -3
  85. package/vendor/optix/templates/arya-optix-panel/project/Nodes/AryaNewHMIProject_OptixPanel.yaml +67 -67
  86. package/vendor/optix/templates/arya-optix-panel/project/Nodes/CommDrivers/CommDrivers.yaml +2 -2
  87. package/vendor/optix/templates/arya-optix-panel/project/Nodes/Converters/Converters.yaml +2 -2
  88. package/vendor/optix/templates/arya-optix-panel/project/Nodes/DataStores/DataStores.yaml +2 -2
  89. package/vendor/optix/templates/arya-optix-panel/project/Nodes/Loggers/Loggers.yaml +2 -2
  90. package/vendor/optix/templates/arya-optix-panel/project/Nodes/MQTT/MQTT.yaml +2 -2
  91. package/vendor/optix/templates/arya-optix-panel/project/Nodes/Model/Model.yaml +2 -2
  92. package/vendor/optix/templates/arya-optix-panel/project/Nodes/NetLogic/NetLogic.yaml +26 -26
  93. package/vendor/optix/templates/arya-optix-panel/project/Nodes/OPC-UA/OPC-UA.yaml +2 -2
  94. package/vendor/optix/templates/arya-optix-panel/project/Nodes/Recipes/Recipes.yaml +2 -2
  95. package/vendor/optix/templates/arya-optix-panel/project/Nodes/Reports/Reports.yaml +2 -2
  96. package/vendor/optix/templates/arya-optix-panel/project/Nodes/Retentivity/Retentivity.yaml +57 -57
  97. package/vendor/optix/templates/arya-optix-panel/project/Nodes/Security/Groups/Groups.yaml +3 -3
  98. package/vendor/optix/templates/arya-optix-panel/project/Nodes/Security/Roles/Roles.yaml +3 -3
  99. package/vendor/optix/templates/arya-optix-panel/project/Nodes/Security/Security.yaml +7 -7
  100. package/vendor/optix/templates/arya-optix-panel/project/Nodes/Security/Users/Users.yaml +3 -3
  101. package/vendor/optix/templates/arya-optix-panel/project/Nodes/System/System.yaml +444 -444
  102. package/vendor/optix/templates/arya-optix-panel/project/Nodes/Translations/Translations.yaml +81 -81
  103. package/vendor/optix/templates/arya-optix-panel/project/Nodes/UI/Keyboards/Keyboards.yaml +2 -2
  104. package/vendor/optix/templates/arya-optix-panel/project/Nodes/UI/Screens/Screens.yaml +2 -2
  105. package/vendor/optix/templates/arya-optix-panel/project/Nodes/UI/SettingsWidgets/DeviceSettingsWidget/DeviceSettingsWidget.yaml +163 -163
  106. package/vendor/optix/templates/arya-optix-panel/project/Nodes/UI/SettingsWidgets/DeviceSettingsWidget/DeviceSettingsWidgetComponents/DeviceSettingsWidgetComponents.yaml +1663 -1663
  107. package/vendor/optix/templates/arya-optix-panel/project/Nodes/UI/SettingsWidgets/FactoryTalkRemoteAccessWidget/FTRemoteAccessWidgetComponents/FTRemoteAccessWidgetComponents.yaml +2471 -2471
  108. package/vendor/optix/templates/arya-optix-panel/project/Nodes/UI/SettingsWidgets/FactoryTalkRemoteAccessWidget/FactoryTalkRemoteAccessWidget.yaml +218 -218
  109. package/vendor/optix/templates/arya-optix-panel/project/Nodes/UI/SettingsWidgets/NetworkSettingsWidget/NetworkSettingsWidget.yaml +524 -524
  110. package/vendor/optix/templates/arya-optix-panel/project/Nodes/UI/SettingsWidgets/NetworkSettingsWidget/NetworkSettingsWidgetComponents/NetworkSettingsWidgetComponents.yaml +690 -690
  111. package/vendor/optix/templates/arya-optix-panel/project/Nodes/UI/SettingsWidgets/SettingsWidgets.yaml +1265 -1265
  112. package/vendor/optix/templates/arya-optix-panel/project/Nodes/UI/UI.yaml +252 -252
  113. package/vendor/optix/templates/arya-optix-panel/project/ProjectFiles/NetSolution/.vscode/launch.json +18 -18
  114. package/vendor/optix/templates/arya-optix-panel/project/ProjectFiles/NetSolution/ApplicationNameLogic.cs +19 -19
  115. package/vendor/optix/templates/arya-optix-panel/project/ProjectFiles/NetSolution/AryaNewHMIProject_OptixPanel.code-workspace +9 -9
  116. package/vendor/optix/templates/arya-optix-panel/project/ProjectFiles/NetSolution/AryaNewHMIProject_OptixPanel.csproj +19 -19
  117. package/vendor/optix/templates/arya-optix-panel/project/ProjectFiles/NetSolution/AryaNewHMIProject_OptixPanel.references +172 -172
  118. package/vendor/optix/templates/arya-optix-panel/project/ProjectFiles/NetSolution/AryaNewHMIProject_OptixPanel.sln +21 -21
  119. package/vendor/optix/templates/arya-optix-panel/project/ProjectFiles/NetSolution/ConnectionSwitchLogic.cs +74 -74
  120. package/vendor/optix/templates/arya-optix-panel/project/ProjectFiles/NetSolution/DateAndTimeWidgetLogic.cs +420 -420
  121. package/vendor/optix/templates/arya-optix-panel/project/ProjectFiles/NetSolution/DeviceSettingsWidgetLogic.cs +34 -34
  122. package/vendor/optix/templates/arya-optix-panel/project/ProjectFiles/NetSolution/FTOptixStudioVersionLogic.cs +47 -47
  123. package/vendor/optix/templates/arya-optix-panel/project/ProjectFiles/NetSolution/FTRemoteAccessWidgetSetupLogic.cs +153 -153
  124. package/vendor/optix/templates/arya-optix-panel/project/ProjectFiles/NetSolution/IncomingConnectionApprovalLogic.cs +118 -118
  125. package/vendor/optix/templates/arya-optix-panel/project/ProjectFiles/NetSolution/IncomingConnectionReceiverLogic.cs +166 -166
  126. package/vendor/optix/templates/arya-optix-panel/project/ProjectFiles/NetSolution/NetworkConfiguratorEditModelsLogic.cs +56 -56
  127. package/vendor/optix/templates/arya-optix-panel/project/ProjectFiles/NetSolution/NetworkInterfaceLogic.cs +138 -138
  128. package/vendor/optix/templates/arya-optix-panel/project/ProjectFiles/NetSolution/NetworkInterfacesEditModelReaderLogic.cs +87 -87
  129. package/vendor/optix/templates/arya-optix-panel/project/ProjectFiles/NetSolution/NetworkInterfacesEditModelToSystemWriterLogic.cs +139 -139
  130. package/vendor/optix/templates/arya-optix-panel/project/ProjectFiles/NetSolution/NetworkSettingsLogic.cs +168 -168
  131. package/vendor/optix/templates/arya-optix-panel/project/ProjectFiles/NetSolution/Private/FTRemoteAccessWidgetDataObject.cs +106 -106
  132. package/vendor/optix/templates/arya-optix-panel/project/ProjectFiles/NetSolution/Private/TypeConstants.cs +37 -37
  133. package/vendor/optix/templates/arya-optix-panel/project/ProjectFiles/NetSolution/Private/UITypeDefinitions.cs +91 -91
  134. package/vendor/optix/templates/arya-optix-panel/project/ProjectFiles/NetSolution/RequestAssistanceSwitchLogic.cs +93 -93
  135. package/vendor/optix/templates/arya-optix-panel/project/ProjectFiles/NetSolution/StudioMCPBridge.cs +4340 -4340
  136. package/vendor/optix/templates/arya-optix-panel/project/ProjectFiles/NetSolution/SystemToNetworkInterfacesEditModelWriterLogic.cs +77 -77
  137. package/vendor/optix/templates/arya-optix-panel/project/ProjectFiles/UserDefinedModule.xml +111 -111
  138. package/vendor/optix/templates/arya-optix-panel/project/ProjectFiles/WarningIcon.svg +4 -4
  139. package/vendor/mwi/code/engine/motionworks_iec_mcp/__pycache__/__init__.cpython-312.pyc +0 -0
  140. package/vendor/mwi/code/engine/motionworks_iec_mcp/__pycache__/block_interfaces.cpython-312.pyc +0 -0
  141. package/vendor/mwi/code/engine/motionworks_iec_mcp/__pycache__/cfb.cpython-312.pyc +0 -0
  142. package/vendor/mwi/code/engine/motionworks_iec_mcp/__pycache__/datatypes.cpython-312.pyc +0 -0
  143. package/vendor/mwi/code/engine/motionworks_iec_mcp/__pycache__/declarations.cpython-312.pyc +0 -0
  144. package/vendor/mwi/code/engine/motionworks_iec_mcp/__pycache__/errors.cpython-312.pyc +0 -0
  145. package/vendor/mwi/code/engine/motionworks_iec_mcp/__pycache__/graphical_listing.cpython-312.pyc +0 -0
  146. package/vendor/mwi/code/engine/motionworks_iec_mcp/__pycache__/grid.cpython-312.pyc +0 -0
  147. package/vendor/mwi/code/engine/motionworks_iec_mcp/__pycache__/knowledge.cpython-312.pyc +0 -0
  148. package/vendor/mwi/code/engine/motionworks_iec_mcp/__pycache__/mwt_bind.cpython-312.pyc +0 -0
  149. package/vendor/mwi/code/engine/motionworks_iec_mcp/__pycache__/navigation.cpython-312.pyc +0 -0
  150. package/vendor/mwi/code/engine/motionworks_iec_mcp/__pycache__/program_checks.cpython-312.pyc +0 -0
  151. package/vendor/mwi/code/engine/motionworks_iec_mcp/__pycache__/project.cpython-312.pyc +0 -0
  152. package/vendor/mwi/code/engine/motionworks_iec_mcp/__pycache__/staging.cpython-312.pyc +0 -0
  153. package/vendor/mwi/code/engine/motionworks_iec_mcp/__pycache__/structure.cpython-312.pyc +0 -0
  154. package/vendor/mwi/code/engine/motionworks_iec_mcp/__pycache__/task_bindings.cpython-312.pyc +0 -0
  155. package/vendor/mwi/code/engine/motionworks_iec_mcp/__pycache__/tasks.cpython-312.pyc +0 -0
  156. package/vendor/mwi/code/engine/motionworks_iec_mcp/__pycache__/tree.cpython-312.pyc +0 -0
  157. package/vendor/mwi/code/engine/motionworks_iec_mcp/__pycache__/validation.cpython-312.pyc +0 -0
  158. package/vendor/mwi/code/engine/motionworks_iec_mcp/__pycache__/variable_edit.cpython-312.pyc +0 -0
  159. package/vendor/mwi/code/engine/motionworks_iec_mcp/__pycache__/variables.cpython-312.pyc +0 -0
  160. package/vendor/mwi/code/engine/motionworks_iec_mcp/__pycache__/workflow.cpython-312.pyc +0 -0
@@ -1,106 +1,106 @@
1
- using System;
2
- using UAManagedCore;
3
-
4
- //-------------------------------------------
5
- // WARNING: AUTO-GENERATED CODE, DO NOT EDIT!
6
- //-------------------------------------------
7
-
8
- [MapType(NamespaceUri = "AryaNewHMIProject_OptixPanel", Guid = "07b10933e4ee4d4cbf84518e190ea9be")]
9
- public class FTRemoteAccessWidgetDataObject : UAObject
10
- {
11
- #region Children properties
12
- //-------------------------------------------
13
- // WARNING: AUTO-GENERATED CODE, DO NOT EDIT!
14
- //-------------------------------------------
15
- public bool IncomingConnectionRequest
16
- {
17
- get
18
- {
19
- return (bool)Refs.GetVariable("IncomingConnectionRequest").Value.Value;
20
- }
21
- set
22
- {
23
- Refs.GetVariable("IncomingConnectionRequest").SetValue(value);
24
- }
25
- }
26
- public IUAVariable IncomingConnectionRequestVariable
27
- {
28
- get
29
- {
30
- return (IUAVariable)Refs.GetVariable("IncomingConnectionRequest");
31
- }
32
- }
33
- public string Username
34
- {
35
- get
36
- {
37
- return (string)Refs.GetVariable("Username").Value.Value;
38
- }
39
- set
40
- {
41
- Refs.GetVariable("Username").SetValue(value);
42
- }
43
- }
44
- public IUAVariable UsernameVariable
45
- {
46
- get
47
- {
48
- return (IUAVariable)Refs.GetVariable("Username");
49
- }
50
- }
51
- public string IpAddress
52
- {
53
- get
54
- {
55
- return (string)Refs.GetVariable("IpAddress").Value.Value;
56
- }
57
- set
58
- {
59
- Refs.GetVariable("IpAddress").SetValue(value);
60
- }
61
- }
62
- public IUAVariable IpAddressVariable
63
- {
64
- get
65
- {
66
- return (IUAVariable)Refs.GetVariable("IpAddress");
67
- }
68
- }
69
- public UAManagedCore.ByteString SupervisorId
70
- {
71
- get
72
- {
73
- return (UAManagedCore.ByteString)Refs.GetVariable("SupervisorId").Value.Value;
74
- }
75
- set
76
- {
77
- Refs.GetVariable("SupervisorId").SetValue(value);
78
- }
79
- }
80
- public IUAVariable SupervisorIdVariable
81
- {
82
- get
83
- {
84
- return (IUAVariable)Refs.GetVariable("SupervisorId");
85
- }
86
- }
87
- public UAManagedCore.NodeId FTRemoteAccessNode
88
- {
89
- get
90
- {
91
- return (UAManagedCore.NodeId)Refs.GetVariable("FTRemoteAccessNode").Value.Value;
92
- }
93
- set
94
- {
95
- Refs.GetVariable("FTRemoteAccessNode").SetValue(value);
96
- }
97
- }
98
- public FTOptix.Core.Alias FTRemoteAccessNodeVariable
99
- {
100
- get
101
- {
102
- return (FTOptix.Core.Alias)Refs.GetVariable("FTRemoteAccessNode");
103
- }
104
- }
105
- #endregion
106
- }
1
+ using System;
2
+ using UAManagedCore;
3
+
4
+ //-------------------------------------------
5
+ // WARNING: AUTO-GENERATED CODE, DO NOT EDIT!
6
+ //-------------------------------------------
7
+
8
+ [MapType(NamespaceUri = "AryaNewHMIProject_OptixPanel", Guid = "07b10933e4ee4d4cbf84518e190ea9be")]
9
+ public class FTRemoteAccessWidgetDataObject : UAObject
10
+ {
11
+ #region Children properties
12
+ //-------------------------------------------
13
+ // WARNING: AUTO-GENERATED CODE, DO NOT EDIT!
14
+ //-------------------------------------------
15
+ public bool IncomingConnectionRequest
16
+ {
17
+ get
18
+ {
19
+ return (bool)Refs.GetVariable("IncomingConnectionRequest").Value.Value;
20
+ }
21
+ set
22
+ {
23
+ Refs.GetVariable("IncomingConnectionRequest").SetValue(value);
24
+ }
25
+ }
26
+ public IUAVariable IncomingConnectionRequestVariable
27
+ {
28
+ get
29
+ {
30
+ return (IUAVariable)Refs.GetVariable("IncomingConnectionRequest");
31
+ }
32
+ }
33
+ public string Username
34
+ {
35
+ get
36
+ {
37
+ return (string)Refs.GetVariable("Username").Value.Value;
38
+ }
39
+ set
40
+ {
41
+ Refs.GetVariable("Username").SetValue(value);
42
+ }
43
+ }
44
+ public IUAVariable UsernameVariable
45
+ {
46
+ get
47
+ {
48
+ return (IUAVariable)Refs.GetVariable("Username");
49
+ }
50
+ }
51
+ public string IpAddress
52
+ {
53
+ get
54
+ {
55
+ return (string)Refs.GetVariable("IpAddress").Value.Value;
56
+ }
57
+ set
58
+ {
59
+ Refs.GetVariable("IpAddress").SetValue(value);
60
+ }
61
+ }
62
+ public IUAVariable IpAddressVariable
63
+ {
64
+ get
65
+ {
66
+ return (IUAVariable)Refs.GetVariable("IpAddress");
67
+ }
68
+ }
69
+ public UAManagedCore.ByteString SupervisorId
70
+ {
71
+ get
72
+ {
73
+ return (UAManagedCore.ByteString)Refs.GetVariable("SupervisorId").Value.Value;
74
+ }
75
+ set
76
+ {
77
+ Refs.GetVariable("SupervisorId").SetValue(value);
78
+ }
79
+ }
80
+ public IUAVariable SupervisorIdVariable
81
+ {
82
+ get
83
+ {
84
+ return (IUAVariable)Refs.GetVariable("SupervisorId");
85
+ }
86
+ }
87
+ public UAManagedCore.NodeId FTRemoteAccessNode
88
+ {
89
+ get
90
+ {
91
+ return (UAManagedCore.NodeId)Refs.GetVariable("FTRemoteAccessNode").Value.Value;
92
+ }
93
+ set
94
+ {
95
+ Refs.GetVariable("FTRemoteAccessNode").SetValue(value);
96
+ }
97
+ }
98
+ public FTOptix.Core.Alias FTRemoteAccessNodeVariable
99
+ {
100
+ get
101
+ {
102
+ return (FTOptix.Core.Alias)Refs.GetVariable("FTRemoteAccessNode");
103
+ }
104
+ }
105
+ #endregion
106
+ }
@@ -1,37 +1,37 @@
1
- using System;
2
- using UAManagedCore;
3
-
4
- //-------------------------------------------
5
- // WARNING: AUTO-GENERATED CODE, DO NOT EDIT!
6
- //-------------------------------------------
7
-
8
- namespace AryaNewHMIProject_OptixPanel
9
- {
10
- public static class ObjectTypes
11
- {
12
- private static readonly int namespaceIndex = NamespaceMapProvider.GetNamespaceIndex("AryaNewHMIProject_OptixPanel");
13
- public static readonly NodeId MainWindow = new NodeId(namespaceIndex, new Guid("01a7e8933afd7c95fe894b0859308138"));
14
- public static readonly NodeId DateAndTimeWidget = new NodeId(namespaceIndex, new Guid("ba060dabe3223c9b73ecd35e8a6579f1"));
15
- public static readonly NodeId LAN = new NodeId(namespaceIndex, new Guid("41f433c486aa6dfdb14c2c47570eea1a"));
16
- public static readonly NodeId NetworkSettingsWidget = new NodeId(namespaceIndex, new Guid("93cbf19dd68a72c543a41f03c3c2b7a1"));
17
- public static readonly NodeId FTRemoteAccessWidget = new NodeId(namespaceIndex, new Guid("41382c57dc616862c1af276ff6942abc"));
18
- public static readonly NodeId DeviceSettingsWidget = new NodeId(namespaceIndex, new Guid("343e9a553a1648e3de95b91f6d877b43"));
19
- public static readonly NodeId WAN = new NodeId(namespaceIndex, new Guid("d17d8ab3d7f8047c35a02cbe0b7248c6"));
20
- public static readonly NodeId Configuration = new NodeId(namespaceIndex, new Guid("9cf154c923572624320f16c16fa657a3"));
21
- public static readonly NodeId RequestAssistancePanel = new NodeId(namespaceIndex, new Guid("77122192dcccfaa39d1e78d7bd27e222"));
22
- public static readonly NodeId Product_Information = new NodeId(namespaceIndex, new Guid("548a589cc1532b072d9d24316f7b6090"));
23
- public static readonly NodeId Diagnostics = new NodeId(namespaceIndex, new Guid("632709bc0ca708c922da2f68cb20eb09"));
24
- public static readonly NodeId FTRemoteAccessWidgetDataObject = new NodeId(namespaceIndex, new Guid("07b10933e4ee4d4cbf84518e190ea9be"));
25
- public static readonly NodeId ConnectionPanel = new NodeId(namespaceIndex, new Guid("e348b14dbc7035688714c7ced8a72128"));
26
- public static readonly NodeId AcceptDenyIncomingRequestPanel = new NodeId(namespaceIndex, new Guid("c05a81edcb91fa074772f19543ea1b38"));
27
- public static readonly NodeId RequestAssistanceEnabledPanel = new NodeId(namespaceIndex, new Guid("dc2c41b238ed9ce9aa4f98d28d04b528"));
28
- public static readonly NodeId NewConnectionCredentialsPanel = new NodeId(namespaceIndex, new Guid("d8a8bb0d6c0490587ebdf9c1eb42375e"));
29
- public static readonly NodeId RequestAssistanceDisabledPanel = new NodeId(namespaceIndex, new Guid("f0afd51b3f49febd40b32153974e81b8"));
30
- public static readonly NodeId EmptyPanel = new NodeId(namespaceIndex, new Guid("323ecbd80fe0dccc66307959b261f54a"));
31
- }
32
-
33
- public static class VariableTypes
34
- {
35
- private static readonly int namespaceIndex = NamespaceMapProvider.GetNamespaceIndex("AryaNewHMIProject_OptixPanel");
36
- }
37
- }
1
+ using System;
2
+ using UAManagedCore;
3
+
4
+ //-------------------------------------------
5
+ // WARNING: AUTO-GENERATED CODE, DO NOT EDIT!
6
+ //-------------------------------------------
7
+
8
+ namespace AryaNewHMIProject_OptixPanel
9
+ {
10
+ public static class ObjectTypes
11
+ {
12
+ private static readonly int namespaceIndex = NamespaceMapProvider.GetNamespaceIndex("AryaNewHMIProject_OptixPanel");
13
+ public static readonly NodeId MainWindow = new NodeId(namespaceIndex, new Guid("01a7e8933afd7c95fe894b0859308138"));
14
+ public static readonly NodeId DateAndTimeWidget = new NodeId(namespaceIndex, new Guid("ba060dabe3223c9b73ecd35e8a6579f1"));
15
+ public static readonly NodeId LAN = new NodeId(namespaceIndex, new Guid("41f433c486aa6dfdb14c2c47570eea1a"));
16
+ public static readonly NodeId NetworkSettingsWidget = new NodeId(namespaceIndex, new Guid("93cbf19dd68a72c543a41f03c3c2b7a1"));
17
+ public static readonly NodeId FTRemoteAccessWidget = new NodeId(namespaceIndex, new Guid("41382c57dc616862c1af276ff6942abc"));
18
+ public static readonly NodeId DeviceSettingsWidget = new NodeId(namespaceIndex, new Guid("343e9a553a1648e3de95b91f6d877b43"));
19
+ public static readonly NodeId WAN = new NodeId(namespaceIndex, new Guid("d17d8ab3d7f8047c35a02cbe0b7248c6"));
20
+ public static readonly NodeId Configuration = new NodeId(namespaceIndex, new Guid("9cf154c923572624320f16c16fa657a3"));
21
+ public static readonly NodeId RequestAssistancePanel = new NodeId(namespaceIndex, new Guid("77122192dcccfaa39d1e78d7bd27e222"));
22
+ public static readonly NodeId Product_Information = new NodeId(namespaceIndex, new Guid("548a589cc1532b072d9d24316f7b6090"));
23
+ public static readonly NodeId Diagnostics = new NodeId(namespaceIndex, new Guid("632709bc0ca708c922da2f68cb20eb09"));
24
+ public static readonly NodeId FTRemoteAccessWidgetDataObject = new NodeId(namespaceIndex, new Guid("07b10933e4ee4d4cbf84518e190ea9be"));
25
+ public static readonly NodeId ConnectionPanel = new NodeId(namespaceIndex, new Guid("e348b14dbc7035688714c7ced8a72128"));
26
+ public static readonly NodeId AcceptDenyIncomingRequestPanel = new NodeId(namespaceIndex, new Guid("c05a81edcb91fa074772f19543ea1b38"));
27
+ public static readonly NodeId RequestAssistanceEnabledPanel = new NodeId(namespaceIndex, new Guid("dc2c41b238ed9ce9aa4f98d28d04b528"));
28
+ public static readonly NodeId NewConnectionCredentialsPanel = new NodeId(namespaceIndex, new Guid("d8a8bb0d6c0490587ebdf9c1eb42375e"));
29
+ public static readonly NodeId RequestAssistanceDisabledPanel = new NodeId(namespaceIndex, new Guid("f0afd51b3f49febd40b32153974e81b8"));
30
+ public static readonly NodeId EmptyPanel = new NodeId(namespaceIndex, new Guid("323ecbd80fe0dccc66307959b261f54a"));
31
+ }
32
+
33
+ public static class VariableTypes
34
+ {
35
+ private static readonly int namespaceIndex = NamespaceMapProvider.GetNamespaceIndex("AryaNewHMIProject_OptixPanel");
36
+ }
37
+ }
@@ -1,91 +1,91 @@
1
- using System;
2
- using UAManagedCore;
3
-
4
- //-------------------------------------------
5
- // WARNING: AUTO-GENERATED CODE, DO NOT EDIT!
6
- //-------------------------------------------
7
-
8
- [MapType(NamespaceUri = "AryaNewHMIProject_OptixPanel", Guid = "01a7e8933afd7c95fe894b0859308138")]
9
- public class MainWindow : FTOptix.UI.Window
10
- {
11
- }
12
-
13
- [MapType(NamespaceUri = "AryaNewHMIProject_OptixPanel", Guid = "ba060dabe3223c9b73ecd35e8a6579f1")]
14
- public class DateAndTimeWidget : FTOptix.UI.Screen
15
- {
16
- }
17
-
18
- [MapType(NamespaceUri = "AryaNewHMIProject_OptixPanel", Guid = "41f433c486aa6dfdb14c2c47570eea1a")]
19
- public class LAN : FTOptix.UI.Panel
20
- {
21
- }
22
-
23
- [MapType(NamespaceUri = "AryaNewHMIProject_OptixPanel", Guid = "93cbf19dd68a72c543a41f03c3c2b7a1")]
24
- public class NetworkSettingsWidget : FTOptix.UI.Screen
25
- {
26
- }
27
-
28
- [MapType(NamespaceUri = "AryaNewHMIProject_OptixPanel", Guid = "41382c57dc616862c1af276ff6942abc")]
29
- public class FTRemoteAccessWidget : FTOptix.UI.Screen
30
- {
31
- }
32
-
33
- [MapType(NamespaceUri = "AryaNewHMIProject_OptixPanel", Guid = "343e9a553a1648e3de95b91f6d877b43")]
34
- public class DeviceSettingsWidget : FTOptix.UI.Screen
35
- {
36
- }
37
-
38
- [MapType(NamespaceUri = "AryaNewHMIProject_OptixPanel", Guid = "d17d8ab3d7f8047c35a02cbe0b7248c6")]
39
- public class WAN : FTOptix.UI.Panel
40
- {
41
- }
42
-
43
- [MapType(NamespaceUri = "AryaNewHMIProject_OptixPanel", Guid = "9cf154c923572624320f16c16fa657a3")]
44
- public class Configuration : FTOptix.UI.Panel
45
- {
46
- }
47
-
48
- [MapType(NamespaceUri = "AryaNewHMIProject_OptixPanel", Guid = "77122192dcccfaa39d1e78d7bd27e222")]
49
- public class RequestAssistancePanel : FTOptix.UI.Panel
50
- {
51
- }
52
-
53
- [MapType(NamespaceUri = "AryaNewHMIProject_OptixPanel", Guid = "548a589cc1532b072d9d24316f7b6090")]
54
- public class Product_Information : FTOptix.UI.Panel
55
- {
56
- }
57
-
58
- [MapType(NamespaceUri = "AryaNewHMIProject_OptixPanel", Guid = "632709bc0ca708c922da2f68cb20eb09")]
59
- public class Diagnostics : FTOptix.UI.Panel
60
- {
61
- }
62
-
63
- [MapType(NamespaceUri = "AryaNewHMIProject_OptixPanel", Guid = "e348b14dbc7035688714c7ced8a72128")]
64
- public class ConnectionPanel : FTOptix.UI.Panel
65
- {
66
- }
67
-
68
- [MapType(NamespaceUri = "AryaNewHMIProject_OptixPanel", Guid = "c05a81edcb91fa074772f19543ea1b38")]
69
- public class AcceptDenyIncomingRequestPanel : FTOptix.UI.Panel
70
- {
71
- }
72
-
73
- [MapType(NamespaceUri = "AryaNewHMIProject_OptixPanel", Guid = "dc2c41b238ed9ce9aa4f98d28d04b528")]
74
- public class RequestAssistanceEnabledPanel : FTOptix.UI.Panel
75
- {
76
- }
77
-
78
- [MapType(NamespaceUri = "AryaNewHMIProject_OptixPanel", Guid = "d8a8bb0d6c0490587ebdf9c1eb42375e")]
79
- public class NewConnectionCredentialsPanel : FTOptix.UI.Panel
80
- {
81
- }
82
-
83
- [MapType(NamespaceUri = "AryaNewHMIProject_OptixPanel", Guid = "f0afd51b3f49febd40b32153974e81b8")]
84
- public class RequestAssistanceDisabledPanel : FTOptix.UI.Panel
85
- {
86
- }
87
-
88
- [MapType(NamespaceUri = "AryaNewHMIProject_OptixPanel", Guid = "323ecbd80fe0dccc66307959b261f54a")]
89
- public class EmptyPanel : FTOptix.UI.Panel
90
- {
91
- }
1
+ using System;
2
+ using UAManagedCore;
3
+
4
+ //-------------------------------------------
5
+ // WARNING: AUTO-GENERATED CODE, DO NOT EDIT!
6
+ //-------------------------------------------
7
+
8
+ [MapType(NamespaceUri = "AryaNewHMIProject_OptixPanel", Guid = "01a7e8933afd7c95fe894b0859308138")]
9
+ public class MainWindow : FTOptix.UI.Window
10
+ {
11
+ }
12
+
13
+ [MapType(NamespaceUri = "AryaNewHMIProject_OptixPanel", Guid = "ba060dabe3223c9b73ecd35e8a6579f1")]
14
+ public class DateAndTimeWidget : FTOptix.UI.Screen
15
+ {
16
+ }
17
+
18
+ [MapType(NamespaceUri = "AryaNewHMIProject_OptixPanel", Guid = "41f433c486aa6dfdb14c2c47570eea1a")]
19
+ public class LAN : FTOptix.UI.Panel
20
+ {
21
+ }
22
+
23
+ [MapType(NamespaceUri = "AryaNewHMIProject_OptixPanel", Guid = "93cbf19dd68a72c543a41f03c3c2b7a1")]
24
+ public class NetworkSettingsWidget : FTOptix.UI.Screen
25
+ {
26
+ }
27
+
28
+ [MapType(NamespaceUri = "AryaNewHMIProject_OptixPanel", Guid = "41382c57dc616862c1af276ff6942abc")]
29
+ public class FTRemoteAccessWidget : FTOptix.UI.Screen
30
+ {
31
+ }
32
+
33
+ [MapType(NamespaceUri = "AryaNewHMIProject_OptixPanel", Guid = "343e9a553a1648e3de95b91f6d877b43")]
34
+ public class DeviceSettingsWidget : FTOptix.UI.Screen
35
+ {
36
+ }
37
+
38
+ [MapType(NamespaceUri = "AryaNewHMIProject_OptixPanel", Guid = "d17d8ab3d7f8047c35a02cbe0b7248c6")]
39
+ public class WAN : FTOptix.UI.Panel
40
+ {
41
+ }
42
+
43
+ [MapType(NamespaceUri = "AryaNewHMIProject_OptixPanel", Guid = "9cf154c923572624320f16c16fa657a3")]
44
+ public class Configuration : FTOptix.UI.Panel
45
+ {
46
+ }
47
+
48
+ [MapType(NamespaceUri = "AryaNewHMIProject_OptixPanel", Guid = "77122192dcccfaa39d1e78d7bd27e222")]
49
+ public class RequestAssistancePanel : FTOptix.UI.Panel
50
+ {
51
+ }
52
+
53
+ [MapType(NamespaceUri = "AryaNewHMIProject_OptixPanel", Guid = "548a589cc1532b072d9d24316f7b6090")]
54
+ public class Product_Information : FTOptix.UI.Panel
55
+ {
56
+ }
57
+
58
+ [MapType(NamespaceUri = "AryaNewHMIProject_OptixPanel", Guid = "632709bc0ca708c922da2f68cb20eb09")]
59
+ public class Diagnostics : FTOptix.UI.Panel
60
+ {
61
+ }
62
+
63
+ [MapType(NamespaceUri = "AryaNewHMIProject_OptixPanel", Guid = "e348b14dbc7035688714c7ced8a72128")]
64
+ public class ConnectionPanel : FTOptix.UI.Panel
65
+ {
66
+ }
67
+
68
+ [MapType(NamespaceUri = "AryaNewHMIProject_OptixPanel", Guid = "c05a81edcb91fa074772f19543ea1b38")]
69
+ public class AcceptDenyIncomingRequestPanel : FTOptix.UI.Panel
70
+ {
71
+ }
72
+
73
+ [MapType(NamespaceUri = "AryaNewHMIProject_OptixPanel", Guid = "dc2c41b238ed9ce9aa4f98d28d04b528")]
74
+ public class RequestAssistanceEnabledPanel : FTOptix.UI.Panel
75
+ {
76
+ }
77
+
78
+ [MapType(NamespaceUri = "AryaNewHMIProject_OptixPanel", Guid = "d8a8bb0d6c0490587ebdf9c1eb42375e")]
79
+ public class NewConnectionCredentialsPanel : FTOptix.UI.Panel
80
+ {
81
+ }
82
+
83
+ [MapType(NamespaceUri = "AryaNewHMIProject_OptixPanel", Guid = "f0afd51b3f49febd40b32153974e81b8")]
84
+ public class RequestAssistanceDisabledPanel : FTOptix.UI.Panel
85
+ {
86
+ }
87
+
88
+ [MapType(NamespaceUri = "AryaNewHMIProject_OptixPanel", Guid = "323ecbd80fe0dccc66307959b261f54a")]
89
+ public class EmptyPanel : FTOptix.UI.Panel
90
+ {
91
+ }
@@ -1,93 +1,93 @@
1
- #region Using directives
2
- using UAManagedCore;
3
- using FTOptix.NetLogic;
4
- using FTOptix.UI;
5
- using FTOptix.System;
6
- #endregion
7
-
8
- public class RequestAssistanceSwitchLogic : BaseNetLogic
9
- {
10
- private const string LOG_CATEGORY = nameof(RequestAssistanceSwitchLogic);
11
-
12
- public override void Start()
13
- {
14
- if (LogicObject.GetAlias("FTRemoteAccessWidgetDataObject") is not FTRemoteAccessWidgetDataObject ftRemoteAccessWidgetDataObject)
15
- {
16
- Log.Error(LOG_CATEGORY, "FTRemoteAccessWidgetDataObject is not defined.");
17
- return;
18
- }
19
-
20
- ftRemoteAccessNode = ftRemoteAccessWidgetDataObject.Context.GetNode(ftRemoteAccessWidgetDataObject.FTRemoteAccessNode) as FTRemoteAccess;
21
- if (ftRemoteAccessNode == null)
22
- {
23
- Log.Error(LOG_CATEGORY, "FTRemoteAccessNode is not defined.");
24
- return;
25
- }
26
-
27
- assistanceSwitch = Owner as Switch;
28
- assistanceSwitch.Checked = ftRemoteAccessNode.AssistanceRequested;
29
-
30
- // value update handler needed to cover external changes (ex: request closed via FTRA API)
31
- ftRemoteAccessNode.AssistanceRequestedVariable.VariableChange += UpdateSwitchOnAssistanceChange;
32
- }
33
-
34
- public override void Stop()
35
- {
36
- if (ftRemoteAccessNode != null)
37
- ftRemoteAccessNode.AssistanceRequestedVariable.VariableChange -= UpdateSwitchOnAssistanceChange;
38
-
39
- // destruct class objects
40
- ftRemoteAccessNode = null;
41
- assistanceSwitch = null;
42
- }
43
-
44
- [ExportMethod]
45
- public void HandleRequestAssistanceSwitch(string name, string contactInfo, string description)
46
- {
47
- if (ftRemoteAccessNode == null)
48
- {
49
- Log.Error(LOG_CATEGORY, "FTRemoteAccessNode is not defined.");
50
- return;
51
- }
52
-
53
- if (assistanceSwitch.Checked)
54
- {
55
- if (ftRemoteAccessNode.AssistanceRequestMode == AssistanceRequestMode.Enabled)
56
- ftRemoteAccessNode.OpenAssistanceRequest(name, contactInfo, description);
57
- else if (ftRemoteAccessNode.AssistanceRequestMode == AssistanceRequestMode.ContactDetailsRequired)
58
- {
59
- if (!string.IsNullOrEmpty(name) &&
60
- !string.IsNullOrEmpty(contactInfo) &&
61
- !string.IsNullOrEmpty(description))
62
- {
63
- var result = ftRemoteAccessNode.OpenAssistanceRequest(name, contactInfo, description);
64
- if (result == OpenAssistanceRequestResult.CannotBeOpened)
65
- Log.Warning(LOG_CATEGORY, "Assistance request could not be opened.");
66
- else if (result == OpenAssistanceRequestResult.RuntimeNotConnected)
67
- Log.Error(LOG_CATEGORY, "Failed to open assistance request. FTRemoteAccess runtime is not connected.");
68
- }
69
- else
70
- Log.Warning(LOG_CATEGORY, "Assistance requests cannot be submitted with empty information.");
71
- }
72
- else
73
- Log.Warning(LOG_CATEGORY, "Assistance requests are disabled.");
74
- }
75
- else
76
- {
77
- // switch has been unchecked, request has been cancelled
78
- ftRemoteAccessNode.CloseAssistanceRequest();
79
- }
80
- }
81
-
82
- private void UpdateSwitchOnAssistanceChange(object sender, VariableChangeEventArgs args)
83
- {
84
- bool assistanceRequested = (bool)args.NewValue.Value;
85
-
86
- // only update the switch value if it is different, otherwise the switch handler would get triggered
87
- if (assistanceSwitch.Checked != assistanceRequested)
88
- assistanceSwitch.Checked = assistanceRequested;
89
- }
90
-
91
- private FTRemoteAccess ftRemoteAccessNode;
92
- private Switch assistanceSwitch;
93
- }
1
+ #region Using directives
2
+ using UAManagedCore;
3
+ using FTOptix.NetLogic;
4
+ using FTOptix.UI;
5
+ using FTOptix.System;
6
+ #endregion
7
+
8
+ public class RequestAssistanceSwitchLogic : BaseNetLogic
9
+ {
10
+ private const string LOG_CATEGORY = nameof(RequestAssistanceSwitchLogic);
11
+
12
+ public override void Start()
13
+ {
14
+ if (LogicObject.GetAlias("FTRemoteAccessWidgetDataObject") is not FTRemoteAccessWidgetDataObject ftRemoteAccessWidgetDataObject)
15
+ {
16
+ Log.Error(LOG_CATEGORY, "FTRemoteAccessWidgetDataObject is not defined.");
17
+ return;
18
+ }
19
+
20
+ ftRemoteAccessNode = ftRemoteAccessWidgetDataObject.Context.GetNode(ftRemoteAccessWidgetDataObject.FTRemoteAccessNode) as FTRemoteAccess;
21
+ if (ftRemoteAccessNode == null)
22
+ {
23
+ Log.Error(LOG_CATEGORY, "FTRemoteAccessNode is not defined.");
24
+ return;
25
+ }
26
+
27
+ assistanceSwitch = Owner as Switch;
28
+ assistanceSwitch.Checked = ftRemoteAccessNode.AssistanceRequested;
29
+
30
+ // value update handler needed to cover external changes (ex: request closed via FTRA API)
31
+ ftRemoteAccessNode.AssistanceRequestedVariable.VariableChange += UpdateSwitchOnAssistanceChange;
32
+ }
33
+
34
+ public override void Stop()
35
+ {
36
+ if (ftRemoteAccessNode != null)
37
+ ftRemoteAccessNode.AssistanceRequestedVariable.VariableChange -= UpdateSwitchOnAssistanceChange;
38
+
39
+ // destruct class objects
40
+ ftRemoteAccessNode = null;
41
+ assistanceSwitch = null;
42
+ }
43
+
44
+ [ExportMethod]
45
+ public void HandleRequestAssistanceSwitch(string name, string contactInfo, string description)
46
+ {
47
+ if (ftRemoteAccessNode == null)
48
+ {
49
+ Log.Error(LOG_CATEGORY, "FTRemoteAccessNode is not defined.");
50
+ return;
51
+ }
52
+
53
+ if (assistanceSwitch.Checked)
54
+ {
55
+ if (ftRemoteAccessNode.AssistanceRequestMode == AssistanceRequestMode.Enabled)
56
+ ftRemoteAccessNode.OpenAssistanceRequest(name, contactInfo, description);
57
+ else if (ftRemoteAccessNode.AssistanceRequestMode == AssistanceRequestMode.ContactDetailsRequired)
58
+ {
59
+ if (!string.IsNullOrEmpty(name) &&
60
+ !string.IsNullOrEmpty(contactInfo) &&
61
+ !string.IsNullOrEmpty(description))
62
+ {
63
+ var result = ftRemoteAccessNode.OpenAssistanceRequest(name, contactInfo, description);
64
+ if (result == OpenAssistanceRequestResult.CannotBeOpened)
65
+ Log.Warning(LOG_CATEGORY, "Assistance request could not be opened.");
66
+ else if (result == OpenAssistanceRequestResult.RuntimeNotConnected)
67
+ Log.Error(LOG_CATEGORY, "Failed to open assistance request. FTRemoteAccess runtime is not connected.");
68
+ }
69
+ else
70
+ Log.Warning(LOG_CATEGORY, "Assistance requests cannot be submitted with empty information.");
71
+ }
72
+ else
73
+ Log.Warning(LOG_CATEGORY, "Assistance requests are disabled.");
74
+ }
75
+ else
76
+ {
77
+ // switch has been unchecked, request has been cancelled
78
+ ftRemoteAccessNode.CloseAssistanceRequest();
79
+ }
80
+ }
81
+
82
+ private void UpdateSwitchOnAssistanceChange(object sender, VariableChangeEventArgs args)
83
+ {
84
+ bool assistanceRequested = (bool)args.NewValue.Value;
85
+
86
+ // only update the switch value if it is different, otherwise the switch handler would get triggered
87
+ if (assistanceSwitch.Checked != assistanceRequested)
88
+ assistanceSwitch.Checked = assistanceRequested;
89
+ }
90
+
91
+ private FTRemoteAccess ftRemoteAccessNode;
92
+ private Switch assistanceSwitch;
93
+ }