Although there might be better ways of doing this, the reason this scrip wasn't 
working is simply some wrongly placed quote marks in like 6. Fixed and it 
works. That's what I get for trying to work at after midnight.

-Mike


From: Michael Ellis 
Sent: Thursday, August 06, 2009 12:31 AM
To: RT-USERS 
Subject: [rt-users] Custom Scrip Failing (using example from RT Essentials)and 
User Details not accessible


One of the biggest complaints from my privileged users during our testing of RT 
is that the requestor's phone number is not presented to them conveniently. We 
currently handle the bulk of our support by phone, so some of them are standing 
at my office door with torches and pitchforks.

To rectify this I am trying to implement the custom scrip found on page 81 of 
the RT Essentials book, and customize it to pull up phone numbers instead of 
departments.

The customized scrip is:

1    my $email = ($self->TicketObj->RequestorAddresses)[0];
2   
3   my $ldap = Net::LDAP->new( 'someserver.umanitoba.ca' );
4    $ldap->bind;
5   
6    my $msg = $ldap->search( base   => 'o="University of Manitoba,c="ca"',
7                            filter => "(mail=$email)",
8                           );
9     
10    my $entry = $msg->entry(0);
11   
12    my $phone= $entry->get_value('telephoneNumber');
13    
14    my $cf = RT::CustomField->new( $RT::SystemUser );
15    $cf->LoadByName( Name => 'RequestorPhone' );
16     
17    $self->TicketObj->AddCustomFieldValue( Field => $cf, Value => $phone);
18     
19    return 1;

Changes from the original are
3 Server
6 Base
7 email -> mail (what our non-standard ldap calls it)
12 $dept -> $phone
15 my custom field
17 $dept -> $phone

The custom field RequestorPhone is not being set, though. RT's debug log shows 
the entry:

[error]: Scrip 16 Prepare failed: Can't call method "get_value" on an undefined 
value at (eval 8643) line 12.

Could someone help me get this working, or share what they have done?

Secondly, I am having an issue that when my privileged users click on a 
requestor in the people tab of a ticket, they are presented with:

"Time to display: 0.009515

»|« RT 3.8.4 Copyright 1996-2009 Best Practical Solutions, LLC."

Root/Superuser is taken to the requestor's details.

So right now, my people have no way to obtain the requestor's phone number from 
within RT. So what are they doing is falling back to our old helpdesk system 
and in frustration entering the calls there. This is jeopardizing the 
acceptance and adoption of RT as a replacement for our old system.

I'm sure that I've made one or two (or more) simple errors and wish I could 
spend more time looking into this before going to the forum, but the 
townspeople are at the castle gates.

TIA,

Mike


--------------------------------------------------------------------------------


_______________________________________________
http://lists.bestpractical.com/cgi-bin/mailman/listinfo/rt-users

Community help: http://wiki.bestpractical.com
Commercial support: sa...@bestpractical.com


Discover RT's hidden secrets with RT Essentials from O'Reilly Media. 
Buy a copy at http://rtbook.bestpractical.com
_______________________________________________
http://lists.bestpractical.com/cgi-bin/mailman/listinfo/rt-users

Community help: http://wiki.bestpractical.com
Commercial support: sa...@bestpractical.com


Discover RT's hidden secrets with RT Essentials from O'Reilly Media. 
Buy a copy at http://rtbook.bestpractical.com

Reply via email to