Hi
aktuelle Version: 6.5
wir versuchen gerade ACLs umzusetzen, welche auf Basis von "Tags" die dem Kundenbenutzer zugewiesen sind, die Sichtbarkeit von Tickets erlaubt.
Bisheriges Setup:
Wir haben ein dynamisches Feld "Projekt" erstellt dessen möglichen Typen mittels eines Webservice von extern abgefragt werden.
Dem HTTP::REST Transport wird die :CustomerUser Variable als Parameter im "Controller mapping for Invoker" mitgegeben.
Dieses Feld wird beim Ticket erstellen (Agent&&Kundeninterface) als zwingendes Feld eingeblendet (per dynamic fields <-> screens).
Wenn ein Benutzer im Kundeninterface ein Ticket erstellt, hat er damit "seine Tags" zur Auswahl und muss eines davon wählen.
Der Tag wird somit beim Anlegen des Tickets mit diesem verknüpft.
Will ein Benutzer im Kundeninterface ein Ticket ansehen so wird per custom ACL-Modul geprüft, ob der lesende Benutzer auch den Tag des Tickets bei sich hinterlegt hat. Wenn das nicht der Fall ist, wird das entsprechend per PossibleNot ->Action->CustomerTicketZoom unterbunden.
Die ACL nutzt dabei den selben Endpoint, welcher auch vom Webservice fürs Dynamic-Field benutzt wird.
Der Teil funktioniert soweit auch recht problemlos. In einem externen System werden die Tags für die Benutzer vergeben und die Sichtbarkeitseinschränkung funktioniert wie gewünscht.
Problemstellung
Im Agent Interface scheint man keinen Zugriff auf die :CustomerUser Variable im HTTP::REST Transport zu haben.
Dadurch ist es nicht möglich beim Erstellen (bzw auch beim Beantworten) eines Tickets, die für den Kundenbenutzer spezifischen Tags vom Webservice abzufragen.
Soweit wir sehen werden die Variablen in der Loop in
"Kernel/GenericInterface/Transport/HTTP/REST.pm
Zeile 902: "for my $FlattenedParamName ( sort keys %FlattenedParamData )"
ersetzt.
Die möglichen Werte werden dabei durch $Param{Data} bestimmt. Dieser Hash enthält aber im AgentInterface keine Customer* Werte.
Dadurch schlägt das Ersetzen der :CustomerUser Variable fehl.
Ist es möglich den Param-Hash im AgentInterface irgendwie um die Customer* Werte zu erweitern?
Wir freuen uns über jeden Hint
Lg
\md
Dynamic Fields (webservice dropdown)- Verfügbare Variablen im Controller Mapping des Requester Transports
[Solved] Dynamic Fields (webservice dropdown)- Verfügbare Variablen im Controller Mapping des Requester Transports
Hi zusammen
das Thema konnte zusammen mit Znuny GmbH gelöst werden.
Vielen Dank!
das Thema konnte zusammen mit Znuny GmbH gelöst werden.
Vielen Dank!