Commit 5e30e5e2 authored by Ruslan Zakirov's avatar Ruslan Zakirov
Browse files

docs update

parent 338ce26f
......@@ -12,4 +12,4 @@ no_index:
- t
requires:
UNIVERSAL::require: 0
version: 0.001
version: 0.01
package RT::Extension::CommandByMail;
our $VERSION = '0.001';
our $VERSION = '0.01';
use warnings;
use strict;
use Carp;
# Module implementation here
1; # Magic true value required at end of module
1;
__END__
=head1 NAME
RT::Extension::CommandByMail - [One line description of module's purpose here]
RT::Extension::CommandByMail - Change metadata of ticket via email
=head1 SYNOPSIS
use RT::Extension::CommandByMail;
=for author to fill in:
Brief code example(s) here showing commonest usage(s).
This section will be as far as many users bother reading
so make it as educational and exeplary as possible.
=head1 DESCRIPTION
=for author to fill in:
Write a full description of the module and its features here.
Use subsections (=head2, =head3) as appropriate.
=head1 INTERFACE
=for author to fill in:
Write a separate section listing the public components of the modules
interface. These normally consist of either subroutines that may be
exported, or methods that may be called on objects belonging to the
classes provided by the module.
=head1 DIAGNOSTICS
=for author to fill in:
List every single error and warning message that the module can
generate (even the ones that will "never happen"), with a full
explanation of each problem, one or more likely causes, and any
suggested remedies.
=over
=item C<< Error message here, perhaps with %s placeholders >>
[Description of error here]
Status: stalled
Subject: change subject
AddAdminCc: boss@example.com
AddCc: dev1@example.com
AddCc: dev2@example.com
=item C<< Another error message here >>
[Description of error here]
[Et cetera, et cetera]
=back
=head1 CONFIGURATION AND ENVIRONMENT
=for author to fill in:
A full explanation of any configuration system(s) used by the
module, including the names and locations of any configuration
files, and the meaning of any environment variables or properties
that can be set. These descriptions must also include details of any
configuration language used.
RT::Extension::CommandByMail requires no configuration files or environment variables.
=head1 DEPENDENCIES
=for author to fill in:
A list of all the other modules that this module relies upon,
including any restrictions on versions, and an indication whether
the module is part of the standard Perl distribution, part of the
module's distribution, or must be installed separately. ]
None.
=head1 INCOMPATIBILITIES
=for author to fill in:
A list of any modules that this module cannot be used in conjunction
with. This may be due to name conflicts in the interface, or
competition for system or program resources, or due to internal
limitations of Perl (for example, many modules that use source code
filters are mutually incompatible).
None reported.
Here goes comment/reply
=head1 DESCRIPTION
=head1 BUGS AND LIMITATIONS
This extension allows you to manage tickets via email interface.
You put commands into beginning of a mail and extension applies
them. See the list of commands in the
L<RT::Interface::Email::Filter::TakeAction> docs.
=for author to fill in:
A list of known problems with the module, together with some
indication Whether they are likely to be fixed in an upcoming
release. Also a list of restrictions on the features the module
does provide: data types that cannot be handled, performance issues
and the circumstances in which they may arise, practical
limitations on the size of data sets, special cases that are not
(yet) handled, etc.
=head1 SECURITY
No bugs have been reported.
This extension has no extended auth system, so all security issues
that applies to the RT in general also applies to the extension.
Please report any bugs or feature requests to
C<bug-rt-extension-commandbymail@rt.cpan.org>, or through the web interface at
L<http://rt.cpan.org>.
=head1 INSTALLATION AND CONFIGURATION
Read L<INSTALL>. Note that you B<must patch> RT
to use this extension, so read the file.
=head1 AUTHOR
Jesse Vincent C<< <jesse@bestpractical.com> >>
Ruslan U. Zakirov C<< <ruz@bestpractical.com> >>
=head1 LICENCE AND COPYRIGHT
......@@ -131,26 +49,3 @@ Copyright (c) 2006, Best Practical Solutions, LLC. All rights reserved.
This module is free software; you can redistribute it and/or
modify it under the same terms as Perl itself. See L<perlartistic>.
=head1 DISCLAIMER OF WARRANTY
BECAUSE THIS SOFTWARE IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
FOR THE SOFTWARE, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
PROVIDE THE SOFTWARE "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER
EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE
ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE SOFTWARE IS WITH
YOU. SHOULD THE SOFTWARE PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL
NECESSARY SERVICING, REPAIR, OR CORRECTION.
IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
REDISTRIBUTE THE SOFTWARE AS PERMITTED BY THE ABOVE LICENCE, BE
LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL,
OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE
THE SOFTWARE (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING
RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A
FAILURE OF THE SOFTWARE TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF
SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF
SUCH DAMAGES.
......@@ -11,62 +11,120 @@ our @DATE_ATTRIBUTES = qw(Due Starts Started Resolved Told);
our @LINK_ATTRIBUTES = qw(MemberOf Parents Members Children
HasMember RefersTo ReferredToBy DependsOn DependedOnBy);
=head2 COMMANDS
=head1 NAME
RT::Interface::Email::Filter::TakeAction - Change metadata of ticket via email
=head1 DESCRIPTION
This extension parse content of incomming messages for list commands. Format
of commands is:
Command: value
Command: value
...
You can find list of L</COMMANDS commands below>.
Some commands (like Status, Queue and other) can be used only once. Commands
that manage lists can be used multiple times, for example link, custom fields
and watchers commands. Also, the latter can be used with C<Add> and C<Del>
prefixes to add/delete values from the current list of the ticket you reply to
or comment on.
This mail action supports several commands to manipulate tickets'
metadata from emails.
=head2 COMMANDS
=head3 Basic
Queue: <name> Set new queue for the ticket
Subject: <string> Set new subject to the given string
Status: <status> Set new status, one of new, open, stalled,
resolved, rejected or deleted
Owner: <username> Set new owner using the given username
Priority: <#> Set new priority to the given value (1-99)
FinalPriority: <#> Set new final priority to the given value (1-99)
=over 4
=item Queue: <name>
Set new queue for the ticket
=item Subject: <string>
Set new subject to the given string
=item Status: <status>
Set new status, one of new, open, stalled, resolved, rejected or deleted
=item Owner: <username>
Set new owner using the given username
=item Priority: <#>
Set new priority to the given value
=item FinalPriority: <#>
Set new final priority to the given value
=back
=head3 Dates
Due: <new timestamp> Set new due date/timestamp, or 0 to disable.
Starts: <new timestamp>
Started: <new timestamp>
Set new date/timestamp, or 0 to unset:
Due: <new timestamp>
Starts: <new timestamp>
Started: <new timestamp>
=head3 Time
TimeWorked: <minutes> Replace the tickets 'timeworked' value.
TimeEstimated: <minutes>
TimeLeft: <minutes>
Set new times to the given value in minutes. Note that
on correspond/comment B<< C<TimeWorked> add time >> to the current
value.
TimeWorked: <minutes>
TimeEstimated: <minutes>
TimeLeft: <minutes>
=head3 Watchers
+Requestor: <address> Set requestor(s) using the email address
+AddRequestor: <address> Add new requestor using the email address
+DelRequestor: <address> Remove email address as requestor
+Cc: <address> Set Cc watcher(s) using the email address
+AddCc: <address> Add new Cc watcher using the email address
+DelCc: <address> Remove email address as Cc watcher
+AdminCc: <address> Set AdminCc watcher(s) using the email address
+AddAdminCc: <address> Add new AdminCc watcher using the email address
+DelAdminCc: <address> Remove email address as AdminCc watcher
Manage watchers: requestors, ccs and admin ccs. This commands
can be used several times and/or with C<Add> and C<Del> prefixes,
for example C<Requestor> comand set requestor(s) and the current
requestors would be deleted, but C<AddRequestor> command adds
to the current list.
Requestor: <address> Set requestor(s) using the email address
AddRequestor: <address> Add new requestor using the email address
DelRequestor: <address> Remove email address as requestor
Cc: <address> Set Cc watcher(s) using the email address
AddCc: <address> Add new Cc watcher using the email address
DelCc: <address> Remove email address as Cc watcher
AdminCc: <address> Set AdminCc watcher(s) using the email address
AddAdminCc: <address> Add new AdminCc watcher using the email address
DelAdminCc: <address> Remove email address as AdminCc watcher
=head3 Links
+DependsOn: <#> Set link(s) using ticket id
+DependedOnBy:
+RefersTo:
+ReferredToBy:
+Members:
+MemberOf:
Manage links. These commands are also could be used several times in one
message.
DependsOn: <ticket id>
DependedOnBy: <ticket id>
RefersTo: <ticket id>
ReferredToBy: <ticket id>
Members: <ticket id>
MemberOf: <ticket id>
=head3 Custom field values
+CustomField.{C<CFName>}:
+AddCustomField.{C<CFName>}:
+DelCustomField.{C<CFName>}:
+CF.{C<CFName>}:
+AddCF.{C<CFName>}:
+DelCF.{C<CFName>}:
Manage custom field values. Could be used multiple times.
CustomField.{C<CFName>}: <custom field value>
AddCustomField.{C<CFName>}: <custom field value>
DelCustomField.{C<CFName>}: <custom field value>
Short forms:
CF.{C<CFName>}: <custom field value>
AddCF.{C<CFName>}: <custom field value>
DelCF.{C<CFName>}: <custom field value>
=cut
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment