|
|
| |
RT::Client::REST::Ticket(3) |
User Contributed Perl Documentation |
RT::Client::REST::Ticket(3) |
RT::Client::REST::Ticket - ticket object representation.
my $rt = RT::Client::REST->new(server => $ENV{RTSERVER});
# Create a new ticket:
my $ticket = RT::Client::REST::Ticket->new(
rt => $rt,
queue => "General",
subject => $subject,
)->store(text => "This is the initial text of the ticket");
print "Created a new ticket, ID ", $ticket->id, "\n";
# Update
my $ticket = RT::Client::REST::Ticket->new(
rt => $rt,
id => $id,
priority => 10,
)->store;
# Retrieve
my $ticket => RT::Client::REST::Ticket->new(
rt => $rt,
id => $id,
)->retrieve;
unless ($ticket->owner eq $me) {
$ticket->steal; # Give me more work!
}
RT::Client::REST::Ticket is based on RT::Client::REST::Object. The
representation allows one to retrieve, edit, comment on, and create tickets in
RT.
- id
- This is the numeric ID of the ticket.
- queue
- This is the name of the queue (not numeric id).
- owner
- Username of the owner.
- creator
- Username of RT user who created the ticket.
- subject
- Subject of the ticket.
- status
- The status is usually one of the following: "new",
"open", "resolved", "stalled",
"rejected", and "deleted". However, custom RT
installations sometimes add their own statuses.
- priority
- Ticket priority. Usually a numeric value.
- initial_priority
- final_priority
- requestor
- This is the attribute for setting the requestor on ticket creation. If you
use requestors to do this in 3.8, the recipient may not receive an
auto-reply from RT because the ticket is initially created as the user
your REST session is connected as.
It is a list attribute (for explanation of list attributes,
see LIST ATTRIBUTE PROPERTIES in RT::Client::REST::Object).
- requestors
- This contains e-mail addresses of the requestors.
It is a list attribute (for explanation of list attributes,
see LIST ATTRIBUTE PROPERTIES in RT::Client::REST::Object).
- cc
- A list of e-mail addresses used to notify people of 'correspond'
actions.
- admin_cc
- A list of e-mail addresses used to notify people of all actions performed
on a ticket.
- created
- Time at which ticket was created. Note that this is an immutable field and
therefore the value cannot be changed..
- starts
- started
- due
- resolved
- told
- time_estimated
- time_worked
- time_left
- last_updated
The attributes which store a time stamp have an additional accessor with the
suffix "_datetime" (e.g.
"resolved_datetime"). This allows you can
get and set the stored value as a DateTime object. Internally, it is converted
into the date-time string which RT uses, which is assumed to be in UTC.
For full explanation of these, please see "DB METHODS" in
RT::Client::REST::Object documentation.
- retrieve
- Retrieve RT ticket from database.
- store ([text => $text])
- Create or update the ticket. When creating a new ticket, optional 'text'
parameter can be supplied to set the initial text of the ticket.
- search
- Search for tickets that meet specific conditions.
- comment (message => $message, %opts)
- Comment on this ticket with message $message.
%opts is a list of key-value pairs as
follows:
- attachments
- List of filenames (an array reference) that should be attached to the
ticket along with the comment.
- cc
- List of e-mail addresses to send carbon copies to (an array
reference).
- bcc
- List of e-mail addresses to send blind carbon copies to (an array
reference).
- correspond (message => $message, %opts)
- Add correspondence to the ticket. Takes exactly the same arguments as the
comment method above.
- attachments
- Get attachments associated with this ticket. What is returned is an object
of type RT::Client::REST::SearchResult which can then be used to get at
objects of type RT::Client::REST::Attachment.
- transactions
- Get transactions associated with this ticket. Optionally, you can specify
exactly what types of transactions you want listed, for example:
my $result = $ticket->transactions(type => [qw(Comment Correspond)]);
Please reference RT::Client::REST documentation for the full
list of valid transaction types.
Return value is an object of type
RT::Client::REST::SearchResult which can then be used to iterate over
transaction objects (RT::Client::REST::Transaction).
- take
- Take this ticket. If you already the owner of this ticket,
"RT::Client::REST::Object::NoopOperationException"
will be thrown.
- untake
- Untake this ticket. If Nobody is already the owner of this ticket,
"RT::Client::REST::Object::NoopOperationException"
will be thrown.
- steal
- Steal this ticket. If you already the owner of this ticket,
"RT::Client::REST::Object::NoopOperationException"
will be thrown.
This class inherits 'cf' method from RT::Client::REST::Object. To create a
ticket with a bunch of custom fields, use the following approach:
RT::Client::REST::Ticket->new(
rt => $rt,
# blah blah
cf => {
'field one' => $value1,
'field two' => $another_value,
},
)->store;
Some more examples:
# Update a custom field value:
$ticket->cf('field one' => $value1);
$ticket->store;
# Get a custom field value:
my $another value = $ticket->cf('field two');
# Get a list of ticket's custom field names:
my @custom_fields = $ticket->cf;
- rt_type
- Returns 'ticket'.
RT::Client::REST, RT::Client::REST::Object, RT::Client::REST::Attachment,
RT::Client::REST::SearchResult, RT::Client::REST::Transaction.
This software is copyright (c) 2020, 2018 by Dmitri Tikhonov.
This is free software; you can redistribute it and/or modify it
under the same terms as the Perl 5 programming language system itself.
Visit the GSP FreeBSD Man Page Interface. Output converted with ManDoc. |