- Varios
 - Viajes
 - Geek
 - Videos
 - FAQs


Envíos pendientes
 - Albumes (0)
 - Noticias (1)


Estadísticas
 - Usuarios (20)
 - Noticias (172)
 - Albumes (48)
 - Comentarios (154)



Suscripción via RSS 2.0
Home Albums About Ayuda
Friends Corner  | Geek News  | Concurso 
 
Geek News
Comunicarse via SOAP con Mantis (Mantisconnect) desde PHP
Publicado el: 2008-11-26 22:15:54 por frommelmak
Editado por última vez: 2008-12-29 11:57:09 por frommelmak
 

No he encontrado muchos ejemplos (por no decir ninguno) de como llamar a los métodos SOAP de Mantis desde PHP, asi que aqui dejo unos ejemplitos.

Lo primero de todo es saber que tras la instalación de Mantis, podemos obtener el WSDL bajo esta URL: http://logquesea/api/soap/mantisconnect.php?wsdl

Además del WSDL, es interesante saber que hay una ayuda "para humanos" acerca de los métodos disponibles.  Se puede obtener omitiendo  ?wsdl en la llamada anterior.

A continuación os dejo los ejemplos sobre como llamar a algunos de estos métodos desde PHP.

Obtener la versión de Mantis

<?php
 
$client = new SoapClient("http://mantis/api/soap/mantisconnect.php?wsdl");
print($client->mc_version());
 
?>

Obtener array con diferentes estadisticas de Mantis

<?php
 
$client = new SoapClient("http://mantis/api/soap/mantisconnect.php?wsdl");
 
$username="usuario";
$password="contraseña";
 
print_r($client->mc_enum_status($username, $password));
 
?>

Añadir una nueva issue a Mantis

<?php
 
$client = new SoapClient("http://mantis/api/soap/mantisconnect.php?wsdl");
 
$username="usuario";
$password="constraseña";
 
$issue=array ("project" => array ("id" => "", "name" => "SOAP Test"),
"category" => "General",
"priority" => array ("id" => "", "name" => ""),
"severity" => array ("id" => "", "name" => ""),
"status" => array ("id" => "", "name" => ""),
"reproducibility" => array ("id" => "", "name" => ""),
"resolution" => array ("id" => "", "name" => ""),
"projection" => array ("id" => "", "name" => ""),
"eta" => array ("id" => "", "name" => ""),
"view_state" => array ("id" => "", "name" => ""),
"summary" => "Test SOAP",
"description" => "This is just a new issue added using SOAP");
 
$client->mc_issue_add($username, $password, $issue);
 
?>

Nota: Aqui lo importante es saber que los tipos de datos complejos del array (priority, severity, status, …) han de estar definidos pese a ser opcionales. De lo contrario el servidor soap da un error y no procesa la llamada.

 

 (1) Comentarios 

No me rias de ti ! Login

Nombre:


Contraseña:



This site is powered by homesitemaker-v0.4.8 code. This code is distibuted under GNU/GPL license and are made by melmak from www.assl-site.net
All trademarks and copyrights on this page are owned by their respective owners.