Frontend: Einsicht verschiedener Kunden in mehrere Queues

Hilfe zu Znuny Problemen aller Art
Locked
k3v
Znuny newbie
Posts: 27
Joined: 18 Aug 2009, 11:41
Znuny Version: 2.4.3

Frontend: Einsicht verschiedener Kunden in mehrere Queues

Post by k3v »

Hallo,

habe schon auf alle möglichen Arten versucht eine Lösung zu finden. Auch hier im Forum mit allen möglichen Stichwörter versucht irgendwas rauszufinden, vergeblich!

Es handelt sich um Folgendes:

und zwar soll eine Situation bei mehreren Filialen dargestellt werden ...

Der Geschäftsführer kann in alle Queues sprich Tickets einsehen und alles mit ihnen anstellen was er will.
Dann gibt es 3 Filialen welche jeweils an nehmen wir an 3 verschiedenen Orten angesiedelt sind.

Filialleiter 1: hat alle Rechte in seiner eigenen Filiale (verschieben, schließen, öffnen, ...) aber auch noch lesezugriff (ro) bei den zwei anderen Filialen

Filialleiter 2: hat alle Rechte in seiner eigenen Filiale (siehe Fil.1) und kann sonst nichts einsehen

Filialleiter 3: hat ebenfalls seine Rechte in der eigenen Filiale und kann auch nichts einsehen.

(sind alles Kunden inkl. GF)

Wenn man will kann man die oben genannten Beispiele auch auf Geschäftsführer und Prokurist oder wie man will umändern ...
nun soll jener der sich im Frontend (customer.pl) einloggt mit den oben verteilten Rechten einloggt sehen welche Queues für ihn zugelassen sind.
Im Agent-"Backend(?)" hab ich es schon geschafft, einfach mit den Benutzern, da ging's ja das ich die Queues einstelle die sie einsehen dürfen, Aufgabe ist es aber das es im Frontend funktioniert.

Nun dachte ich mir das ich einfach mit:
  • [ Kunden Benutzer ]
    [ Kunden-Firma ]
    [ Kunden Benutzer <-> Gruppen ]
    [ Kunden Benutzer <-> Services ]
versuche die selben Einstellungen wie bei den Agenten hin zu bekommen. Jedoch erfolglos.

Habe ich ein logisches-Denk-Problem oder ist es unter OTRS garnicht möglich sowas im Kunden-Frontend hinzubekommen?
Praktikant mit Abschlussarbeit welche auf OTRS basiert, werdet mich in nächster Zeit öfter hier sehen! ;)
Version: 2.4.4 | Debian (Lenny) | V-Server | OTRS::ITSM 1.3.1 | MySQL
maxbacks
Znuny wizard
Posts: 326
Joined: 30 Jan 2008, 14:59
Znuny Version: 6.0.19
Real Name: Max Hendrik Backs

Frontend: Einsicht verschiedener Kunden in mehrere Queues

Post by maxbacks »

Hallo k3v,

Ist der die von dir beschriebenen Leute Agenten oder Kunden?

Wenn es Kunden sind, schau dir folgendes an:
http://doc.otrs.org/2.4/de/html/x1907.html
11.2.1.1. Kunden mit multiplen IDs (Firmen Tickets)

Wenn es Agenten sind, dieses hier:
http://doc.otrs.org/2.4/de/html/x1042.html

grüße,
mbacks
Ticket-System
Ubuntu 18.04
OTRS 6.0.19
k3v
Znuny newbie
Posts: 27
Joined: 18 Aug 2009, 11:41
Znuny Version: 2.4.3

Frontend: Einsicht verschiedener Kunden in mehrere Queues

Post by k3v »

maxbacks wrote:Hallo k3v,

Ist der die von dir beschriebenen Leute Agenten oder Kunden?

Wenn es Kunden sind, schau dir folgendes an:
http://doc.otrs.org/2.4/de/html/x1907.html
11.2.1.1. Kunden mit multiplen IDs (Firmen Tickets)

...

Danke schonmal maxbacks! Es sind Kunden, welche dann im Kunden-Backend einsehen können (sollen) welche Queues sich in ihrer eigenen befinden (Filialleiter 1, 2 und 3) aber auch in allen Filialen (GF und Filialleiter 1) die Tickets in den betreffenden Queues lesen (Filialleiter 1) und bearbeiten (GF) usw. dürfen.

Jetzt habe ich aber schon das versucht was in der von dir gezeigten Doku steht und zusätzlich noch versucht hier was passendes zu finden (http://www.otrs-forum.de/viewtopic.php? ... ray#p13155) ... aber es funktioniert einfach nicht, ich bekomme immer nen 500erter Error.

Meine config.pm sieht dann so aus:

Code: Select all

	$Self->{CustomerUser} = {
  		Map => [
#            # note: Login, Email and CustomerID needed!
#            # var, frontend, storage, shown (1=always,2=lite), required, storage-type, http-link, readonly
#            [ 'UserSalutation', 'Title',      'title',           1, 0, 'var', '', 0 ],
#            [ 'UserFirstname',  'Firstname',  'givenname',       1, 1, 'var', '', 0 ],
#            [ 'UserLastname',   'Lastname',   'sn',              1, 1, 'var', '', 0 ],
#            [ 'UserLogin',      'Username',   'uid',             1, 1, 'var', '', 0 ],
#            [ 'UserEmail',      'Email',      'mail',            1, 1, 'var', '', 0 ],
#            [ 'UserCustomerID', 'CustomerID', 'mail',            0, 1, 'var', '', 0 ],
#           [ 'UserCustomerIDs', 'CustomerIDs', 'customer_ids',  1, 0, 'var', '', 0 ],
#            [ 'UserPhone',      'Phone',      'telephonenumber', 1, 0, 'var', '', 0 ],
#            [ 'UserAddress',    'Address',    'postaladdress',   1, 0, 'var', '', 0 ],
#            [ 'UserComment',    'Comment',    'description',     1, 0, 'var', '', 0 ],
#        ],
							}
#    };

tatsächlich geändert wurde:

Code: Select all

$Self->{CustomerUser} = {
  		Map => [
#           [ 'UserCustomerIDs', 'CustomerIDs', 'customer_ids',  1, 0, 'var', '', 0 ],
#        ],
							}
#    };
alles andere hab ich aus der default.pm kopiert und ergänzt. Das Feld in der Datenbank wurde erstellt.
Trotzdem gibts nen Internal Server Error.

Aber auch wenn ich die hinzugefügte Stelle im Code wieder lösche und wieder update besteht aufeinmal ein "Software error".
Kann es sein das es hier irgendwie an der .htaccess liegt? Ist aber doch trotzdem ein lokaler Server, oder?

:(

Edit: hab nun in der Datenbank unter customer_ids nachgesehen und es steht mehrmals NULL drinnen, sowas könnte auch den 500er Error erklären!
Praktikant mit Abschlussarbeit welche auf OTRS basiert, werdet mich in nächster Zeit öfter hier sehen! ;)
Version: 2.4.4 | Debian (Lenny) | V-Server | OTRS::ITSM 1.3.1 | MySQL
maxbacks
Znuny wizard
Posts: 326
Joined: 30 Jan 2008, 14:59
Znuny Version: 6.0.19
Real Name: Max Hendrik Backs

Frontend: Einsicht verschiedener Kunden in mehrere Queues

Post by maxbacks »

Wenn du die Map genau so in deiner Config.pm steht, hast du alle Kundendaten auskommentiert. Lies dir bitte mal die Notiz durch:

Code: Select all

note: Login, Email and CustomerID needed!
Ticket-System
Ubuntu 18.04
OTRS 6.0.19
k3v
Znuny newbie
Posts: 27
Joined: 18 Aug 2009, 11:41
Znuny Version: 2.4.3

Frontend: Einsicht verschiedener Kunden in mehrere Queues

Post by k3v »

maxbacks wrote:Wenn du die Map genau so in deiner Config.pm steht, hast du alle Kundendaten auskommentiert. Lies dir bitte mal die Notiz durch:

Code: Select all

note: Login, Email and CustomerID needed!

Hab ich gemacht, aber wie meinst du das mit auskommentiert?

Code: Select all

 # note:
hab leider wenig Plan von Perl (falls das schon Perl ist?!)! Verwirrt mich leider ein wenig da mir die Sachen nach der # irgendwie logisch vorkommen, so als würden sie von OTRS genau so verarbeitet werden. Nicht so wie bei PHP!
Praktikant mit Abschlussarbeit welche auf OTRS basiert, werdet mich in nächster Zeit öfter hier sehen! ;)
Version: 2.4.4 | Debian (Lenny) | V-Server | OTRS::ITSM 1.3.1 | MySQL
jojo
Znuny guru
Posts: 15020
Joined: 26 Jan 2007, 14:50
Znuny Version: Git Master
Contact:

Frontend: Einsicht verschiedener Kunden in mehrere Queues

Post by jojo »

Ein # ist ein Kommentarzeichen. D.h. alles was danach kommt wird ignoriert...
"Production": OTRS™ 8, OTRS™ 7, STORM powered by OTRS
"Testing": ((OTRS Community Edition)) and git Master

Never change Defaults.pm! :: Blog
Professional Services:: http://www.otrs.com :: enjoy@otrs.com
k3v
Znuny newbie
Posts: 27
Joined: 18 Aug 2009, 11:41
Znuny Version: 2.4.3

Frontend: Einsicht verschiedener Kunden in mehrere Queues

Post by k3v »

Das heißt wenn oben in der Notiz ein normales Kommentar steht wo einfach da steht das es benötigt wird aber unten beim eigentlichen Codeschnippsel dann auch eine # ist wird es wahrscheinlich als normales Kommentar behandelt?!

Code: Select all

#            [ 'UserCustomerIDs', 'CustomerIDs', 'customer_ids',  1, 0, 'var', '', 0 ],
So müsste es mit dem oben genannten (was in meiner config.pm steht) also funktionieren?

Code: Select all

            [ 'UserCustomerIDs', 'CustomerIDs', 'customer_ids',  1, 0, 'var', '', 0 ],
Tut mir leid wenn ich hier etwas blöd rumfrage, aber ich will mir das ständige editieren was ich ohnehin schon die letzten 3 Tage mache etwas ersparen. :?
Bin mal gespannt ob dann das Problem wegfällt, da ich ja die ganze Zeit nen Internal Server Error hatte.
Praktikant mit Abschlussarbeit welche auf OTRS basiert, werdet mich in nächster Zeit öfter hier sehen! ;)
Version: 2.4.4 | Debian (Lenny) | V-Server | OTRS::ITSM 1.3.1 | MySQL
jojo
Znuny guru
Posts: 15020
Joined: 26 Jan 2007, 14:50
Znuny Version: Git Master
Contact:

Frontend: Einsicht verschiedener Kunden in mehrere Queues

Post by jojo »

Der gesamte Block muss funktional in der Configg.pm sein, nicht nur die eine Zeile.
"Production": OTRS™ 8, OTRS™ 7, STORM powered by OTRS
"Testing": ((OTRS Community Edition)) and git Master

Never change Defaults.pm! :: Blog
Professional Services:: http://www.otrs.com :: enjoy@otrs.com
maxbacks
Znuny wizard
Posts: 326
Joined: 30 Jan 2008, 14:59
Znuny Version: 6.0.19
Real Name: Max Hendrik Backs

Frontend: Einsicht verschiedener Kunden in mehrere Queues

Post by maxbacks »

du musst das kommentarzeichen nicht nur bei dem feld entfernen, sondern bei allen Einträgen, die du benötigst/verwenden möchtest..
dein block müsste dann so aussehen:

Code: Select all

   $Self->{CustomerUser} = {
        Map => [
#            # note: Login, Email and CustomerID needed!
#            # var, frontend, storage, shown (1=always,2=lite), required, storage-type, http-link, readonly
            [ 'UserSalutation', 'Title',      'title',           1, 0, 'var', '', 0 ],
            [ 'UserFirstname',  'Firstname',  'givenname',       1, 1, 'var', '', 0 ],
            [ 'UserLastname',   'Lastname',   'sn',              1, 1, 'var', '', 0 ],
            [ 'UserLogin',      'Username',   'uid',             1, 1, 'var', '', 0 ],
            [ 'UserEmail',      'Email',      'mail',            1, 1, 'var', '', 0 ],
            [ 'UserCustomerID', 'CustomerID', 'mail',            0, 1, 'var', '', 0 ],
           [ 'UserCustomerIDs', 'CustomerIDs', 'customer_ids',  1, 0, 'var', '', 0 ],
            [ 'UserPhone',      'Phone',      'telephonenumber', 1, 0, 'var', '', 0 ],
            [ 'UserAddress',    'Address',    'postaladdress',   1, 0, 'var', '', 0 ],
            [ 'UserComment',    'Comment',    'description',     1, 0, 'var', '', 0 ],
        ],
                     }
    };
Ticket-System
Ubuntu 18.04
OTRS 6.0.19
k3v
Znuny newbie
Posts: 27
Joined: 18 Aug 2009, 11:41
Znuny Version: 2.4.3

Frontend: Einsicht verschiedener Kunden in mehrere Queues

Post by k3v »

Habe ich nun gemacht, das ganze sieht bei mir so wie auf dem Bild im Anhang aus, im Editor zumindes! ;)
Jetzt bekomme ich wenigstens keinen Internal Server Error mehr, dafür ist OTRS aufgrund der Netzwerk-Zeitüberschreitung nicht erreichbar
You do not have the required permissions to view the files attached to this post.
Praktikant mit Abschlussarbeit welche auf OTRS basiert, werdet mich in nächster Zeit öfter hier sehen! ;)
Version: 2.4.4 | Debian (Lenny) | V-Server | OTRS::ITSM 1.3.1 | MySQL
k3v
Znuny newbie
Posts: 27
Joined: 18 Aug 2009, 11:41
Znuny Version: 2.4.3

Frontend: Einsicht verschiedener Kunden in mehrere Queues

Post by k3v »

sry für den Doppelpost!

Aber jetzt habe ich trotzdem wenn ich aus der config.pm den Codeschnippsel wieder raus nehme eine weiße Seite. :?
Praktikant mit Abschlussarbeit welche auf OTRS basiert, werdet mich in nächster Zeit öfter hier sehen! ;)
Version: 2.4.4 | Debian (Lenny) | V-Server | OTRS::ITSM 1.3.1 | MySQL
maxbacks
Znuny wizard
Posts: 326
Joined: 30 Jan 2008, 14:59
Znuny Version: 6.0.19
Real Name: Max Hendrik Backs

Frontend: Einsicht verschiedener Kunden in mehrere Queues

Post by maxbacks »

Dann wirst du dir wohl irgendwo in der Config.pm einen Fehler reingehauen haben... ;)
Ticket-System
Ubuntu 18.04
OTRS 6.0.19
k3v
Znuny newbie
Posts: 27
Joined: 18 Aug 2009, 11:41
Znuny Version: 2.4.3

Frontend: Einsicht verschiedener Kunden in mehrere Queues

Post by k3v »

Naja, ich habe es mittlerweile gelöst.

Lösung:

die ganze Wurscht eingefügt:

Code: Select all

	    $Self->{CustomerUser} = {
        Name   => 'Database Backend',
        Module => 'Kernel::System::CustomerUser::DB',
        Params => {
            # if you want to use an external database, add the
            # required settings
#            DSN => 'DBI:odbc:yourdsn',
#            DSN => 'DBI:mysql:database=customerdb;host=customerdbhost',
#            User => '',
#            Password => '',
            Table => 'customer_user',
        },

        # customer uniq id
        CustomerKey => 'login',

        # customer #
        CustomerID             => 'customer_id',
        CustomerValid          => 'valid_id',
        CustomerUserListFields => [ 'first_name', 'last_name', 'email' ],

#        CustomerUserListFields => ['login', 'first_name', 'last_name', 'customer_id', 'email'],
        CustomerUserSearchFields           => [ 'login', 'first_name', 'last_name', 'customer_id' ],
        CustomerUserSearchPrefix           => '*',
        CustomerUserSearchSuffix           => '*',
        CustomerUserSearchListLimit        => 250,
        CustomerUserPostMasterSearchFields => ['email'],
        CustomerUserNameFields     => [ 'salutation', 'first_name', 'last_name' ],
        CustomerUserEmailUniqCheck => 1,

#        # show now own tickets in customer panel, CompanyTickets
#        CustomerUserExcludePrimaryCustomerID => 0,
#        # generate auto logins
#        AutoLoginCreation => 0,
#        # generate auto login prefix
#        AutoLoginCreationPrefix => 'auto',
#        # admin can change customer preferences
#        AdminSetPreferences => 1,
#        # use customer company support (reference to company, See CustomerCompany settings)
#        CustomerCompanySupport => 1,
#        # cache time to life in sec. - cache any database queris
#        CacheTTL => 0,
#        # just a read only source
#        ReadOnly => 1,
        Map => [

            # note: Login, Email and CustomerID needed!
            # var, frontend, storage, shown (1=always,2=lite), required, storage-type, http-link, readonly, http-link-target
            [ 'UserSalutation', 'Salutation', 'salutation', 1, 0, 'var', '', 0 ],
            [ 'UserFirstname',  'Firstname',  'first_name', 1, 1, 'var', '', 0 ],
            [ 'UserLastname',   'Lastname',   'last_name',  1, 1, 'var', '', 0 ],
            [ 'UserLogin',      'Username',   'login',      1, 1, 'var', '', 0 ],
            [ 'UserPassword',   'Password',   'pw',         0, 0, 'var', '', 0 ],
            [ 'UserEmail',      'Email',      'email',      1, 1, 'var', '', 0 ],

 #           [ 'UserEmail',      'Email', 'email',           1, 1, 'var', '$Env{"CGIHandle"}?Action=AgentTicketCompose&ResponseID=1&TicketID=$Data{"TicketID"}&ArticleID=$Data{"ArticleID"}', 0 ],
            [ 'UserCustomerID', 'CustomerID', 'customer_id', 0, 1, 'var', '', 0 ],

            [ 'UserCustomerIDs', 'CustomerIDs', 'customer_ids', 1, 0, 'var', '', 0 ],
            [ 'UserPhone',        'Phone',       'phone',        1, 0, 'var', '', 0 ],
            [ 'UserFax',          'Fax',         'fax',          1, 0, 'var', '', 0 ],
            [ 'UserMobile',       'Mobile',      'mobile',       1, 0, 'var', '', 0 ],
            [ 'UserStreet',       'Street',      'street',       1, 0, 'var', '', 0 ],
            [ 'UserZip',          'Zip',         'zip',          1, 0, 'var', '', 0 ],
            [ 'UserCity',         'City',        'city',         1, 0, 'var', '', 0 ],
            [ 'UserCountry',      'Country',     'country',      1, 0, 'var', '', 0 ],
            [ 'UserComment',      'Comment',     'comments',     1, 0, 'var', '', 0 ],
            [ 'ValidID',          'Valid',       'valid_id',     0, 1, 'int', '', 0 ],
        ],

        # default selections
        Selections => {

            UserSalutation => {
                'Mr.' => 'Herr.',
                'Mrs.' => 'Frau.',
            },
        },
    };
und den Error Log begutachtet wo dann irgendwas mit "No such file directory found" stand und den Pfad angesehen und gemerkt das er einmal in HTML reingegangen ist, dann in Standard und dann aber schlussendlich mit \..\ wieder rausgehüpft ist auf HTML zurück und somit der Standard-Ordner gefehlt hat.

(Sry für die vielleicht komplizierte Beschreibung in Wörtern jetzt, hab aber den Log nicht im Kopf und auch zu wenig Zeit zum nachsehen, soll nur ein kleiner Eintrag für die Nachwelt sein)

Danke nochmal für alle Bemühungen!

:)
Praktikant mit Abschlussarbeit welche auf OTRS basiert, werdet mich in nächster Zeit öfter hier sehen! ;)
Version: 2.4.4 | Debian (Lenny) | V-Server | OTRS::ITSM 1.3.1 | MySQL
Locked