如何在Best practical Request tracker中返回队列列表?

时间:2013-09-12 11:57:00

标签: rest rt

我需要我们的票务系统请求最佳实用的跟踪器来搜索所有队列并返回它们的列表。它们可以改变,我不想在源代码或配置文件中对它们进行硬编码。

是否有搜索查询?

search/queue?query=...

给出

RT/4.0.7 500 Server Error
Unsupported object type.

或者如何修改故障单系统以返回所有队列的列表?

票务系统: http://bestpractical.com/rt/

感谢您的建议

4 个答案:

答案 0 :(得分:2)

REST/1.0/search/queue存在于较新的RT版本(4.2.2及更高版本)中。

答案 1 :(得分:2)

以下链接适用于4.4.0。

  1. 列出所有用户:/REST/1.0/search/user?query=
  2. 列出所有组:/REST/1.0/search/group?query =
  3. 列出所有队列:/REST/1.0/search/queue?query =

答案 2 :(得分:1)

据我所知,您正在寻找的查询在RT REST api中不可用。来自RT用户列表中的类似问题:

  

RT的REST API主要用于处理故障单(查询   实际上是在常规Query Builder UI中可用的TicketSQL。

     

如果您需要使用和修改其他RT对象,您需要   使用RT的perl API。

http://lists.bestpractical.com/pipermail/rt-users/2011-October/073272.html

答案 3 :(得分:0)

正如其他人所写,您可以使用RT REST1 API或更高版本(REST2 API)。但是它之前需要一些配置。然后像

https://your_rt_server/REST/1.0/search/queue?query=
https://your_rt_server/REST/2.0/queues/all

应该工作。

如果您有权访问RT服务器的文件系统,则也许更直接的方法是使用PERL API。然后它应该像这样工作:

#!/usr/bin/env perl
use lib ("/opt/rt4/lib");
use strict;
use warnings;
use 5.010;

use RT -init;

my $queues = RT::Queues->new($RT::SystemUser);
$queues->UnLimit;
while (my $queue = $queues->Next){
   say $queue->Name;
}