Ir al contenido
Otras versiones

Cargando…

Ejemplos de PHP

El ejemplo sdk4php de abajo incluye los métodos más comunes usados al integrar aplicaciones PHP.

Professional PHP version Status Download
Versión 8.1.4 y superiores. 7.x Activo sdk4php-3.0.2.zip

El ejemplo de abajo describe cómo integrar la función de vista previa de OpenKM en su aplicación PHP.

Professional PHP version Status Download
Versión 8.1.4 y superiores. 7.x Activo okmPreview-3.0.1.zip

Primero, debe crear el objeto del servicio web:

$this->ws = OKMWebServicesFactory::build(self::HOST);

Después debe iniciar sesión usando el método “login”. Puede acceder al método “login” desde el objeto del servicio web “ws” como se muestra a continuación:

$this->ws->login(self::USER, self::PASSWORD);

En este punto puede usar todos los métodos de Folder desde la clase “folder” como se muestra a continuación:

$folder = $this->ws->folder->getFolderProperties("4a3b1c1b-c880-45a3-a6ff-2c8b7c5adfa5");
<?php
include '../src/openkm/OpenKM.php';
use openkm\OKMWebServicesFactory;
use openkm\OpenKM;
class Test {
const HOST = "http://localhost:8080/openkm/";
const USER = "okmAdmin";
const PASSWORD = "admin";
private $ws;
public function __construct() {
$this->ws = OKMWebServicesFactory::build(self::HOST);
}
public function test() {
echo '<pre>';
try {
$this->ws->login(self::USER, self::PASSWORD);
$folder = $this->ws->folder->getFolderProperties("4a3b1c1b-c880-45a3-a6ff-2c8b7c5adfa5");
var_dump($folder);
} catch (Exception $e) {
var_dump($e);
}
}
}
$openkm = new OpenKM(); //autoload
$test = new Test();
$$test->test();
?>

Descripción:

Method Return values Description
createDocument($uuid, $name, $content) Document Crea un nuevo documento y devuelve un objeto Document con las propiedades del documento creado.
  • Parámetros:
    $uuid de tipo string es el UUID de destino de la Folder o Record
  • $name de tipo string es el nombre del documento.
  • $content de tipo string; se recomienda usar file_get_contents — lee el fichero completo en una cadena.

Ejemplo:

<?php
include '../src/openkm/OpenKM.php';
use openkm\OKMWebServicesFactory;
use openkm\OpenKM;
class Test {
const HOST = "http://localhost:8080/openkm/";
const USER = "okmAdmin";
const PASSWORD = "admin";
private $ws;
public function __construct() {
$this->ws = OKMWebServicesFactory::build(self::HOST);
}
public function test() {
echo '<pre>';
try {
$this->ws->login(self::USER, self::PASSWORD);
$fileName = dirname(__FILE__) . '/files/test.pdf';
$document = $this->ws->document->createDocument('f93ac8df-e83b-487f-9a14-0af9e910a818', 'test.pdf', file_get_contents($fileName));
var_dump($document);
} catch (Exception $e) {
var_dump($e);
}
}
}
$openkm = new OpenKM(); //autoload
$test = new Test();
$test->test();
?>

Descripción:

Method Return values Description
deleteDocument($uuid) void Elimina un documento.
  • Parámetros:
    $uuid de tipo string es el UUID del documento

Ejemplo:

<?php
include '../src/openkm/OpenKM.php';
use openkm\OKMWebServicesFactory;
use openkm\OpenKM;
class Test {
const HOST = "http://localhost:8080/openkm/";
const USER = "okmAdmin";
const PASSWORD = "admin";
private $ws;
public function __construct() {
$this->ws = OKMWebServicesFactory::build(self::HOST);
}
public function test() {
echo '<pre>';
try {
$this->ws->login(self::USER, self::PASSWORD);
$this->ws->document->deleteDocument('5b37c508-b2be-4429-ba5e-acc96089c6a9');
echo 'deleted';
} catch (Exception $e) {
var_dump($e);
}
}
}
$openkm = new OpenKM(); //autoload
$test = new Test();
$test->test();
?>

Descripción:

Method Return values Description
getDocumentProperties($uuid) Document Devuelve las propiedades del documento.
  • Parámetros:
    $uuid
    de tipo string es el UUID del documento

Ejemplo:

<?php
include '../src/openkm/OpenKM.php';
use openkm\OKMWebServicesFactory;
use openkm\OpenKM;
class Test {
const HOST = "http://localhost:8080/openkm/";
const USER = "okmAdmin";
const PASSWORD = "admin";
private $ws;
public function __construct() {
$this->ws = OKMWebServicesFactory::build(self::HOST);
}
public function test() {
echo '<pre>';
try {
$this->ws->login(self::USER, self::PASSWORD);
$document = $this->ws->document->getDocumentProperties('7e12a9ff-95b2-4945-bf5f-1bb709d89c14');
var_dump($document);
} catch (Exception $e) {
var_dump($e);
}
}
}
$openkm = new OpenKM(); //autoload
$test = new Test();
$test->test();
?>

Descripción:

Method Return values Description
getContent($uuid) string Recupera el contenido del documento (datos binarios) de la versión actual del documento.

Ejemplo:

<?php
include '../src/openkm/OpenKM.php';
use openkm\OKMWebServicesFactory;
use openkm\OpenKM;
class Test {
const HOST = "http://localhost:8080/openkm/";
const USER = "okmAdmin";
const PASSWORD = "admin";
private $ws;
public function __construct() {
$this->ws = OKMWebServicesFactory::build(self::HOST);
}
public function test() {
$method = 1;
$this->ws->login(self::USER, self::PASSWORD);
$content = $this->ws->document->getContent('b02877cc-bc71-4be9-9bfb-2e50b1732fd3');
switch ($method) {
case 1:
$file = fopen(dirname(__FILE__) . '/files/logo_download.png', 'w+');
fwrite($file, $content);
fclose($file);
echo 'download correct';
break;
case 2:
ob_clean();
$document = $this->ws->document->getDocumentProperties('b02877cc-bc71-4be9-9bfb-2e50b1732fd3');
$name = PathUtils::getName($document->getPath());
header("Cache-Control: maxage=1");
header("Pragma: public");
header("Content-Type: " . $document->getMimeType());
header('Content-Disposition: attachment; filename="' . $name . '"');
header("Content-Length: " . strlen($content));
echo $content;
break;
}
}
}
$openkm = new OpenKM(); //autoload
$test = new Test();
$test->test();
?>

Descripción:

Method Return values Description
getDocumentChildren($uuid) array Devuelve una lista de todos los documentos cuyo padre es fldId.
  • Parámetros:
    $fldId
    de tipo string es el UUID o la ruta del documento o de un nodo record.

Ejemplo:

<?php
include '../src/openkm/OpenKM.php';
use openkm\OKMWebServicesFactory;
use openkm\OpenKM;
class Test {
const HOST = "http://localhost:8080/openkm/";
const USER = "okmAdmin";
const PASSWORD = "admin";
private $ws;
public function __construct() {
$this->ws = OKMWebServicesFactory::build(self::HOST);
}
public function test() {
echo '<pre>';
try {
$this->ws->login(self::USER, self::PASSWORD);
$documents = $this->ws->document->getDocumentChildren('f93ac8df-e83b-487f-9a14-0af9e910a818');
foreach ($documents as $document) {
var_dump($document);
}
} catch (Exception $e) {
var_dump($e);
}
}
}
$openkm = new OpenKM(); //autoload
$test = new Test();
$test->test();
?>

Descripción:

Method Return values Description
moveDocument($uuid, $dstId) void Mueve un documento a una carpeta o expediente.
  • Parámetros:
    $uuid
    de tipo string es el UUID del documento
  • $dstId de tipo string es el UUID de la Folder o Record

Ejemplo:

<?php
include '../src/openkm/OpenKM.php';
use openkm\OKMWebServicesFactory;
use openkm\OpenKM;
class Test {
const HOST = "http://localhost:8080/openkm/";
const USER = "okmAdmin";
const PASSWORD = "admin";
private $ws;
public function __construct() {
$this->ws = OKMWebServicesFactory::build(self::HOST);
}
public function test() {
echo '<pre>';
try {
$this->ws->login(self::USER, self::PASSWORD);
$this->ws->document->moveDocument('b02877cc-bc71-4be9-9bfb-2e50b1732fd3', '55102c84-e4f5-4cbc-a3d1-cf1896367752');
echo 'moveDocument';
} catch (Exception $e) {
var_dump($e);
}
}
}
$openkm = new OpenKM(); //autoload
$test = new Test();
$test->test();
?>

Descripción:

Method Return values Description
copyDocument($uuid, $dstId, $newName) void Copia un documento a una carpeta o expediente.
  • Parámetros:
    $uuid
    de tipo string es el uuid del documento
  • $dstId de tipo string es el uuid de la Folder o Record
  • $newName de tipo string es el nuevo nombre del documento
  • Cuando el valor del parámetro newName es null, el documento conservará el mismo nombre.

Ejemplo:

<?php
include '../src/openkm/OpenKM.php';
use openkm\OKMWebServicesFactory;
use openkm\OpenKM;
class Test {
const HOST = "http://localhost:8080/openkm/";
const USER = "okmAdmin";
const PASSWORD = "admin";
private $ws;
public function __construct() {
$this->ws = OKMWebServicesFactory::build(self::HOST);
}
public function test() {
echo '<pre>';
try {
$this->ws->login(self::USER, self::PASSWORD);
$document = $this->ws->document->copyDocument('b02877cc-bc71-4be9-9bfb-2e50b1732fd3', '55102c84-e4f5-4cbc-a3d1-cf1896367752', 'new_logo.png');
var_dump($document);
echo 'copyDocument';
} catch (Exception $e) {
var_dump($e);
}
}
}
$openkm = new OpenKM(); //autoload
$test = new Test();
$test->test();
?>

Descripción:

Method Return values Description
createFolder($uuid, $name) Folder Crea una nueva carpeta y la devuelve como un objeto Folder.
  • Parámetros:
    $uuid de tipo string es el UUID de destino de la Folder o Record

Ejemplo:

<?php
include '../src/openkm/OpenKM.php';
use openkm\OKMWebServicesFactory;
use openkm\OpenKM;
class Test {
const HOST = "http://localhost:8080/openkm/";
const USER = "okmAdmin";
const PASSWORD = "admin";
private $ws;
public function __construct() {
$this->ws = OKMWebServicesFactory::build(self::HOST);
}
public function test() {
echo '<pre>';
try {
$this->ws->login(self::USER, self::PASSWORD);
$folder = $this->ws->folder->createFolder('f93ac8df-e83b-487f-9a14-0af9e910a818', 'test');
var_dump($folder);
} catch (Exception $e) {
var_dump($e);
}
}
}
$openkm = new OpenKM(); //autoload
$test = new Test();
$test->test();
?>

Descripción:

Method Return values Description
getFolderProperties($uuid) Folder Devuelve las propiedades de la carpeta.
  • Parámetros:
    $uuid
    de tipo string es el UUID de la Folder

Ejemplo:

<?php
include '../src/openkm/OpenKM.php';
use openkm\OKMWebServicesFactory;
use openkm\OpenKM;
class Test {
// const HOST = "http://localhost:8080/openkm/";
const HOST = "http://192.168.1.11:8888/openkm/";
const USER = "okmAdmin";
const PASSWORD = "admin";
private $ws;
public function __construct() {
$this->ws = OKMWebServicesFactory::build(self::HOST);
}
public function test() {
echo '<pre>';
try {
$this->ws->login(self::USER, self::PASSWORD);
$folder = $this->ws->folder->getFolderProperties("4a3b1c1b-c880-45a3-a6ff-2c8b7c5adfa5");
var_dump($folder);
} catch (Exception $e) {
var_dump($e);
}
}
}
$openkm = new OpenKM(); //autoload
$test = new Test();
$test->test();
?>

Descripción:

Method Return values Description
deleteFolder($uuid) void Elimina una carpeta.
  • Parámetros:
    $uuid
    de tipo string es el UUID de la Folder

Ejemplo:

<?php
include '../src/openkm/OpenKM.php';
use openkm\OKMWebServicesFactory;
use openkm\OpenKM;
class Test {
// const HOST = "http://localhost:8080/openkm/";
const HOST = "http://192.168.1.11:8888/openkm/";
const USER = "okmAdmin";
const PASSWORD = "admin";
private $ws;
public function __construct() {
$this->ws = OKMWebServicesFactory::build(self::HOST);
}
public function test() {
echo '<pre>';
try {
$this->ws->login(self::USER, self::PASSWORD);
$this->ws->folder->deleteFolder("56c4d33b-daad-4389-bfdc-ee8dd5273899");
echo 'delete folder';
} catch (Exception $e) {
var_dump($e);
}
}
}
$openkm = new OpenKM(); //autoload
$test = new Test();
$test->test();
?>

Descripción:

Method Return values Description
renameFolder($uuid, $newName) void Renombra una carpeta.
  • Parámetros:
    $uuid
    de tipo string es el uuid de la Folder
  • $newName de tipo string es el nuevo nombre de la Folder

Ejemplo:

<?php
include '../src/openkm/OpenKM.php';
use openkm\OKMWebServicesFactory;
use openkm\OpenKM;
class Test {
const HOST = "http://localhost:8080/openkm/";
const USER = "okmAdmin";
const PASSWORD = "admin";
private $ws;
public function __construct() {
$this->ws = OKMWebServicesFactory::build(self::HOST);
}
public function test() {
echo '<pre>';
try {
$this->ws->login(self::USER, self::PASSWORD);
// Exists folder /okm:root/sdk/test
$folder = $this->ws->folder->renameFolder("0b89e4ca-0019-4837-82a4-05bc05d83353", "renamedFolder");
// Folder has renamed to /okm:root/sdk/renamedFolder
echo 'rename Folder';
var_dump($folder);
} catch (Exception $e) {
var_dump($e);
}
}
}
$openkm = new OpenKM(); //autoload
$test = new Test();
$test->test();
?>

Descripción:

Method Return values Description
moveFolder($uuid, $dstId) void Mueve una carpeta a otra carpeta o expediente.
  • Parámetros:
    $uuid
    de tipo string es el UUID de la Folder
  • $dstId de tipo string es el UUID de la Folder o Record

Ejemplo:

<?php
include '../src/openkm/OpenKM.php';
use openkm\OKMWebServicesFactory;
use openkm\OpenKM;
class Test {
const HOST = "http://localhost:8080/openkm/";
const USER = "okmAdmin";
const PASSWORD = "admin";
private $ws;
public function __construct() {
$this->ws = OKMWebServicesFactory::build(self::HOST);
}
public function test() {
echo '<pre>';
try {
$this->ws->login(self::USER, self::PASSWORD);
// Exists folder /okm:root/sdk/test
$this->ws->folder->moveFolder("0b89e4ca-0019-4837-82a4-05bc05d83353", "55102c84-e4f5-4cbc-a3d1-cf1896367752");
// Folder has moved to /okm:root/move/test
echo 'move Folder';
} catch (Exception $e) {
var_dump($e);
}
}
}
$openkm = new OpenKM(); //autoload
$test = new Test();
$test->test();
?>

Descripción:

Method Return values Description
getFolderChildren($uuid) array Devuelve un array con todas las carpetas cuyo padre es fldId.
  • Parámetros:
    $uuid
    de tipo string es el UUID del nodo Folder o Record

Ejemplo:

<?php
include '../src/openkm/OpenKM.php';
use openkm\OKMWebServicesFactory;
use openkm\OpenKM;
class Test {
const HOST = "http://localhost:8080/openkm/";
const USER = "okmAdmin";
const PASSWORD = "admin";
private $ws;
public function __construct() {
$this->ws = OKMWebServicesFactory::build(self::HOST);
}
public function test() {
echo '<pre>';
try {
$this->ws->login(self::USER, self::PASSWORD);
$folders = $this->ws->folder->getFolderChildren('f93ac8df-e83b-487f-9a14-0af9e910a818');
foreach ($folders as $folder) {
var_dump($folder);
}
} catch (Exception $e) {
var_dump($e);
}
}
}
$openkm = new OpenKM(); //autoload
$test = new Test();
$test->test();
?>

Descripción:

Method Return values Description
copyFolder($uuid, $dstId, $newName) void Copia una carpeta a otra carpeta o expediente.
  • Parámetros:
    $uuid
    de tipo string es el uuid de la Folder
  • $dstId de tipo string es el uuid de la Folder o Record
  • $newName de tipo string es el nuevo nombre de la Folder. Si el valor es null, la carpeta conservará el mismo nombre.

Ejemplo:

<?php
include '../src/openkm/OpenKM.php';
use openkm\OKMWebServicesFactory;
use openkm\OpenKM;
class Test {
const HOST = "http://localhost:8080/openkm/";
const USER = "okmAdmin";
const PASSWORD = "admin";
private $ws;
public function __construct() {
$this->ws = OKMWebServicesFactory::build(self::HOST);
}
public function test() {
echo '<pre>';
try {
$this->ws->login(self::USER, self::PASSWORD);
$this->ws->folder->copyFolder('4a3b1c1b-c880-45a3-a6ff-2c8b7c5adfa5', '55102c84-e4f5-4cbc-a3d1-cf1896367752', "new_name");
} catch (Exception $e) {
var_dump($e);
}
}
}
$openkm = new OpenKM(); //autoload
$test = new Test();
$test->test();
?>

Descripción:

Method Return values Description
extendedFolderCopy($uuid, $dstId, $categories, $keywords, $propertyGroups, $notes, $security) void Copia una carpeta con sus datos asociados a otra carpeta o expediente.
  • Parámetros:
    $uuid
    de tipo string es el uuid de la Folder
  • $dstId de tipo string es el uuid de la Folder o Record
  • $categories de tipo boolean
  • $keywords de tipo boolean
  • $propertyGroups de tipo boolean
  • $notes de tipo boolean
  • $security de tipo boolean

Ejemplo:

<?php
include '../src/openkm/OpenKM.php';
use openkm\OKMWebServicesFactory;
use openkm\OpenKM;
class Test {
const HOST = "http://localhost:8080/openkm/";
const USER = "okmAdmin";
const PASSWORD = "admin";
private $ws;
public function __construct() {
$this->ws = OKMWebServicesFactory::build(self::HOST);
}
public function test() {
echo '<pre>';
try {
$this->ws->login(self::USER, self::PASSWORD);
$folder = $this->ws->folder->extendedFolderCopy('4a3b1c1b-c880-45a3-a6ff-2c8b7c5adfa5', '55102c84-e4f5-4cbc-a3d1-cf1896367752', 'new name extend copy', true, true, true, true, true);
var_dump($folder);
} catch (Exception $e) {
var_dump($e);
}
}
}
$openkm = new OpenKM(); //autoload
$test = new Test();
$test->test();
?>

Descripción:

Method Return values Description
getContentInfo($uuid) ContentInfo Devuelve un objeto ContentInfo con información sobre la carpeta.
  • Parámetros:
    $uuid
    de tipo string es el UUID o la ruta de la carpeta.
  • El objeto ContentInfo recupera información sobre:

Ejemplo:

<?php
include '../src/openkm/OpenKM.php';
use openkm\OKMWebServicesFactory;
use openkm\OpenKM;
class Test {
const HOST = "http://localhost:8080/openkm/";
const USER = "okmAdmin";
const PASSWORD = "admin";
private $ws;
public function __construct() {
$this->ws = OKMWebServicesFactory::build(self::HOST);
}
public function test() {
echo '<pre>';
try {
$this->ws->login(self::USER, self::PASSWORD);
var_dump($this->ws->folder->getContentInfo('4a3b1c1b-c880-45a3-a6ff-2c8b7c5adfa5'));
} catch (Exception $e) {
var_dump($e);
}
}
}
$openkm = new OpenKM(); //autoload
$test = new Test();
$test->test();
?>

Descripción:

Method Return values Description
purgeFolder($uuid) void La carpeta se elimina permanentemente del repositorio.
  • Parámetros:
    $uuid
    de tipo string es el uuid o la ruta de la Folder.
  • Normalmente purgará carpetas en /okm:trash/userId, las ubicaciones personales de papelera de los usuarios, pero es posible purgar directamente cualquier carpeta del repositorio.

Ejemplo:

<?php
include '../src/openkm/OpenKM.php';
use openkm\OKMWebServicesFactory;
use openkm\OpenKM;
class Test {
const HOST = "http://localhost:8080/openkm/";
const USER = "okmAdmin";
const PASSWORD = "admin";
private $ws;
public function __construct() {
$this->ws = OKMWebServicesFactory::build(self::HOST);
}
public function test() {
echo '<pre>';
try {
$this->ws->login(self::USER, self::PASSWORD);
$this->ws->folder->purgeFolder('d1faccb3-9e64-4d2d-865f-1c057e3a279b');
echo 'purge folder';
} catch (Exception $e) {
var_dump($e);
}
}
}
$openkm = new OpenKM(); //autoload
$test = new Test();
$test->test();
?>

Descripción:

Method Return values Description
setStyle($uuid, $styleId) void Establece el estilo de la carpeta.
  • Parámetros:
    $uuid
    de tipo string es el UUID o la ruta de la carpeta.
  • $styleId de tipo long es el id del estilo.

Ejemplo:

<?php
include '../src/openkm/OpenKM.php';
use openkm\OKMWebServicesFactory;
use openkm\OpenKM;
class Test {
const HOST = "http://localhost:8080/openkm/";
const USER = "okmAdmin";
const PASSWORD = "admin";
private $ws;
public function __construct() {
$this->ws = OKMWebServicesFactory::build(self::HOST);
}
public function test() {
echo '<pre>';
try {
$this->ws->login(self::USER, self::PASSWORD);
$this->ws->folder->setStyle('0b89e4ca-0019-4837-82a4-05bc05d83353', 1);
echo 'set style';
} catch (Exception $e) {
var_dump($e);
}
}
}
$openkm = new OpenKM(); //autoload
$test = new Test();
$test->test();
?>

Descripción:

Method Return values Description
createMissingFolders($fldPath) void Crea las carpetas que faltan.
  • Parámetros:
    $fldPath
    de tipo string es la ruta de la carpeta.

Ejemplo:

<?php
include '../src/openkm/OpenKM.php';
use openkm\OKMWebServicesFactory;
use openkm\OpenKM;
class Test {
const HOST = "http://localhost:8080/openkm/";
const USER = "okmAdmin";
const PASSWORD = "admin";
private $ws;
public function __construct() {
$this->ws = OKMWebServicesFactory::build(self::HOST);
}
public function test() {
echo '<pre>';
try {
$this->ws->login(self::USER, self::PASSWORD);
$this->ws->folder->createMissingFolders("/okm:root/sdk/missingfld2/missingfld3");
var_dump('create missing folders');
} catch (Exception $e) {
var_dump($e);
}
}
}
$openkm = new OpenKM(); //autoload
$test = new Test();
$test->test();
?>

Descripción:

Method Return values Description
createFolderFromTemplate($uuid, $dstPath, $language, $categories,
$keywords, $propertyGroups, $notes, $properties)
Folder Crea una nueva carpeta a partir de la plantilla y devuelve un objeto Folder.
  • El parámetro $uuid es el valor UUID del fichero de plantilla.
  • El valor $dstPath es la ruta de destino de la carpeta.
  • El parámetro $language es opcional.
  • Cuando la plantilla usa grupos de metadatos para rellenar campos, estos valores son obligatorios y deben establecerse en el parámetro properties.

Ejemplo:

<?php
include '../src/openkm/OpenKM.php';
use openkm\OKMWebServicesFactory;
use openkm\OpenKM;
class Test {
// const HOST = "http://localhost:8080/openkm/";
const HOST = "http://192.168.1.11:8888/openkm/";
const USER = "okmAdmin";
const PASSWORD = "admin";
private $ws;
public function __construct() {
$this->ws = OKMWebServicesFactory::build(self::HOST);
}
public function test() {
echo '<pre>';
try {
$this->ws->login(self::USER, self::PASSWORD);
$properties = [];
$properties["okp:consulting.name"] = "update value";
$properties["okp:consulting.important"] = "false";
$folder = $this->ws->folder->createFolderFromTemplate('47c70047-2924-483c-bc42-23d0cbef6b17', '/okm:root/sdk/foldertemplate', 'es', true, true, true, true, $properties);
var_dump($folder);
} catch (Exception $e) {
var_dump($e);
}
}
}
$openkm = new OpenKM(); //autoload
$test = new Test();
$test->test();
?>

Descripción:

Method Return values Description
addPropertyGroup($uuid, $grpName, $properties) void Añade un grupo de metadatos vacío a un nodo.
  • Parámetros:
  • $uuid de tipo string es el uuid del documento, carpeta, correo o expediente.
  • $grpName de tipo string. El grpName debe ser un nombre de grupo de metadatos válido.

Ejemplo:

<?php
include '../src/openkm/OpenKM.php';
use openkm\OKMWebServicesFactory;
use openkm\OpenKM;
class Test {
const HOST = "http://localhost:8080/openkm/";
const USER = "okmAdmin";
const PASSWORD = "admin";
private $ws;
public function __construct() {
$this->ws = OKMWebServicesFactory::build(self::HOST);
}
public function test() {
echo '<pre>';
try {
$this->ws->login(self::USER, self::PASSWORD);
$properties = [];
$properties["okp:consulting.name"] = "new value";
$properties["okp:consulting.important"] = "true";
$this->ws->propertyGroup->addPropertyGroup('7e12a9ff-95b2-4945-bf5f-1bb709d89c14', 'okg:consulting', $properties);
echo 'Add Group';
} catch (Exception $e) {
var_dump($e);
}
}
}
$openkm = new OpenKM(); //autoload
$test = new Test();
$test->test();
?>

Descripción:

Method Return values Description
removePropertyGroup($uuid, $grpName) void Elimina un grupo de metadatos de un nodo.
  • Parámetros:
  • $uuid de tipo string es el uuid del documento, carpeta, correo o expediente.
  • $grpName de tipo string. El grpName debe ser un nombre de grupo de metadatos válido.

Ejemplo:

<?php
include '../src/openkm/OpenKM.php';
use openkm\OKMWebServicesFactory;
use openkm\OpenKM;
class Test {
const HOST = "http://localhost:8080/openkm/";
const USER = "okmAdmin";
const PASSWORD = "admin";
private $ws;
public function __construct() {
$this->ws = OKMWebServicesFactory::build(self::HOST);
}
public function test() {
echo '<pre>';
try {
$this->ws->login(self::USER, self::PASSWORD);
$this->ws->propertyGroup->removePropertyGroup('7e12a9ff-95b2-4945-bf5f-1bb709d89c14', 'okg:consulting');
echo 'Remove Group';
} catch (Exception $e) {
var_dump($e);
}
}
}
$openkm = new OpenKM(); //autoload
$test = new Test();
$test->test();
?>

Descripción:

Method Return values Description
getPropertyGroups($uuid) array Recupera una lista de los grupos de metadatos asignados a un nodo.
  • Parámetros:
  • $uuid de tipo string es el uuid del documento, carpeta, correo o expediente.

Ejemplo:

<?php
include '../src/openkm/OpenKM.php';
use openkm\OKMWebServicesFactory;
use openkm\OpenKM;
class Test {
const HOST = "http://localhost:8080/openkm/";
const USER = "okmAdmin";
const PASSWORD = "admin";
private $ws;
public function __construct() {
$this->ws = OKMWebServicesFactory::build(self::HOST);
}
public function test() {
echo '<pre>';
try {
$this->ws->login(self::USER, self::PASSWORD);
$propertyGroups = $this->ws->propertyGroup->getPropertyGroups('7e12a9ff-95b2-4945-bf5f-1bb709d89c14');
foreach ($propertyGroups as $propertyGroup) {
var_dump($propertyGroup);
echo '<br>';
}
} catch (Exception $e) {
var_dump($e);
}
}
}
$openkm = new OpenKM(); //autoload
$test = new Test();
$test->test();
?>

Descripción:

Method Return values Description
getAllPropertyGroups() array Recupera una lista de todos los grupos de metadatos de la aplicación.

Ejemplo:

<?php
include '../src/openkm/OpenKM.php';
use openkm\OKMWebServicesFactory;
use openkm\OpenKM;
class Test {
const HOST = "http://localhost:8080/openkm/";
const USER = "okmAdmin";
const PASSWORD = "admin";
private $ws;
public function __construct() {
$this->ws = OKMWebServicesFactory::build(self::HOST);
}
public function test() {
echo '<pre>';
try {
$this->ws->login(self::USER, self::PASSWORD);
$propertyGroups = $this->ws->propertyGroup->getAllPropertyGroups();
foreach ($propertyGroups as $propertyGroup) {
var_dump($propertyGroup);
echo '<br>';
}
} catch (Exception $e) {
var_dump($e);
}
}
}
$openkm = new OpenKM(); //autoload
$test = new Test();
$test->test();
?>

Descripción:

Method Return values Description
getPropertyGroupForm($grpName) array Recupera una lista de todas las definiciones de elementos del grupo de metadatos.
  • Parámetros:
  • $grpName de tipo string: el grpName debe ser un nombre de grupo de metadatos válido.

Ejemplo:

<?php
include '../src/openkm/OpenKM.php';
use openkm\OKMWebServicesFactory;
use openkm\OpenKM;
class ExamplePropertyGroup {
const HOST = "http://localhost:8080/OpenKM/";
const USER = "okmAdmin";
const PASSWORD = "admin";
private $ws;
public function __construct() {
$this->ws = OKMWebServicesFactory::build(self::HOST, self::USER, self::PASSWORD);
}
public function testGetPropertyGroupForm() {
try {
$formElements = $this->ws->getPropertyGroupForm('okg:consulting');
foreach ($formElements as $formElement) {
var_dump($formElement);
}
} catch (Exception $e) {
var_dump($e);
}
}
}
$openkm = new OpenKM(); //autoload
$examplePropertyGroup = new ExamplePropertyGroup();
$examplePropertyGroup->testGetPropertyGroupPropertiesSimple();
?>

Descripción:

Method Return values Description
getPropertyGroupFormByNode($uuid, $grpName) array Recupera una lista de todas las definiciones de elementos del grupo de metadatos para un nodo.
  • Parámetros:
  • $uuid de tipo string es el uuid del documento, carpeta, correo o expediente.
  • $grpName de tipo string, el grpName debe ser un nombre de grupo de metadatos válido.

Ejemplo:

<?php
include '../src/openkm/OpenKM.php';
use openkm\OKMWebServicesFactory;
use openkm\OpenKM;
class Test {
const HOST = "http://localhost:8080/openkm/";
const USER = "okmAdmin";
const PASSWORD = "admin";
private $ws;
public function __construct() {
$this->ws = OKMWebServicesFactory::build(self::HOST);
}
public function test() {
echo '<pre>';
try {
$this->ws->login(self::USER, self::PASSWORD);
$formElements = $this->ws->propertyGroup->getPropertyGroupFormByNode('7e12a9ff-95b2-4945-bf5f-1bb709d89c14', 'okg:consulting');
foreach ($formElements as $formElement) {
var_dump($formElement);
}
} catch (Exception $e) {
var_dump($e);
}
}
}
$openkm = new OpenKM(); //autoload
$test = new Test();
$test->test();
?>

Descripción:

Method Return values Description
setPropertyGroupProperties($uuid, $grpName, $properties) void Cambia los valores del grupo de metadatos de un nodo.
  • Parámetros:
  • $uuid de tipo string es el uuid o la ruta del documento, carpeta, correo o expediente.
  • $grpName de tipo string, el grpName debe ser un nombre de grupo de metadatos válido.
  • $properties de tipo array

Ejemplo:

<?php
include '../src/openkm/OpenKM.php';
use openkm\OKMWebServicesFactory;
use openkm\OpenKM;
class Test {
const HOST = "http://localhost:8080/openkm/";
const USER = "okmAdmin";
const PASSWORD = "admin";
private $ws;
public function __construct() {
$this->ws = OKMWebServicesFactory::build(self::HOST);
}
public function test() {
echo '<pre>';
try {
$properties = [];
$properties["okp:consulting.name"] = "update value";
$properties["okp:consulting.important"] = "false";
$this->ws->login(self::USER, self::PASSWORD);
$this->ws->propertyGroup->setPropertyGroupProperties('7e12a9ff-95b2-4945-bf5f-1bb709d89c14', 'okg:consulting', $properties);
echo 'updated';
} catch (Exception $e) {
var_dump($e);
}
}
}
$openkm = new OpenKM(); //autoload
$test = new Test();
$test->test();
?>

Descripción:

Method Return values Description
hasPropertyGroup($uuid, $grpName) bool Devuelve un booleano que indica si el nodo tiene un grupo de metadatos.
  • Parámetros:
  • $uuid de tipo string es el uuid del documento, carpeta, correo o expediente.
  • $grpName de tipo string, el grpName debe ser un nombre de grupo de metadatos válido.

Ejemplo:

<?php
include '../src/openkm/OpenKM.php';
use openkm\OKMWebServicesFactory;
use openkm\OpenKM;
class Test {
const HOST = "http://localhost:8080/openkm/";
const USER = "okmAdmin";
const PASSWORD = "admin";
private $ws;
public function __construct() {
$this->ws = OKMWebServicesFactory::build(self::HOST);
}
public function test() {
try {
$this->ws->login(self::USER, self::PASSWORD);
echo 'Have metadata group: ' . $this->ws->propertyGroup->hasPropertyGroup('7e12a9ff-95b2-4945-bf5f-1bb709d89c14', 'okg:consulting');
} catch (Exception $e) {
var_dump($e);
}
}
}
$openkm = new OpenKM(); //autoload
$test = new Test();
$test->test();
?>

Descripción:

Method Return values Description
getRegisteredPropertyGroupDefinition() string Devuelve la definición XML de los grupos de metadatos.

Ejemplo:

<?php
include '../src/openkm/OpenKM.php';
use openkm\OKMWebServicesFactory;
use openkm\OpenKM;
class Test {
const HOST = "http://localhost:8080/openkm/";
const USER = "okmAdmin";
const PASSWORD = "admin";
private $ws;
public function __construct() {
$this->ws = OKMWebServicesFactory::build(self::HOST);
}
public function test() {
echo '<pre>';
try {
$this->ws->login(self::USER, self::PASSWORD);
var_dump($this->ws->propertyGroup->getRegisteredPropertyGroupDefinition());
} catch (Exception $e) {
var_dump($e);
}
}
}
$openkm = new OpenKM(); //autoload
$test = new Test();
$test->test();
?>

Descripción:

Method Return values Description
getPropertyGroupSuggestions($uuid, $grpName, $propName) array Recupera una lista de valores de campo de metadatos sugeridos.
  • Parámetros:
  • $uuid de tipo string es el UUID del documento, carpeta, correo o expediente.
  • $grpName de tipo string. El grpName debe ser un nombre de grupo de metadatos válido.
  • $propName de tipo string. El parámetro propName debe ser de tipo Metadata Select field.

Ejemplo:

<?php
include '../src/openkm/OpenKM.php';
use openkm\OKMWebServicesFactory;
use openkm\OpenKM;
class Test {
const HOST = "http://localhost:8080/openkm/";
const USER = "okmAdmin";
const PASSWORD = "admin";
private $ws;
public function __construct() {
$this->ws = OKMWebServicesFactory::build(self::HOST);
}
public function test() {
echo '<pre>';
try {
$this->ws->login(self::USER, self::PASSWORD);
$suggestions = $this->ws->propertyGroup->getPropertyGroupSuggestions('055b5206-35d0-4351-ba92-c304bbba7ddf', 'okg:technology', 'okp:technology.priority');
foreach ($suggestions as $suggestion) {
var_dump($suggestion);
}
} catch (Exception $e) {
var_dump($e);
}
}
}
$openkm = new OpenKM(); //autoload
$test = new Test();
$test->test();
?>

Descripción:

Method Return values Description
registerPropertyGroupDefinition($content, $name) void Establece la definición XML de los grupos de metadatos en el repositorio.
  • Parámetros:
  • $content de tipo string. Se recomienda usar file_get_contents — que lee el fichero completo en una cadena.
  • $name de tipo string. Es el nombre del grupo de metadatos.

Ejemplo:

<?php
include '../src/openkm/OpenKM.php';
use openkm\OKMWebServicesFactory;
use openkm\OpenKM;
class Test {
const HOST = "http://localhost:8080/openkm/";
const USER = "okmAdmin";
const PASSWORD = "admin";
private $ws;
public function __construct() {
$this->ws = OKMWebServicesFactory::build(self::HOST);
}
public function test() {
echo '<pre>';
try {
$this->ws->login(self::USER, self::PASSWORD);
$fileName = dirname(__FILE__) . '/propertygroup/propertyGroups.xml';
$this->ws->propertyGroup->registerPropertyGroupDefinition(file_get_contents($fileName), 'sdk4php');
var_dump('Register Definition correct');
} catch (Exception $e) {
var_dump($e);
}
}
}
$openkm = new OpenKM(); //autoload
$test = new Test();
$test->test();
?>

Descripción:

Method Return values Description
getPropertyGroupProperties($uuid, $grpName) array Recupera una lista de todos los elementos del grupo de metadatos y sus valores para un nodo.
  • Parámetros:
  • $uuid de tipo string es el UUID del documento, carpeta, correo o expediente.
  • $grpName de tipo string. El grpName debe ser un nombre de grupo de metadatos válido.

Ejemplo:

<?php
include '../src/openkm/OpenKM.php';
use openkm\OKMWebServicesFactory;
use openkm\OpenKM;
class Test {
const HOST = "http://localhost:8080/openkm/";
const USER = "okmAdmin";
const PASSWORD = "admin";
private $ws;
public function __construct() {
$this->ws = OKMWebServicesFactory::build(self::HOST);
}
public function test() {
echo '<pre>';
try {
$this->ws->login(self::USER, self::PASSWORD);
$properties = $this->ws->propertyGroup->getPropertyGroupProperties('7e12a9ff-95b2-4945-bf5f-1bb709d89c14', 'okg:consulting');
foreach ($properties as $key => $value) {
echo 'key: ' . $key . ' value: ' . $value;
echo '<br>';
}
} catch (Exception $e) {
var_dump($e);
}
}
}
$openkm = new OpenKM(); //autoload
$test = new Test();
$test->test();
?>

Descripción:

Method Return values Description
getPropertyGroupPropertiesByVersion($uuid, $grpName, $versionName) array Recupera una lista de todos los elementos del grupo de metadatos y sus valores para un nodo.
  • Parámetros:
  • $uuid de tipo string es el UUID del documento, carpeta, correo o expediente.
  • $grpName de tipo string. El grpName debe ser un nombre de grupo de metadatos válido.
  • $versionName de tipo string. Es la versión del documento, carpeta, correo o expediente.

Ejemplo:

<?php
include '../src/openkm/OpenKM.php';
use openkm\OKMWebServicesFactory;
use openkm\OpenKM;
class Test {
const HOST = "http://localhost:8080/openkm/";
const USER = "okmAdmin";
const PASSWORD = "admin";
private $ws;
public function __construct() {
$this->ws = OKMWebServicesFactory::build(self::HOST);
}
public function test() {
try {
$this->ws->login(self::USER, self::PASSWORD);
$properties = $this->ws->propertyGroup->getPropertyGroupPropertiesByVersion('7e12a9ff-95b2-4945-bf5f-1bb709d89c14', 'okg:consulting', '1.3');
foreach ($properties as $key => $value) {
echo 'key: ' . $key . ' value: ' . $value;
echo '<br>';
}
} catch (Exception $e) {
var_dump($e);
}
}
}
$openkm = new OpenKM(); //autoload
$test = new Test();
$test->test();
?>

Descripción:

Method Return values Description
find(QueryParams $queryParams, $propertiesPlugin) array Devuelve una lista de QueryResults filtrada por los valores del parámetro queryParams.
  • Parámetros:
    $queryParams
    de tipo QueryParams
  • $propertiesPlugin de tipo string, debe ser el nombre canónico de la clase que implementa la interfaz NodeProperties.

Ejemplo:

<?php
include '../src/openkm/OpenKM.php';
use openkm\OKMWebServicesFactory;
use openkm\OpenKM;
class Test {
const HOST = "http://localhost:8080/openkm/";
const USER = "okmAdmin";
const PASSWORD = "admin";
private $ws;
public function __construct() {
$this->ws = OKMWebServicesFactory::build(self::HOST);
}
public function test() {
echo '<pre>';
try {
$this->ws->login(self::USER, self::PASSWORD);
$queryParams = new QueryParams();
$queryParams->setDomain(QueryParams::DOCUMENT + QueryParams::FOLDER);
$queryParams->setFolder("f93ac8df-e83b-487f-9a14-0af9e910a818");
$queryParams->setFolderRecursive(true);
$queryParams->setLastModifiedFrom(20150628000000);
$queryParams->setLastModifiedTo(date('Ymdhis'));
$queryResults = $this->ws->search->find($queryParams, null);
foreach ($queryResults as $queryResult) {
var_dump($queryResult);
}
} catch (Exception $e) {
var_dump($e);
}
}
}
$openkm = new OpenKM(); //autoload
$test = new Test();
$test->test();
?>

Descripción:

Method Return values Description
findPaginated(QueryParams $queryParams, $offset, $limit, $propertiesPlugin) ResultSet Devuelve una lista de resultados paginados filtrada por los valores del parámetro queryParams.
  • Parámetros:
    $queryParams
    de tipo QueryParams
  • $offset de tipo int
  • $limit de tipo int
  • $propertiesPlugin de tipo string, debe ser el nombre canónico de la clase que implementa la interfaz NodeProperties.

Ejemplo:

<?php
include '../src/openkm/OpenKM.php';
use openkm\OKMWebServicesFactory;
use openkm\OpenKM;
class Test {
const HOST = "http://localhost:8080/openkm/";
const USER = "okmAdmin";
const PASSWORD = "admin";
private $ws;
public function __construct() {
$this->ws = OKMWebServicesFactory::build(self::HOST);
}
public function test() {
echo '<pre>';
try {
$this->ws->login(self::USER, self::PASSWORD);
$queryParams = new QueryParams();
$queryParams->setDomain(QueryParams::DOCUMENT + QueryParams::FOLDER);
$queryParams->setFolder("f93ac8df-e83b-487f-9a14-0af9e910a818");
$queryParams->setFolderRecursive(true);
$queryParams->setLastModifiedFrom(20150628000000);
$queryParams->setLastModifiedTo(date('Ymdhis'));
$resultSet = $this->ws->search->findPaginated($queryParams, 0, 10, null);
echo "Total results:" . $resultSet->getTotal();
foreach ($resultSet->getResults() as $queryResult) {
var_dump($queryResult);
}
} catch (Exception $e) {
var_dump($e);
}
}
}
$openkm = new OpenKM(); //autoload
$test = new Test();
$test->test();
?>