[rt-users] Problem with making a custom scrip
Hi, I'm currently working on making a scrip for RT4 which should eventually allow us to do the following: - User fills in the CF ticket type: Incident, Problem or Change. - User fills in the CF priority: 1, 2, 3 or 4. (in this setup we chose to make this a CF so that we can restrict the values entered) - Based on the combination of those CF's the SLA field is automatically filled with the appropriate SLA for that combo. - The SLA CF has these fixed values: Urgent, Normal, Low. - It's the SLA field that you get from the plugin. I found this scrip on the wiki which almost does what I want: - http://requesttracker.wikia.com/wiki/CreatePriorityBasedOnCustomFieldValues As a result I'm now looking at making a simple statement which sets the SLA based on te ticket type alone (for now). When that part is working I would expect that expanding the scrip to also incorporate the priority wouldn't be too difficult. This is what I've come up with so far: - Condition: On status change - Action: User defined - Template: Global Template: Transaction - Stage: TransactionCreate Custom condition: empty Custom action preparation code: return 1; Custom action cleanup code: my $my_type = $self-TicketObj-CustomFieldValues('Type'); my $my_sla = 'Urgent' if ($my_type =~ /^I/); my $my_sla = 'Normal' if ($my_type =~ /^C/); my $my_sla = 'Low' if ($my_type =~ /^P/); $self-TicketObj-AddCustomFieldValue( Field = 'SLA', Value = $my_sla ); At this point I'm kinda stuck, no matter how I fill in this part it always sets the SLA field to Normal regardless of the content in the CF type. Can someone point me in the right direction for this? I'd love to get this to work :) Best regards, Bart 2011 Training: http://bestpractical.com/services/training.html
[rt-users] Mobile interface Questions
Hi all, There is a login in /m/ but i only get redirected to the mobile IF after loging in on the normal IF.. is this on purpose, or my RT is missconfigured somewhere? Also, there is no mobile selfservice right? Would this be possible by adding a branching logic to /m/index.html to use not _elements/menu but for example /_elements/self/menu etc? Based on if the one who is loging in is privilaged or not? (Or i just wish this would be so simple? (= ) Thank you. Regards, Daniel O.T. 2011 Training: http://bestpractical.com/services/training.html
Re: [rt-users] Problem with making a custom scrip
Dnia 2011-07-26, wto o godzinie 10:22 +0200, Bart pisze: (...) my $my_type = $self-TicketObj-CustomFieldValues('Type'); Use $self-TicketObj-FirstCustomFieldValue('Type') instead. Regards, -- Robert Wysocki CONTIUM S.A., http://www.contium.pl 2011 Training: http://bestpractical.com/services/training.html
Re: [rt-users] Problem with making a custom scrip
Hi Robert, Thanks for the reply, I've changed that setting but it doesn't seem to fully solve my problem (I do notice a difference). I've modified the scrip a little, it now looks like this: my $my_type = $self-TicketObj-FirstCustomFieldValue('Type'); if ($my_type =~ /^I/) { $self-TicketObj-AddCustomFieldValue(Field = 'SLA', Value = 'Urgent'); }; if ($my_type =~ /^C/) { $self-TicketObj-AddCustomFieldValue(Field = 'SLA', Value = 'Normal'); }; if ($my_type =~ /^P/) { $self-TicketObj-AddCustomFieldValue(Field = 'SLA', Value = 'Low'); }; The first problem I have is that the SLA is already set to the value Normal, I see the scrip running but it keeps saying Set SLA Low to Normal or similar for Urgent (normal is ignored). So I get a feeling it does something, but it doesn't actually change the content of the SLA field. Maybe it's the type of CF that the SLA field is, it's a dropbox with the three options Urgent, Normal and Low. But I thought it shouldn't matter?! The second problem is that if the SLA field is set to (no value) then the scrip gives the error Low is no longer a value for custom field SLA, which could be the same issue as the first? Not able to fill the actual field? Any thoughts on this? (the above code is a little different but I get the same results as the first code) Best regards, Bart 2011/7/26 Robert Wysocki robert.wyso...@contium.pl Dnia 2011-07-26, wto o godzinie 10:22 +0200, Bart pisze: (...) my $my_type = $self-TicketObj-CustomFieldValues('Type'); Use $self-TicketObj-FirstCustomFieldValue('Type') instead. Regards, -- Robert Wysocki CONTIUM S.A., http://www.contium.pl 2011 Training: http://bestpractical.com/services/training.html 2011 Training: http://bestpractical.com/services/training.html
Re: [rt-users] Problem with making a custom scrip
hi, shouldn't you remove the trailing ; at the end of the line on the if statement ? if ($my_type =~ /^I/) { $self-TicketObj-AddCustomFieldValue(Field = 'SLA', Value = 'Urgent'); }; should be if ($my_type =~ /^I/) { $self-TicketObj-AddCustomFieldValue(Field = 'SLA', Value = 'Urgent'); } Raphaël MOUNEYRES Bart b...@pleh.info Envoyé par : rt-users-boun...@lists.bestpractical.com 26/07/2011 14:41 A rt-users@lists.bestpractical.com cc Objet Re: [rt-users] Problem with making a custom scrip Hi Robert, Thanks for the reply, I've changed that setting but it doesn't seem to fully solve my problem (I do notice a difference). I've modified the scrip a little, it now looks like this: my $my_type = $self-TicketObj-FirstCustomFieldValue('Type'); if ($my_type =~ /^I/) { $self-TicketObj-AddCustomFieldValue(Field = 'SLA', Value = 'Urgent'); }; if ($my_type =~ /^C/) { $self-TicketObj-AddCustomFieldValue(Field = 'SLA', Value = 'Normal'); }; if ($my_type =~ /^P/) { $self-TicketObj-AddCustomFieldValue(Field = 'SLA', Value = 'Low'); }; The first problem I have is that the SLA is already set to the value Normal, I see the scrip running but it keeps saying Set SLA Low to Normal or similar for Urgent (normal is ignored). So I get a feeling it does something, but it doesn't actually change the content of the SLA field. Maybe it's the type of CF that the SLA field is, it's a dropbox with the three options Urgent, Normal and Low. But I thought it shouldn't matter?! The second problem is that if the SLA field is set to (no value) then the scrip gives the error Low is no longer a value for custom field SLA, which could be the same issue as the first? Not able to fill the actual field? Any thoughts on this? (the above code is a little different but I get the same results as the first code) Best regards, Bart 2011/7/26 Robert Wysocki robert.wyso...@contium.pl Dnia 2011-07-26, wto o godzinie 10:22 +0200, Bart pisze: (...) my $my_type = $self-TicketObj-CustomFieldValues('Type'); Use $self-TicketObj-FirstCustomFieldValue('Type') instead. Regards, -- Robert Wysocki CONTIUM S.A., http://www.contium.pl 2011 Training: http://bestpractical.com/services/training.html 2011 Training: http://bestpractical.com/services/training.html # Ce courriel et les documents qui lui sont joints peuvent contenir des informations confidentielles ou ayant un caractère privé. S'ils ne vous sont pas destinés, nous vous signalons qu'il est strictement interdit de les divulguer, de les reproduire ou d'en utiliser de quelque manière que ce soit le contenu. Si ce message vous a été transmis par erreur, merci d'en informer l'expéditeur et de supprimer immédiatement de votre système informatique ce courriel ainsi que tous les documents qui y sont attachés. ** This e-mail and any attached documents may contain confidential or proprietary information. If you are not the intended recipient, you are notified that any dissemination, copying of this e-mail and any attachments thereto or use of their contents by any means whatsoever is strictly prohibited. If you have received this e-mail in error, please advise the sender immediately and delete this e-mail and all attached documents from your computer system. # 2011 Training: http://bestpractical.com/services/training.html
Re: [rt-users] Problem with making a custom scrip
Hi Raphaël, I gave that a try just now, doesn't seem to make any difference :( Best regards, Bart 2011/7/26 Raphaël MOUNEYRES raphael.mouney...@sagemcom.com hi, shouldn't you remove the trailing ; at the end of the line on the if statement ? if ($my_type =~ /^I/) { $self-TicketObj-AddCustomFieldValue(Field = 'SLA', Value = 'Urgent'); }; should be if ($my_type =~ /^I/) { $self-TicketObj-AddCustomFieldValue(Field = 'SLA', Value = 'Urgent'); } Raphaël MOUNEYRES *Bart b...@pleh.info* Envoyé par : rt-users-boun...@lists.bestpractical.com 26/07/2011 14:41 A rt-users@lists.bestpractical.com cc Objet Re: [rt-users] Problem with making a custom scrip Hi Robert, Thanks for the reply, I've changed that setting but it doesn't seem to fully solve my problem (I do notice a difference). I've modified the scrip a little, it now looks like this: my $my_type = $self-TicketObj-FirstCustomFieldValue('Type'); if ($my_type =~ /^I/) { $self-TicketObj-AddCustomFieldValue(Field = 'SLA', Value = 'Urgent'); }; if ($my_type =~ /^C/) { $self-TicketObj-AddCustomFieldValue(Field = 'SLA', Value = 'Normal'); }; if ($my_type =~ /^P/) { $self-TicketObj-AddCustomFieldValue(Field = 'SLA', Value = 'Low'); }; The first problem I have is that the SLA is already set to the value Normal, I see the scrip running but it keeps saying Set SLA Low to Normal or similar for Urgent (normal is ignored). So I get a feeling it does something, but it doesn't actually change the content of the SLA field. Maybe it's the type of CF that the SLA field is, it's a dropbox with the three options Urgent, Normal and Low. But I thought it shouldn't matter?! The second problem is that if the SLA field is set to (no value) then the scrip gives the error Low is no longer a value for custom field SLA, which could be the same issue as the first? Not able to fill the actual field? Any thoughts on this? (the above code is a little different but I get the same results as the first code) Best regards, Bart 2011/7/26 Robert Wysocki *robert.wyso...@contium.pl*robert.wyso...@contium.pl Dnia 2011-07-26, wto o godzinie 10:22 +0200, Bart pisze: (...) my $my_type = $self-TicketObj-CustomFieldValues('Type'); Use $self-TicketObj-FirstCustomFieldValue('Type') instead. Regards, -- Robert Wysocki CONTIUM S.A., *http://www.contium.pl* http://www.contium.pl/ 2011 Training: *http://bestpractical.com/services/training.html*http://bestpractical.com/services/training.html 2011 Training: http://bestpractical.com/services/training.html # Ce courriel et les documents qui lui sont joints peuvent contenir des informations confidentielles ou ayant un caractère privé. S'ils ne vous sont pas destinés, nous vous signalons qu'il est strictement interdit de les divulguer, de les reproduire ou d'en utiliser de quelque manière que ce soit le contenu. Si ce message vous a été transmis par erreur, merci d'en informer l'expéditeur et de supprimer immédiatement de votre système informatique ce courriel ainsi que tous les documents qui y sont attachés. ** This e-mail and any attached documents may contain confidential or proprietary information. If you are not the intended recipient, you are notified that any dissemination, copying of this e-mail and any attachments thereto or use of their contents by any means whatsoever is strictly prohibited. If you have received this e-mail in error, please advise the sender immediately and delete this e-mail and all attached documents from your computer system. # 2011 Training: http://bestpractical.com/services/training.html
[rt-users] What permissions to edit RT-at-a-glance?
I might be wrong, but I seem to remember there was a specific privilege to let a user edit their RT at a glance (e.g. by letting them redefine the order of elements). I'm having a look under Global-User Rights and nothing seems to match. I've tried the ModifyGroupDashboard but naturally it's not the one. Is there such permission, or is it just for the super user? Thanks, Giuseppe -- Giuseppe Sollazzo Senior Systems Analyst Computing Services Information Services St. George's, University Of London Cranmer Terrace London SW17 0RE Email: gsoll...@sgul.ac.uk Direct Dial: +44 20 8725 5160 Fax: +44 20 8725 3583 2011 Training: http://bestpractical.com/services/training.html
Re: [rt-users] Problem with making a custom scrip
On Tue, Jul 26, 2011 at 02:40:21PM +0200, Bart wrote: The first problem I have is that the SLA is already set to the value Normal, I see the scrip running but it keeps saying Set SLA Low to Normal or similar for Urgent (normal is ignored). So I get a feeling it does something, but it doesn't actually change the content of the SLA field. Maybe it's the type of CF that the SLA field is, it's a dropbox with the three options Urgent, Normal and Low. But I thought it shouldn't matter?! The second problem is that if the SLA field is set to (no value) then the scrip gives the error Low is no longer a value for custom field SLA, which could be the same issue as the first? Not able to fill the actual field? Any thoughts on this? (the above code is a little different but I get the same results as the first code) Where do you see these messages, in the webui? Are you doing this on create or from the Basics page and setting the SLA to normal or unset there? You may need to switch your scrip type to transactionbatch to it runs after the web updates finish. -kevin pgpyTITvsRAYj.pgp Description: PGP signature 2011 Training: http://bestpractical.com/services/training.html
Re: [rt-users] What permissions to edit RT-at-a-glance?
On Tue, Jul 26, 2011 at 02:21:04PM +0100, Giuseppe Sollazzo wrote: I might be wrong, but I seem to remember there was a specific privilege to let a user edit their RT at a glance (e.g. by letting them redefine the order of elements). I'm having a look under Global-User Rights and nothing seems to match. I've tried the ModifyGroupDashboard but naturally it's not the one. Is there such permission, or is it just for the super user? ModifySelf -kevin pgpY1CcEzywGB.pgp Description: PGP signature 2011 Training: http://bestpractical.com/services/training.html
Re: [rt-users] What permissions to edit RT-at-a-glance?
Ah, thanks! G On 26/07/11 14:27, Kevin Falcone wrote: On Tue, Jul 26, 2011 at 02:21:04PM +0100, Giuseppe Sollazzo wrote: I might be wrong, but I seem to remember there was a specific privilege to let a user edit their RT at a glance (e.g. by letting them redefine the order of elements). I'm having a look under Global-User Rights and nothing seems to match. I've tried the ModifyGroupDashboard but naturally it's not the one. Is there such permission, or is it just for the super user? ModifySelf -kevin 2011 Training: http://bestpractical.com/services/training.html -- Giuseppe Sollazzo Senior Systems Analyst Computing Services Information Services St. George's, University Of London Cranmer Terrace London SW17 0RE Email: gsoll...@sgul.ac.uk Direct Dial: +44 20 8725 5160 Fax: +44 20 8725 3583 2011 Training: http://bestpractical.com/services/training.html
Re: [rt-users] View queue via the web w/o ticket creation ability
On Tue, Jul 26, 2011 at 02:38:45PM -0400, Kevin Garfield Robinson wrote: I know that in order to allow tickets to be created the CreateTicket permission has to be given to Everyone. Like most permission schemes, is there a permission override option for That isn't true. You only have to give it to Everyone or Unprivileged if you want users without existing accounts in RT to be able to create tickets by email. everyone where I could explicitly state that a particular doesn't have the right to create a ticket, but everyone else does? Grant Unprivileged the CreateTicket right, put all your other Privileged users in a group and give them CreateTicket. Then create your readonly Privileged user and don't add them to the group that has CreateTicket. -kevin pgpuuNn12cqJj.pgp Description: PGP signature 2011 Training: http://bestpractical.com/services/training.html
Re: [rt-users] View queue via the web w/o ticket creation ability
Thank you very much Kevin; that did the trick. Quick question, is there a way for the system to respond with Permission Denied when clicking on New Ticket in, other than the error message Queue could not be loaded.? I was hoping the system would respond similarly to when Take a ticket is clicked on; just wondering if the error response could be easily altered. Thanks again -Original Message- From: rt-users-boun...@lists.bestpractical.com [mailto:rt-users-boun...@lists.bestpractical.com] On Behalf Of Kevin Falcone Sent: Tuesday, July 26, 2011 2:50 PM To: rt-users@lists.bestpractical.com Subject: Re: [rt-users] View queue via the web w/o ticket creation ability On Tue, Jul 26, 2011 at 02:38:45PM -0400, Kevin Garfield Robinson wrote: I know that in order to allow tickets to be created the CreateTicket permission has to be given to Everyone. Like most permission schemes, is there a permission override option for That isn't true. You only have to give it to Everyone or Unprivileged if you want users without existing accounts in RT to be able to create tickets by email. everyone where I could explicitly state that a particular doesn't have the right to create a ticket, but everyone else does? Grant Unprivileged the CreateTicket right, put all your other Privileged users in a group and give them CreateTicket. Then create your readonly Privileged user and don't add them to the group that has CreateTicket. -kevin 2011 Training: http://bestpractical.com/services/training.html
Re: [rt-users] Deep Recursion Error, rt-4.0.1
Hello Randy, It would be hard to reproduce this problem locally and debug remotly. I believe you're using mod_perl and probably our tricky code that gets name of a variable by a reference has problems your enviroment. Try FastCGI, it may be easiest solution for you. On Tue, Jul 26, 2011 at 10:12 PM, Randy Schwager eyzo...@yahoo.com wrote: Sorry, there might be a little bit of equivocation in that last email. The missing quote in the apache configuration file is a typo in this email and does not reflect the apache configuration file on the RT server. The error is still occurring. From: Randy Schwager eyzo...@yahoo.com To: Alex Vandiver ale...@bestpractical.com Cc: rt-users@lists.bestpractical.com rt-users@lists.bestpractical.com Sent: Monday, July 25, 2011 6:01 PM Subject: Re: [rt-users] Deep Recursion Error, rt-4.0.1 You're right; it's perl 5.10.1. The RT standalone server works fine on its own. The missing quote was a typo--apologies. From: Alex Vandiver ale...@bestpractical.com To: Randy Schwager eyzo...@yahoo.com Cc: rt-users@lists.bestpractical.com rt-users@lists.bestpractical.com Sent: Monday, July 25, 2011 4:47 PM Subject: Re: [rt-users] Deep Recursion Error, rt-4.0.1 On Thu, 2011-07-21 at 14:05 -0700, Randy Schwager wrote: I use Apache 2.2.11 with mod_perl 2.0.4. Perl is at version 5.10.10, MySQL at 5.0.83, and I'm running Fedora 10. There is no perl 5.10.10; do you mean 5.10.1? After I drop the apache configuration file for rt4 into the conf.d directory and try to start up apache, I get the following error: Do you also see this problem if you run RT's standalone server? Here's the config file for rt4 (it's pretty vanilla): VirtualHost *:8080 ### Optional apache logs for RT # ErrorLog /opt/rt4/var/log/apache2.error # TransferLog /opt/rt4/var/log/apache2.access # LogLevel debug AddDefaultCharset UTF-8 DocumentRoot /opt/rt4/share/html This line is missing a close quote here ---^. I'm surprised Apache started at all with that syntax error. - Alex 2011 Training: http://bestpractical.com/services/training.html 2011 Training: http://bestpractical.com/services/training.html -- Best regards, Ruslan. 2011 Training: http://bestpractical.com/services/training.html
[rt-users] RT couldn't store your session when moving to a new server
I've read many threads on this issue but none of the suggestions have worked for me. I'm trying to move an existing 3.6.5 database to a new server to set up a sandbox for testing the 4.x upgrade. I have 3.6.5 installed and running on the new server with our plugins and customizations. Now I'm trying to move a copy of our data over. We use InnoDB and store sessions in the database (default). I copied over all the .frm files and the InnoDB data/log files and restarted MySQL and Apache. Browsing to the site gives: RT couldn't store your session. This may mean that that the directory '/usr/local/rt3/var/session_data' isn't writable or a database table is missing or corrupt. Trace begun at /usr/lib/perl5/site_perl/5.8.8/HTML/Mason/Exceptions.pm line 129 HTML::Mason::Exceptions::rethrow_exception('RT couldn\'t store your session.^JThis may mean that that the directory \'/usr/local/rt3/var/session_data\' isn\'t writable or a database table is missing or corrupt.^J^J') called at /usr/local/rt3/share/html/Elements/SetupSessionCookie line 100 HTML::Mason::Commands::__ANON__ at /usr/lib/perl5/site_perl/5.8.8/HTML/Mason/Component.pm line 135 HTML::Mason::Component::run('HTML::Mason::Component::FileBased=HASH(0x8a1f3f4)') called at /usr/lib/perl5/site_perl/5.8.8/HTML/Mason/Request.pm line 1302 eval {...} at /usr/lib/perl5/site_perl/5.8.8/HTML/Mason/Request.pm line 1292 HTML::Mason::Request::comp(undef, undef) called at /usr/local/rt3/share/html/autohandler line 120 HTML::Mason::Commands::__ANON__ at /usr/lib/perl5/site_perl/5.8.8/HTML/Mason/Component.pm line 135 HTML::Mason::Component::run('HTML::Mason::Component::FileBased=HASH(0x8a1e68c)') called at /usr/lib/perl5/site_perl/5.8.8/HTML/Mason/Request.pm line 1297 eval {...} at /usr/lib/perl5/site_perl/5.8.8/HTML/Mason/Request.pm line 1292 HTML::Mason::Request::comp(undef, undef, undef) called at /usr/lib/perl5/site_perl/5.8.8/HTML/Mason/Request.pm line 481 eval {...} at /usr/lib/perl5/site_perl/5.8.8/HTML/Mason/Request.pm line 481 eval {...} at /usr/lib/perl5/site_perl/5.8.8/HTML/Mason/Request.pm line 433 HTML::Mason::Request::exec('HTML::Mason::Request::ApacheHandler=HASH(0xa314d44)') called at /usr/lib/perl5/site_perl/5.8.8/HTML/Mason/ApacheHandler.pm line 168 HTML::Mason::Request::ApacheHandler::exec('HTML::Mason::Request::ApacheHandler=HASH(0xa314d44)') called at /usr/lib/perl5/site_perl/5.8.8/HTML/Mason/ApacheHandler.pm line 825 HTML::Mason::ApacheHandler::handle_request('HTML::Mason::ApacheHandler=HASH(0x98a9da4)', 'Apache2::RequestRec=SCALAR(0x9a77ca0)') called at /usr/local/rt3/bin/webmux.pl line 125 eval {...} at /usr/local/rt3/bin/webmux.pl line 125 RT::Mason::handler('Apache2::RequestRec=SCALAR(0x9a77ca0)') called at /usr/lib/perl5/site_perl/5.8.8/Apache/Session/MySQL.pm line 0 eval {...} at /usr/lib/perl5/site_perl/5.8.8/Apache/Session/MySQL.pm line 0 --- Any help or ideas greatly appreciated. Thanks- Lee 2011 Training: http://bestpractical.com/services/training.html
Re: [rt-users] Tuning RT4
On 07/26/2011 11:32 PM, Kevin Falcone wrote: On Tue, Jul 26, 2011 at 10:29:19AM +1000, Jeff Fearn wrote: On 07/26/2011 02:34 AM, Adam Thompson wrote: Set($AutocompleteOwners, 1); Compare the display time Tickets-New Search With AutocompleteOwners: Time to display: 0.442697 Without AutocompleteOwners: Time to display: 17.274538 13K users is quite painful on that page! I'll note that on a system with 25K users, that page takes about .3 to render for me (without switching to autocomplete). The owner list is less concerned with User size and more with the distribution of the OwnTicket ACL to different kinds of users. This is interesting. Most of the time appears to be spent after the DB call, I think it's formatting and sorting the drop down. Cheers, Jeff. 2011 Training: http://bestpractical.com/services/training.html
[rt-users] RT3 - Custom Field search box in at a glance
Hi All, Within our relatively new instance of RT 3.8.10 an custom field is created for the external ticket / reference number. Despite searches, possibly with wrong words, on RT-Users and the Wiki the following question still remains: The normal search box above doesn't return any matches on the Ext Ticket # custom field despite being a global custom field. When performing an query via the query builder searches for a ext ticket number, for instance 1 works fine and the internal ticket 1030 is returned. When there we have an internal ticket which has the same ID as stored in an other ticket for the ext ticket # then the internal ticket is shown directly. What we would like to do is present an special search box on the RT at a glance page where the search is solely performed on the custom field. Is there any way to do this with the base functions of RT or via an extension? If this is not available, are there some pointers available how one can create, via a bit a perl or so, an item on the RT at a glance page with this search form that will populate a field in a saved search or otherwise? Thanks in advance, Stijn -- Yours Sincerly / Met Vriendelijke groet, Stijn Jonker 2011 Training: http://bestpractical.com/services/training.html