feat: expand cockpit integrations and support workflows

Add Phoenix remote desktop, action connector, documentation engine, and gamification support. Refactor support-case processing and search/action UI, and update installer assets and dependencies.
This commit is contained in:
Meik
2026-07-13 11:16:53 +02:00
parent bbedbf71c8
commit 0b52999b1d
303 changed files with 11235 additions and 3580 deletions

View File

@@ -54,7 +54,7 @@
param(
$ComputerName = "",
$AI_Prompt = "how can this be fixed? Answer in german",
$AI_Key = "AIzaSyCotStXy-4lkxCc5ii4NtQEG-jJM6Cnzkc"
$AI_Key = "AIzaSyBhXz8EU0jTyaZ4e_CLJB5mn7SMPjlJrSw"
)
$ServerAddress = $env:COMPUTERNAME
$ServerPort = 7000
@@ -70,22 +70,22 @@
# get the execution directory
$dirExe = $PSScriptRoot
if (-not (Test-Path -Path "$dirExe\Phoenix.Viewer\Phoenix.Viewer.exe" -PathType Leaf))
if (-not (Test-Path -Path "$env:ProgramFiles\EgoMind\Phoenix\Viewer\Phoenix.Viewer.exe" -PathType Leaf))
{
$dirExe = (Get-Location).Path
$dirExe = "$dirExe\PhoenixDemo"
}
if (-not (Test-Path -Path "$dirExe\Phoenix.Viewer\Phoenix.Viewer.exe" -PathType Leaf))
if (-not (Test-Path -Path "$env:ProgramFiles\EgoMind\Phoenix\Viewer\Phoenix.Viewer.exe" -PathType Leaf))
{
exit(1)
}
# save server address to config file
$jsonConfig = Get-Content "$dirExe\Phoenix.Viewer\appSettings.json" | ConvertFrom-Json
$jsonConfig = Get-Content "$env:ProgramFiles\EgoMind\Phoenix\Viewer\appSettings.json" | ConvertFrom-Json
$jsonConfig.HostOptions.Host = "http://${ServerAddress}:${ServerPort}"
$jsonConfig.AIOptions.Prompt = $AI_Prompt
$jsonConfig.AIOptions.ApiKey = $AI_Key
$jsonConfig | ConvertTo-Json -depth 100 | Out-File "$dirExe\Phoenix.Viewer\appSettings.json" -Encoding utf8
$jsonConfig | ConvertTo-Json -depth 100 | Out-File "$env:ProgramFiles\EgoMind\Phoenix\Viewer\appSettings.json" -Encoding utf8
# define the argumet list
$args = @("--config appSettings.json")
@@ -95,7 +95,7 @@
}
# start the viewer
$procViewer = Start-Process -WorkingDirectory "$dirExe\Phoenix.Viewer" -WindowStyle Normal -FilePath "$dirExe\Phoenix.Viewer\Phoenix.Viewer.exe" -PassThru -ArgumentList $args
$procViewer = Start-Process -WorkingDirectory "$env:ProgramFiles\EgoMind\Phoenix\Viewer" -WindowStyle Normal -FilePath "$env:ProgramFiles\EgoMind\Phoenix\Viewer\Phoenix.Viewer.exe" -PassThru -ArgumentList $args
# get & resize the viewer main window
add-type -typedefinition "using System;`n using System.Runtime.InteropServices;`n public class Windows { [DllImport(`"user32.dll`")] [return: MarshalAs(UnmanagedType.Bool)] public extern static bool MoveWindow(IntPtr handle, int x, int y, int width, int height, bool redraw); }"
@@ -500,7 +500,7 @@
</QuickAction-Demo>
<QuickAction-Demo InformationClass="VirtuelSession" Name="Session Logoff" Section="Citrix" RunImmediate="false" CheckNamedParameter="VirtualSessionStatus" SimulatedClientConnect="1" SimulatedRuntime="1">
<QuickAction-Demo InformationClass="VirtualSession" Name="Session Logoff" Section="Citrix" RunImmediate="false" CheckNamedParameter="VirtualSessionStatus" SimulatedClientConnect="1" SimulatedRuntime="1">
<Name Lang="DE">Session abmelden</Name>
<Icon IconType="material" Name="ic_vpn_key" />
<CheckNamedParameterValues>
@@ -508,7 +508,7 @@
</CheckNamedParameterValues>
<DemoResult Result="finished">[{&quot;&quot;:&quot;Erfolgreich von Session abgemeldet&quot;}]</DemoResult>
</QuickAction-Demo>
<QuickAction-Demo InformationClass="VirtuelSession" Name="Session Hidden" Section="Citrix" RunImmediate="false" CheckNamedParameter="VirtualSessionStatus" SimulatedClientConnect="1" SimulatedRuntime="1">
<QuickAction-Demo InformationClass="VirtualSession" Name="Session Hidden" Section="Citrix" RunImmediate="false" CheckNamedParameter="VirtualSessionStatus" SimulatedClientConnect="1" SimulatedRuntime="1">
<Name Lang="DE">Session verstecken</Name>
<Icon IconType="material" Name="ic_vpn_key" />
<CheckNamedParameterValues>
@@ -516,7 +516,7 @@
</CheckNamedParameterValues>
<DemoResult Result="finished">[{&quot;&quot;:&quot;Session erfolgreich versteckt&quot;}]</DemoResult>
</QuickAction-Demo>
<QuickAction-Demo InformationClass="VirtuelSession" Name="Send message to Session" Section="Citrix" RunImmediate="false" CheckNamedParameter="VirtualSessionStatus" SimulatedClientConnect="1" SimulatedRuntime="1">
<QuickAction-Demo InformationClass="VirtualSession" Name="Send message to Session" Section="Citrix" RunImmediate="false" CheckNamedParameter="VirtualSessionStatus" SimulatedClientConnect="1" SimulatedRuntime="1">
<Name Lang="DE">Sende Nachricht an Session</Name>
<Icon IconType="material" Name="ic_vpn_key" />
<CheckNamedParameterValues>
@@ -526,7 +526,7 @@
</QuickAction-Demo>
<QuickAction-Demo InformationClass="VirtuelSession" Name="Session Hidden" Section="Citrix" RunImmediate="false" CheckNamedParameter="VirtualSessionStatus" SimulatedClientConnect="1" SimulatedRuntime="1">
<QuickAction-Demo InformationClass="VirtualSession" Name="Session Hidden" Section="Citrix" RunImmediate="false" CheckNamedParameter="VirtualSessionStatus" SimulatedClientConnect="1" SimulatedRuntime="1">
<Name Lang="DE">Session verstecken</Name>
<Icon IconType="material" Name="ic_vpn_key" />
<CheckNamedParameterValues>
@@ -534,7 +534,7 @@
</CheckNamedParameterValues>
<DemoResult Result="finished">[{&quot;&quot;:&quot;Session erfolgreich versteckt&quot;}]</DemoResult>
</QuickAction-Demo>
<QuickAction-Demo InformationClass="VirtuelSession" Name="Send message to Session" Section="Citrix" RunImmediate="false" CheckNamedParameter="VirtualSessionStatus" SimulatedClientConnect="1" SimulatedRuntime="1">
<QuickAction-Demo InformationClass="VirtualSession" Name="Send message to Session" Section="Citrix" RunImmediate="false" CheckNamedParameter="VirtualSessionStatus" SimulatedClientConnect="1" SimulatedRuntime="1">
<Name Lang="DE">Sende Nachricht an Session</Name>
<Icon IconType="material" Name="ic_vpn_key" />
<CheckNamedParameterValues>

View File

@@ -27,7 +27,7 @@
<xs:enumeration value="User" />
<xs:enumeration value="Computer" />
<xs:enumeration value="Ticket" />
<xs:enumeration value="VirtuelSession" />
<xs:enumeration value="VirtualSession" />
<xs:enumeration value="MobileDevice" />
</xs:restriction>
</xs:simpleType>
@@ -197,6 +197,16 @@
</xs:attribute>
</xs:complexType>
<xs:element name="QuickAction-Native" substitutionGroup="QuickAction">
<xs:complexType >
<xs:complexContent>
<xs:extension base="QuickAction">
<xs:attribute name="NativeName" type="xs:NCName" use="required" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:complexType name="QuickAction-Local" abstract="true">
<xs:complexContent>
<xs:extension base="QuickAction">
@@ -249,7 +259,7 @@
<xs:extension base="QuickAction-Remote">
<xs:attribute name="Category" use="optional" />
<xs:attribute name="Action" use="optional" />
<xs:attribute name="ParamaterType" use="optional" />
<xs:attribute name="ParameterType" use="optional" />
</xs:extension>
</xs:complexContent>
</xs:complexType>