CustomerID/CustomerIDs/Customer Groups
Moderator: crythias
Forum rules
Dont create your support topics here! No new topics with questions allowed!
Dont create your support topics here! No new topics with questions allowed!
-
- Moderator
- Posts: 10168
- Joined: 04 May 2010, 18:38
- Znuny / OTRS Version: 5.0.x
- Location: SouthWest Florida, USA
- Contact:
CustomerID/CustomerIDs/Customer Groups
This is asked a lot, and so I thought I'd post something:
A Customer Group (if enabled) is a way to group Customers on the admin side. The practical effect of a Customer Group is to limit the Queues (and some permissions) that are available to a Customer from the Customer Web Interface (otrs/customer.pl) Read more in the docs.
A CustomerID is a group name (or Company Identifier). An individual with the same CustomerID (CustomerID doesn't have to be unique) can see all the tickets of people with her CustomerID in "Company Tickets" of the Customer interface. By default configuration, a customer has an individual CustomerID (usually email address). This prevents a user from seeing each other's tickets, even in "Company Tickets"
Though not enabled initially, OTRS provides something called customer_ids which can be used to provide a supervisor the ability to use the "Company Tickets" interface by keeping a semicolon-separated list of CustomerID in the customer_ids field for whom he'd like to see tickets. Read more in the docs.
It is important to know that tickets retain both the username (customer_user_id) and the CustomerID (customer_id) in the database table "ticket". If the user has a change of CustomerID, it will not retroactively touch old tickets. customer_user_id is what determines "my tickets" and customer_id determines "company tickets"
New information:
You may assign a group to have access to Company Tickets
Ticket -> Frontend::Customer::ModuleRegistration
CustomerFrontend::Module###CustomerTicketOverView
So if you set up that your managers are members of the "Company Tickets" group, then apply that group to the Company Tickets interface above, everyone in the company/department can have the same CustomerID, but each customer will only see her own ticket (My tickets=username). However, managers will also see the Company Tickets tab and all customer users tickets who have the same customer_id as the manager.
Further, multi-department managers can make use of the "customer_ids" to see "Company Tickets" of, for example, "deptA;deptB". This reduces the need for maintaining a huge list of individual CustomerID centries for a manager with new or exiting employees.
An LDAP backend should CustomerUser Map CustomerID to a consistently filled attribute (Department, or CustomField?) to take advantage of this post.
Edit to add (5/23/2014):
To make a manager (and only a manager) have access to subordinate tickets as a group (View in Company Tickets) for his department/company:
1) manager and subordinates have same customer ID
2) Customer Company Support enabled
3) Manager is in a group that has access to Company Tickets
4) group that has access to Company Tickets is assigned permission to Company Tickets from within Sysconfig:
Edit Config Settings in Ticket -> Frontend::Customer::ModuleRegistration
CustomerFrontend::Module###CustomerTicketOverView
Above Company Tickets, find the word "Group"
click +
type the name of the group
save
done.
Also, changes to customer_id do not retroactively affect tickets. You will need to adjust the customer_id via Generic Agent (Find login, set customerid)
A Customer Group (if enabled) is a way to group Customers on the admin side. The practical effect of a Customer Group is to limit the Queues (and some permissions) that are available to a Customer from the Customer Web Interface (otrs/customer.pl) Read more in the docs.
A CustomerID is a group name (or Company Identifier). An individual with the same CustomerID (CustomerID doesn't have to be unique) can see all the tickets of people with her CustomerID in "Company Tickets" of the Customer interface. By default configuration, a customer has an individual CustomerID (usually email address). This prevents a user from seeing each other's tickets, even in "Company Tickets"
Though not enabled initially, OTRS provides something called customer_ids which can be used to provide a supervisor the ability to use the "Company Tickets" interface by keeping a semicolon-separated list of CustomerID in the customer_ids field for whom he'd like to see tickets. Read more in the docs.
It is important to know that tickets retain both the username (customer_user_id) and the CustomerID (customer_id) in the database table "ticket". If the user has a change of CustomerID, it will not retroactively touch old tickets. customer_user_id is what determines "my tickets" and customer_id determines "company tickets"
New information:
You may assign a group to have access to Company Tickets
Ticket -> Frontend::Customer::ModuleRegistration
CustomerFrontend::Module###CustomerTicketOverView
So if you set up that your managers are members of the "Company Tickets" group, then apply that group to the Company Tickets interface above, everyone in the company/department can have the same CustomerID, but each customer will only see her own ticket (My tickets=username). However, managers will also see the Company Tickets tab and all customer users tickets who have the same customer_id as the manager.
Further, multi-department managers can make use of the "customer_ids" to see "Company Tickets" of, for example, "deptA;deptB". This reduces the need for maintaining a huge list of individual CustomerID centries for a manager with new or exiting employees.
An LDAP backend should CustomerUser Map CustomerID to a consistently filled attribute (Department, or CustomField?) to take advantage of this post.
Edit to add (5/23/2014):
To make a manager (and only a manager) have access to subordinate tickets as a group (View in Company Tickets) for his department/company:
1) manager and subordinates have same customer ID
2) Customer Company Support enabled
3) Manager is in a group that has access to Company Tickets
4) group that has access to Company Tickets is assigned permission to Company Tickets from within Sysconfig:
Edit Config Settings in Ticket -> Frontend::Customer::ModuleRegistration
CustomerFrontend::Module###CustomerTicketOverView
Above Company Tickets, find the word "Group"
click +
type the name of the group
save
done.
Also, changes to customer_id do not retroactively affect tickets. You will need to adjust the customer_id via Generic Agent (Find login, set customerid)
OTRS 6.0.x (private/testing/public) on Linux with MySQL database.
Please edit your signature to include your OTRS version, Operating System, and database type.
Click Subscribe Topic below to get notifications. Consider amending your topic title to include [SOLVED] if it is so.
Need help? Before you ask
Please edit your signature to include your OTRS version, Operating System, and database type.
Click Subscribe Topic below to get notifications. Consider amending your topic title to include [SOLVED] if it is so.
Need help? Before you ask
Re: CustomerID/CustomerIDs/Customer Groups
Don't you find it odd that this is called CustomerID instead of CompanyID, given which form this value is first created in (i.e. the create Company page)?
OTRS 3.2.11 on Centos 6.4 with MySQL 5.0. Agents and internal customers authenticate via Active Directory.
Re: CustomerID/CustomerIDs/Customer Groups
Hi crythias,
I am trying to use the CustomerId to use it as a company id to filter all Tickets.
I used the TicketCreate API to modify the CustoemrId and CustomerUser but OTRS only add the CustomerUser to the ticket table. I am missing something?
Best regards.
I am trying to use the CustomerId to use it as a company id to filter all Tickets.
I used the TicketCreate API to modify the CustoemrId and CustomerUser but OTRS only add the CustomerUser to the ticket table. I am missing something?
Best regards.
Code: Select all
$ticketid = $soapclient->__soapCall("Dispatch", array($user, $pass, "TicketObject", "TicketCreate",
"TN", $ticketnr,
"Title", $title,
"Queue", $queue,
"Lock" , "unlock",
"PriorityID", 5,
"State" , "new",
"CustomerId", $customerid,
"CustomerUser", $customeruser,
"OwnerID" , $userid,
"UserID", $userid
));
-
- Moderator
- Posts: 10168
- Joined: 04 May 2010, 18:38
- Znuny / OTRS Version: 5.0.x
- Location: SouthWest Florida, USA
- Contact:
Re: CustomerID/CustomerIDs/Customer Groups
might be a case sensitivity error. Try CustomerID
Code: Select all
my $TicketID = $TicketObject->TicketCreate(
TN => $TicketObject->TicketCreateNumber(), # optional
Title => 'Some Ticket Title',
Queue => 'Raw', # or QueueID => 123,
Lock => 'unlock',
Priority => '3 normal', # or PriorityID => 2,
State => 'new', # or StateID => 5,
Type => 'normal', # or TypeID => 1, not required
Service => 'Service A', # or ServiceID => 1, not required
SLA => 'SLA A', # or SLAID => 1, not required
CustomerID => '123465',
CustomerUser => 'customer@example.com',
OwnerID => 123,
ResponsibleID => 123, # not required
ArchiveFlag => 'y', # (y|n) not required
UserID => 123,
);
OTRS 6.0.x (private/testing/public) on Linux with MySQL database.
Please edit your signature to include your OTRS version, Operating System, and database type.
Click Subscribe Topic below to get notifications. Consider amending your topic title to include [SOLVED] if it is so.
Need help? Before you ask
Please edit your signature to include your OTRS version, Operating System, and database type.
Click Subscribe Topic below to get notifications. Consider amending your topic title to include [SOLVED] if it is so.
Need help? Before you ask
Re: CustomerID/CustomerIDs/Customer Groups
[SOLVED]
You are right is was a case sensitive error: CustomerID and not CustomerId !!!
Thank you.
You are right is was a case sensitive error: CustomerID and not CustomerId !!!
Thank you.
Re: CustomerID/CustomerIDs/Customer Groups
I agree with you, the term is misleading.Mothra wrote:Don't you find it odd that this is called CustomerID instead of CompanyID, given which form this value is first created in (i.e. the create Company page)?
Test:: OTRS 5.0.10 w/MariaDB 5.5.47 backend on RHEL7
Prod:: OTRS 5.0.10 w/MariaDB 5.5.47 backend on RHEL7
Prod:: OTRS 5.0.10 w/MariaDB 5.5.47 backend on RHEL7
-
- Znuny advanced
- Posts: 119
- Joined: 12 Jan 2011, 22:35
- Znuny / OTRS Version: 4.x.x.x.x
- Company: Self-Employed
Re: CustomerID/CustomerIDs/Customer Groups
I have pulled the config.pm file but can't seem to figure out where to put the extra colum in the MAP array? Where do I put this in the file?
Script 11.5 in the docs referenced above
Script 11.5 in the docs referenced above
OTRS 4.0.11
Ubuntu 15.04
MySQL Database, PHP5, Apache (LAMP server bundle)
Ubuntu 15.04
MySQL Database, PHP5, Apache (LAMP server bundle)
-
- Znuny newbie
- Posts: 2
- Joined: 28 Jan 2011, 16:52
- Znuny / OTRS Version: 3.0.4
Re: CustomerID/CustomerIDs/Customer Groups
Can I remove customer_id from being mandatory? if yes, how to do it?
Re: CustomerID/CustomerIDs/Customer Groups
I don't think so, from the OTRS Admin manual page 51, "The CustomerID is needed by the system to identify the user and his tickets. Since the email address is a unique value, it can be used as ID."otrs_newbie wrote:Can I remove customer_id from being mandatory? if yes, how to do it?
So, if you don't want anyone to see each other tickets then you can use an email address as it is unique.
Test:: OTRS 5.0.10 w/MariaDB 5.5.47 backend on RHEL7
Prod:: OTRS 5.0.10 w/MariaDB 5.5.47 backend on RHEL7
Prod:: OTRS 5.0.10 w/MariaDB 5.5.47 backend on RHEL7
-
- Moderator
- Posts: 10168
- Joined: 04 May 2010, 18:38
- Znuny / OTRS Version: 5.0.x
- Location: SouthWest Florida, USA
- Contact:
Re: CustomerID/CustomerIDs/Customer Groups
PLEASE NOTE:
This howto is not for questions. Please post them in the Help section. If there are clarifications that need to be addressed in the HowTo, please PM me, but don't PM me with questions, unless you want to pay for my services
. Your questions are probably useful for other people.
This topic is now locked.
This howto is not for questions. Please post them in the Help section. If there are clarifications that need to be addressed in the HowTo, please PM me, but don't PM me with questions, unless you want to pay for my services

This topic is now locked.
OTRS 6.0.x (private/testing/public) on Linux with MySQL database.
Please edit your signature to include your OTRS version, Operating System, and database type.
Click Subscribe Topic below to get notifications. Consider amending your topic title to include [SOLVED] if it is so.
Need help? Before you ask
Please edit your signature to include your OTRS version, Operating System, and database type.
Click Subscribe Topic below to get notifications. Consider amending your topic title to include [SOLVED] if it is so.
Need help? Before you ask