On a new project I'm working on I'm setting up an OTRS for a small residential ISP, using an external DB backend for the customer information. On this case their customers are the final users that use their services at home (internet, phone, tv, etc), not the usual Company with users which is the default configuration of OTRS. So far I have done the following to adjust OTRS to these needs:
- Copy CustomerUser section of Default.pm to Config.pm and on it change CustomerCompanySupport = 0. This removes the Agent's interface menu entry Customer Administration from the Customers top menu.
- On SysConfig un checked
- Frontend::Module###AdminCustomerCompany to remove the Customer option on the admin interface.
- Frontend::Module###AdminCustomerUserGroup to remove the Customer<->Groups option on the admin interface.
- On Frontend::Module###AdminCustomerUserGroup removed the group Company Tickets to remove the Company Tickets menu option on the Tickets menu on the customer frontend.
- Put all users under the same CustomerID, as they are all customers of the same company (the ISP). With this option I have have the following concerns:
- Could any customer see other users tickets from the customer interface ? I just found the option Ticket::Frontend::CustomerDisableCompanyTicketAccess which I think would do the trick.
- As in the customer add page the CustomerID field is mandatory, is there a way to pre-fill it with a default value (preferably read-only), or remove it from that page and put a fixed value on the fields mapping on CustomerUser settings as described here ?
- Put each user under his own "Company" as it happens when an unknown user writes to OTRS and the email address is used as the CustomerID. Could it be done using the mapping and instead of mapping to customer_id, map to email ?