vitorbari/glpi-webservice-php-wrapper

GLPI Webservice 插件 PHP 封装类

2.0.1-alpha 2017-04-28 03:23 UTC

README

Build Status StyleCI Coverage Status

简介

这是一个针对 GLPI Webservice 插件 的简单面向对象的封装,用 PHP 编写。

这个类的目的是让 PHP 应用程序开发者能够快速轻松地与 GLPI Webservice 插件交互,无需关心 Webservice 的细节。

安装

通过 Composer。

composer require vitorbari/glpi-webservice-php-wrapper

使用示例

use VitorBari\GLPIWebservice\Services\Soap;
use VitorBari\GLPIWebservice\GLPIWebservice;

// Create soap adapter
// Currently, only soap is implemented, but the plugin also supports XMLRPC and REST
$endpoint = 'http://[glpi-url]/plugins/webservices/soap.php';
$soapClient = new SoapClient(null, array('uri' => $endpoint, 'location' => $endpoint));
$service = new Soap($soapClient);

$glpi = new GLPIWebservice($service);

$glpi->auth('username', 'password');
$glpi->listUserGroups();

// You can use method chaining
$glpi->auth('username', 'password')->listUserGroups();

方法

未认证的方法

  • $glpi->test() 简单的 ping 测试方法
  • $glpi->status() 返回 GLPI 的状态
  • $glpi->listAllMethods() 列出当前客户端允许的所有方法
  • $glpi->listEntities() 返回由服务器配置定义的当前客户端实体列表
  • $glpi->countEntities() 返回由服务器配置定义的当前客户端实体数量
  • $glpi->listKnowBaseItems() 未实现
  • $glpi->getDocument($document, $ticket = null, $id2name = false) 如果认证用户可以查看,则检索文档

会话

  • $glpi->auth($glpi_user, $glpi_pass, $ws_user = null, $ws_pass = null) 认证用户
  • $glpi->logout() 注销当前用户
  • $glpi->getSession() 获取当前会话
  • $glpi->getMyInfo($id2name=false) 列出关于认证用户的信息

已认证的方法

工单

  • $glpi->getTicket($ticket, $id2name=false) 如果认证用户可以查看,则检索现有工单的信息
  • $glpi->createTicket($title, $content, $params = array()) 创建新的工单
  • $glpi->listTickets($status=null, $id2name=false) 列出当前认证用户可以查看的工单
  • $glpi->countTickets($status=null) 计算当前认证用户可以查看的工单数量
  • $glpi->addTicketDocument($ticket, $name, $uri = null, $base64 = null, $content = null) 如果认证用户可以编辑,则向现有工单添加文档
  • $glpi->addTicketFollowup($ticket, $content, $users_login = false, $source = null, $private = null, $reopen = null, $close = null) 如果认证用户可以编辑,则向现有工单添加跟进
  • $glpi->addTicketObserver($ticket, $user = null) 向现有工单添加新的观察者
  • $glpi->setTicketSatisfaction($ticket, $satisfaction, $comment = null) 回答工单满意度调查
  • $glpi->setTicketValidation($approval, $status, $comment = null) 回答工单审批请求
  • $glpi->setTicketSolution($ticket, $type, $solution) 工单的解决方案
  • $glpi->setTicketAssign($ticket, $user = null, $group = null, $supplier = null, $user_email = null, $use_email_notification = null) 分配工单

下拉菜单

  • $glpi->listDropdownValues($dropdown) 在下拉表中搜索值

  • $glpi->listGroups() 列出当前实体的组
  • $glpi->listUserGroups() 列出连接用户的组
  • $glpi->countGroups() 计算当前实体的组数量

对象

  • $glpi->getObject($itemtype, $id, $params = array()) 如果认证用户是超级管理员,则检索现有对象的信息
  • $glpi->createObjects() 未实现
  • $glpi->deleteObjects() 未实现
  • $glpi->updateObjects() 未实现
  • $glpi->linkObjects() 未实现
  • $glpi->listObjects() 未实现

需求

  • PHP >= 5.6.0
  • PHP Soap 扩展

版本

仅在 GLPI v0.85.3 和 Webservice 插件 v1.5.0 上进行了测试。