comoco / trac-client-php
1.0.0
2018-06-17 06:33 UTC
This package is auto-updated.
Last update: 2024-09-21 20:02:46 UTC
README
用于控制《Trac 项目》票据的库
需求
- 支持:
The Trac Project
1.0.* ~ 1.2.* (1.3及以上版本未测试) - trac需要安装
Trac XML-RPC 插件
(https://trac-hacks.org/wiki/XmlRpcPlugin)
示例代码
<?php use Comoco\TracClientPhp\Client as TracClient; $api_url = "http://trac.local/login/jsonrpc"; $username = '<your username>'; $password = '<your password>'; $tracClient = new TracClient($api_url, $username, $password); $ticket_id = $tracClient->createTicket('my first ticket', 'ticket content', [ 'owner' => 'bob', 'cc' => 'alice, web', 'priority' => 'minor' ]); $tracClient->uploadAttachment($ticket_id, 'example.xml', 'is a example file', "/tmp/example.xml"); $tracClient->addComment($ticket_id, 'It is great!'); $tracClient->resolveTicket($ticket_id, 'ok', 'fixed')
类函数
getUserTicketIds($username, array $statuses, $limit = 100)
获取用户自己的票据ID
$statuses
可用状态可能在不同trac系统中不同(基于系统设置)
$ticket_ids = $tracClient->getUserTicketIds('bob', ['accepted', 'assigned'], 50);
getTicketInfo($ticket_id)
获取票据信息
返回数据
可能在不同trac系统中不同(基于已安装的模块)
$ticket_id = 1; $ticket_info = $tracClient->getTicketInfo($ticket_id);
createTicket($summary, $description = '', array $attributes = [])
$attributes
可能在不同trac系统中不同(基于已安装的模块)
$ticket_id = $tracClient->createTicket('my first ticket', 'it is a example ticket', [ 'owner' => 'bob', 'cc' => 'alice, jack', 'priority' => 'minor' ]);
updateTicket($ticket_id, $comment = '', array $attributes = [])
更新票据信息
$attributes
可能在不同trac系统中不同(基于已安装的模块)
$ticket_id = 1; $tracClient->updateTicket($ticket_id, 'change ticket content', [ 'summary' => 'my first ticket v2', 'description' => 'it is a example ticket v2', 'cc' => 'alice, jack, ellen' ]);
acceptTicket($ticket_id, $comment = '')
接受票据
$ticket_id = 1; $tracClient->acceptTicket($ticket_id, 'accept the ticket');
reassignUser($ticket_id, $username, $comment = '')
将票据重新分配给用户
$ticket_id = 1; $tracClient->reassignUser($ticket_id, 'alice', 'assign ticket to alice');
resolveTicket($ticket_id, $comment = '', $option = 'fixed')
解决票据
$option
可用选项可能在不同trac系统中不同(它基于trac的设置不同)
$ticket_id = 1; $tracClient->resolveTicket($ticket_id, 'close ticket', 'fixed');
reopenTicket($ticket_id, $comment = '')
重新打开票据
$ticket_id = 1; $tracClient->reopenTicket($ticket_id, 'reopen the ticket');
deleteTicket($ticket_id)
删除票据
$ticket_id = 1;
$tracClient->deleteTicket($ticket_id);
addComment($ticket_id, $comment)
添加评论
$ticket_id = 1;
$tracClient->addComment($ticket_id, 'it is great');
getComments($ticket_id)
获取评论
$ticket_id = 1; $comments = $tracClient->getComments($ticket_id);
listAttachments($ticket_id)
列出票据的附件
$ticket_id = 1; $attachments = $tracClient->listAttachments($ticket_id);
uploadAttachment($ticket_id, $filename, $description, $upload_fila_path)
将附件上传到票据
$ticket_id = 1; $filename = 'example.xml'; $description = 'demo xml'; $file_path = '/tmp/example.xml'; $tracClient->uploadAttachment($ticket_id, $filename, $description, $file_path)
downloadAttachment($ticket_id, $filename, $save_path)
从票据下载附件
$ticket_id = 1; $filename = 'example.xml'; $save_path = '/tmp/example.xml'; $tracClient->downloadAttachment($ticket_id, $filename, $save_path)
deleteAttachment($ticket_id, $filename)
从票据中删除附件
$ticket_id = 1; $filename = 'example.xml'; $tracClient->deleteAttachment($ticket_id, $filename)