OTRS 3.0 Ticket Templates
Nils Leideck02. Nov 2010 | AdministrationBest PracticesModifications & Packages
Disclaimer:
The practical examples presented in our technical blog (blog.otrs.com) and now in the expert category in our FAQ blog section serve as a source of ideas and documentation to show what is theoretically possible with OTRS in concrete scenarios or sometimes even for more exotic configurations. All configurations presented here were developed under laboratory conditions as a proof of concept.
We can only guarantee testing and implementation of these concepts to be error-free and productive if implemented in a workshop with one of our OTRS consultants. Without this, the responsibility lies with the customer himself. Please note that configurations from older OTRS versions may not work in the newer ones.
You all know the need of our agents to have Ticket-Template-Buttons in Phone and Email View.
This is of course not as good as it could be, because you need to modify standard *.dtl files. Therefore you actually need to change something that is not update save.
but …
NOW THERE IS OTRS 3.0 !!!
If you hit this new created navigation item you are redirected to the normal phone ticket view, but the page is magically prefilled with content. The content can be the default Queue for requests regarding software, the ticket type for incidents, a meaningful subject and body … maybe with a checklist … open your mind and create your own templates ;-)
This is the resulting screen – just as an example:
But how does this magic works???
Simple answer: by extending options in the OTRS 3.0 SysConfig
You need it more specific? Here we go:
|-> SysConfig
|-> Ticket
|-> Frontend::Agent::ModuleRegistration
|-> Frontend::Module###AgentTicketPhone
There you just need to add a new SysConfig hash where you can describe additional menu entries with URL params as you want.
Adding a new hasg is simply done by clicking on theplus sign on the bottom.
My configuration for the screens above:
Where the Action Param is:
Action=AgentTicketPhone;Subaction=StoreNew;ExpandCustomerName=2;Subject=Example+Subject;Dest=1%7C%7CPostmaster;NextStateID=4;TimeUnits=5;Body=%3Cstrong%3E%3Cspan+style%3D%22color%3A+rgb%28255%2C+0%2C+0%29%3B%22%3EMy+bonnie+is+over+the+ocean%3C%2Fspan%3E%3C%2Fstrong%3E%2C+%3Cspan+style%3D%22color%3A+rgb%28230%2C+230%2C+250%29%3B%22%3E%3Cspan+style%3D%22background-color%3A+rgb%280%2C+0%2C+255%29%3B%22%3Emy+bonnie+is+over+the+sea%3C%2Fspan%3E%3C%2Fspan%3E%2C+%3Cspan+style%3D%22color%3A+rgb%280%2C+128%2C+0%29%3B%22%3E%3Cspan+style%3D%22font-size%3A+16px%3B%22%3E%3Cspan+style%3D%22font-family%3A+Comic+Sans+MS%2Ccursive%3B%22%3E%3Cem%3E%3Cu%3Eoh+bring+back+my+bonnie+to+me%3C%2Fu%3E%3C%2Fem%3E%3C%2Fspan%3E%3C%2Fspan%3E%3C%2Fspan%3E!%3Cbr+%2F%3E%0D%0A
Define the ticket’s options, all are optional as argument for
“Action=AgentTicketPhone;Subaction=StoreNew”
Remember to encode everything non-ASCII (even a SPACE is represented as ‘+’)
http://en.wikipedia.org/wiki/Percent-encoding
Subject : Subject=Example+Subject Target queue : Dest=1%7C%7CPostmaster (means: 1||Postmaster) Next state : NextStateID=4 (check your configuration for valid state IDs) Time units : TimeUnits=5 Type : TypeID=1 (check your configuration for valid type IDs) Service : ServiceID=5 (check your configuration for valid service IDs) Priority : PriorityID=3 (check your configuration for valid priority IDs) ...
Hint:
To find valid values for the above xxIDs, please have a look into the Admin interface or the source of a generated website.
And there is more power !!! Unlike other systems, you can now define permission groups for EACH template. This enables you to provide IT related ticket templates to your IT Department guys and HR related templates to your HR guys … again, open your mind … to OTRS 3.0!
Have phun with OTRS 3.0
Jens Bothe at 08.02.2023, 15:44
Please contact the support team to send you the requested informations for OTRS 7 and 8
Soucou at 08.02.2023, 15:27
Jens, do you have any reference(resource) where I can find how to configure the outbound messages to a custom endpoint with OTRS(8/7)?
Jens Bothe at 08.02.2023, 15:25
Actual versions are only version 7 and 8. Older versions are not supported and an usage might violate data privacy laws as well as security and complaince guidelines.
Soucou at 08.02.2023, 15:23
Thank you Jens for your quick reply. which version of OTRS supports that ?
Jens Bothe at 06.02.2023, 14:48
Hi, OTRS 3 does not support such kind of services. Also it is out of support since several years and has a load of security issues. The newest versions (Version 7 and 8) do support outbound webservices.
Soucou at 06.02.2023, 14:45
hi, is it possible with OTRS 3 to send outbound an HTTPS request to an external endpoint?
Jens Bothe at 20.03.2018, 14:46
There is currently no template functionality for the customer interface
Sophea at 20.03.2018, 11:20
Hello Sir, In Agent ticket, we can define many template and link to queue. Once a ticket is created in agent interface, we just select queue then the template will drop-down. How to make these template available in customer interface?
Jens at 25.05.2015, 20:57
For services please contact sales@otrs.com or use the forums, mailinglists or facebook group
Simon at 21.05.2015, 10:17
I just ran through this, now the agent Ticket button is missing, how do we get it back, and I did remove the navbar entry but to unavail
Catherine at 18.02.2015, 10:39
They say you have to sign a contract for support, wonder if we will have to pay
Jens at 07.01.2015, 12:46
as this blog is not a help forum please contact sales@otrs.com for professional services.
wladan at 06.01.2015, 16:08
Try to find, but dont know where.. :(
Jens at 06.01.2015, 15:27
yes it is. Have a look at the admin book (http://doc.otrs.org)
wladan at 06.01.2015, 15:26
Very great post! Thank you very much! Is there a way to add attach in template?
Bill Vlahos at 16.10.2014, 00:55
I'd like to create a new phone ticket by passing a URL into OTRS that includes the callerID of the phone number of a customer. I found this link which sounds exactly like what I want to do but it doesn't work. It only opens a new phone ticket but doesn't do the lookup of the phone number field for the Customer User and populate the Customer User field. http://www.otrs-treff.de/en/otrs-preset-field-values-url-parameters-create-new-phone-tickets-cti-integration The URL I'm sending is http:///otrs/index.pl?Action=AgentTicketPhone&Subaction=StoreNew&ExpandCustomerName=1&From=5555555555 The article was written in 2009 so perhaps OTRS has changed something.
Nils at 07.09.2014, 22:08
If you change your agent ticket phone screen from post to get, you will see all necessary arguments in the URL. No need to contact other authors ;-) If you are still in trouble, just contact OTRS Group at www.otrs.com and request support. :-)
David Fritsch at 02.09.2014, 07:01
I noticed that the author of this artciel doesn´t exist anymore....so we have to contact the other authors. :-(
SSFRY at 01.09.2014, 15:51
I've the same issue that David Fritsch, I can't autofill the Customer Field. I've used PreSelectedCustomerUser, SelectedCustomerUser, CustomerUser, ... without success.
David Fritsch at 28.08.2014, 14:24
Is there anywhere a list with all possible arguments which i can use in the Link? I´m searching for a possibility to autofill the "Customer Contact" field at the top but i can´t find a solution for this.
Hanns at 14.01.2014, 13:50
Thanks for the template introduction. We made excessive use of it until now. A question concerning the action link: is there a chance of adding a dynamic field (type ticket) and its predefined value? The idea is, offering a ticket form in the customer frontend, defining the raw queue as its destination but giving the helpdesk agents a hint where this ticket omight be queued after having revised its contents. I.e. dynamic field (type ticket) "targetQueue" with value QueueID::QueueName. Thanks for any suggestions
Martin at 14.01.2014, 12:04
great post. Is it possible to define the "ToCustomer" adress field in the Otrs 3.2.12 version?
Lars Jorgensen at 07.01.2014, 12:53
Finally stumbled upon this, and it is pretty awesome to create quick tickets. One question: Is it possible to auto select the agent as the currently logged in agent?
Robbie Maluka at 06.12.2013, 14:45
Hello, found this wonderful solution and it works like a charm! But, one question: How to get created button in different languages? For example the name, description, preloaded values in english or german or francais, depending of the chosen user language? Cheers, Robbie
Nils Leideck at 22.07.2011, 10:32
Hi Shawn, thanks for your great video. Just keep in mind that this is working but not update save as the AgentTicketPhone file has to be modified. Adding just a few XML lines into a new file in Kernel/Config/Files/MyConfig.xml makes more sense I feel :-) Cheers, Nils
Shawn Beasley at 21.07.2011, 09:05
http://www.youtube.com/watch?v=1B8mZ9Ku_bA&feature=channel_video_title A video to go along with this post (almost)
Mothra at 08.03.2011, 15:08
One simple way to do the percent encoding (since you've got a machine with Perl installed) is to design the HTML for your email body in a text file, remove all of the carriage returns (in vi, just hold down shift+j) and then run the following: perl -e 'use URI::Escape;print uri_escape();print "\n";' < html.txt
Nils Leideck at 03.12.2010, 16:55
Hi Martin, I really like you idea. Maybe you could be so kind and share your code and description as an enhancement entry in our bugzilla? This would be great! Many thanks for your effort and your inventiveness!! Cheers, Nils
Martin Balzarek at 03.12.2010, 11:22
Hi Jens, for sure, I like to explain this. I can agree with you - Ticket Templates via URL is possible in any version (, I've ever used). To enable this in a more friendly way, we've extended AgentTicketPhone and added a special part in SysConfig. Please take a look at http://tinyurl.com/3xhgoov and http://tinyurl.com/36e6ssu to see how it is configured. You can find the new perl code starting with "Self->{DefaultSetName}" approximately in line 275. Well, now you can easily create a new template and register it without the need of a non-ASCII encoding. What do you think? Greetings, Martin B.
Jens at 26.11.2010, 09:19
Hi Martin, could you please explain this a little more? Having the possibility of Ticket Templates is in OTRS since versions. So I don't see any reference to KIX4OTRS here. Feel free to enhance the configuration ;-)
Nils Leideck at 12.11.2010, 21:37
Try this action params: Action=CustomerTicketMessage;Subaction=StoreNew;Expand=3;Dest=1||Postmaster;Subject=Test;Body=Test;PriorityID=3 Cheers, Nils
1010 at 12.11.2010, 16:27
I tried to adapt it to Frontend::Customer::ModuleRegistration::CustomerTicketMessage Unfortunately, the link : Action=CustomerTicketMessage&Subaction=StoreNew&Subject=New+project&Body=Project+name raises the following error : Error: Need TicketID! Comment: Traceback: ERROR: OTRS-CGI-10 Perl: 5.10.0 OS: linux Time: Thu Nov 11 19:59:26 2010 Message: Need TicketID! Traceback (6339): Module: Kernel::System::Ticket::Article::ArticleCreate (v1.259) Line: 118 Module: Kernel::Modules::CustomerTicketMessage::Run (v1.73) Line: 409 Module: Kernel::System::Web::InterfaceCustomer::Run (v1.55) Line: 956 Module: ModPerl::ROOT::ModPerl::Registry::opt_otrs_bin_cgi_2dbin_customer_2epl::handler (unknown version) Line: 48 Module: (eval) (v1.42) Line: 204 Module: ModPerl::RegistryCooker::run (v1.42) Line: 204 Module: ModPerl::RegistryCooker::default_handler (v1.42) Line: 170 Module: ModPerl::Registry::handler (v1.99) Line: 31 Looks like it ask for a TicketID but this should be a template … Is there something wrong ?
Martin Balzarek at 08.11.2010, 10:22
Again, one more KIX4OTRS-function which made it into OTRS-mainstream. However, we think that the way it's configured could be improved...