Document samples
Aspectos básicos
Sección titulada «Aspectos básicos»En la mayoría de los métodos verá los parámetros llamados “docId” y “fldId”. Los valores de estos parámetros pueden ser los UUID de un documento y de una carpeta, respectivamente.
Ejemplo de código sugerido
Sección titulada «Ejemplo de código sugerido»Primero debe crear el objeto webservice:
OKMWebservices ws = OKMWebservicesFactory.newInstance(host);A continuación, debe iniciar sesión mediante el método “login”. Puede acceder al método “login” desde el objeto webservice “ws”, tal y como se muestra a continuación:
ws.login(user, password);Llegados a este punto puedes usar todos los métodos de Document desde la clase “document” como se muestra a continuación:
ws.document.createDocument("1be884f4-5758-4985-94d1-f18bfe004db8", "logo.png", fs);Métodos
Sección titulada «Métodos»createDocument
Sección titulada «createDocument»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| createDocument(String fldId, FileInfo fi) | Document | Crea un nuevo documento y devuelve un objeto de tipo Document. |
- Parámetros:
Ejemplo:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.bean;using com.openkm.sdk4csharp.impl;using System.IO;
namespace OKMRest{ public class Program { static void Main(string[] args) { String host = "http://localhost:8080/openkm"; String username = "okmAdmin"; String password = "admin"; OKMWebservice ws = OKMWebservicesFactory.newInstance(host); try { ws.login(user, password); FileInfo fileInfo = new FileInfo("E:\\doc.docx"); ws.document.createDocument(fldId, fileInfo); } catch (Exception e) { System.Console.WriteLine(e.ToString()); } } }}createDocument
Sección titulada «createDocument»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| createDocument(String uuid, String name, FileStream fs, long nodeClass) | Document | Crea un nuevo documento con un nodeClass. Devuelve un objeto Document con las propiedades del documento creado. |
- El valor del parámetro uuid debe ser el UUID de un nodo carpeta o expediente.
- El parámetro nodeClass debe ser un valor de tipo de negocio (series) válido. Un valor de nodeClass igual a 0 significa que no hay ningún tipo de negocio (series) seleccionado.
Ejemplo:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.bean;using com.openkm.sdk4csharp.impl;using System.IO;
namespace OKMRest{ public class Program { static void Main(string[] args) { String host = "http://localhost:8080/openkm"; String username = "okmAdmin"; String password = "admin"; OKMWebservice ws = OKMWebservicesFactory.newInstance(host); try { ws.login(user, password); FileStream fileStream = new FileStream("E:\\logo.png", FileMode.Open); long nodeClass = 0; ws.document.createDocument("4b88cbe9-e73d-45fc-bac0-35e0d6e59e43", "logo.png", fileStream, nodeClass); fileStream.Dispose(); } catch (Exception e) { System.Console.WriteLine(e.ToString()); } } }}createDocument
Sección titulada «createDocument»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| createDocument(String fldId, String name, FileStream fs) | Document | Crea un nuevo documento y devuelve un objeto de tipo Document. |
- Parámetros:
Ejemplo:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.bean;using com.openkm.sdk4csharp.impl;using System.IO;
namespace OKMRest{ public class Program { static void Main(string[] args) { String host = "http://localhost:8080/openkm"; String username = "okmAdmin"; String password = "admin"; OKMWebservice ws = OKMWebservicesFactory.newInstance(host); try { ws.login(user, password); FileStream fileStream = new FileStream("E:\\logo.png", FileMode.Open); ws.document.createDocument(fldId, "logo.png", fileStream); fileStream.Dispose(); } catch (Exception e) { System.Console.WriteLine(e.ToString()); } } }}deleteDocument
Sección titulada «deleteDocument»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| deleteDocument(String docId) | void | Elimina un documento. |
Ejemplo:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.impl;
namespace OKMRest{ public class Program { static void Main(string[] args) { String host = "http://localhost:8080/openkm"; String username = "okmAdmin"; String password = "admin"; OKMWebservice ws = OKMWebservicesFactory.newInstance(host); try { ws.login(user, password); ws.document.deleteDocument("f123a950-0329-4d62-8328-0ff500fd42db"); } catch (Exception e) { System.Console.WriteLine(e.ToString()); } System.Console.ReadKey(); } }}getDocumentProperties
Sección titulada «getDocumentProperties»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| getDocumentProperties(String docId) | Document | Devuelve las propiedades del documento. |
Ejemplo:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.impl;
namespace OKMRest{ public class Program { static void Main(string[] args) { String host = "http://localhost:8080/openkm"; String username = "okmAdmin"; String password = "admin"; OKMWebservice ws = OKMWebservicesFactory.newInstance(host); try { ws.login(user, password); System.Console.WriteLine(ws.document.getDocumentProperties("f123a950-0329-4d62-8328-0ff500fd42db").toString()); } catch (Exception e) { System.Console.WriteLine(e.ToString()); } } }}getContent
Sección titulada «getContent»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| getContent(String docId) | Stream | Recupera el contenido (datos binarios) de la versión actual del documento. |
Ejemplo:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.impl;using System.IO;
namespace OKMRest{ public class Program { static void Main(string[] args) { String host = "http://localhost:8080/openkm"; String username = "okmAdmin"; String password = "admin"; OKMWebservice ws = OKMWebservicesFactory.newInstance(host); try { ws.login(user, password); Stream tmpFile = ws.document.getContent("f123a950-0329-4d62-8328-0ff500fd42db"); FileStream destFile = new FileStream("C:\\test.png", FileMode.OpenOrCreate); tmpFile.CopyTo(destFile); destFile.Close(); tmpFile.Close(); } catch (Exception e) { System.Console.WriteLine(e.ToString()); } } }}getContentByVersion
Sección titulada «getContentByVersion»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| getContentByVersion(String docId,String versionId) | Stream | Recupera el contenido (datos binarios) de una versión concreta del documento. |
Ejemplo:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using System.IO;
namespace OKMRest{ public class Program { static void Main(string[] args) { String host = "http://localhost:8080/openkm"; String username = "okmAdmin"; String password = "admin"; OKMWebservice ws = OKMWebservicesFactory.newInstance(host); try { ws.login(user, password); Stream tmpFile = ws.document.getContentByVersion("f123a950-0329-4d62-8328-0ff500fd42db","1.1"); FileStream destFile = new FileStream("C:\\test.png", FileMode.OpenOrCreate); tmpFIle.CopyTo(destFile); destFile.Close(); tmpFile.Close(); } catch (Exception e) { System.Console.WriteLine(e.ToString()); } } }}getDocumentChildren
Sección titulada «getDocumentChildren»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| getDocumentChildren(String fldId) | List |
Devuelve una lista de todos los documentos cuyo padre es fldId. |
Ejemplo:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.bean;
namespace OKMRest{ public class Program { static void Main(string[] args) { String host = "http://localhost:8080/openkm"; String username = "okmAdmin"; String password = "admin"; OKMWebservice ws = OKMWebservicesFactory.newInstance(host); try { ws.login(user, password); foreach (Document doc in ws.document.getDocumentChildren("f123a950-0329-4d62-8328-0ff500fd42db")) { System.Console.WriteLine(doc); } } catch (Exception e) { System.Console.WriteLine(e.ToString()); } } }}renameDocument
Sección titulada «renameDocument»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| renameDocument(String docId, String newName) | document | Cambia el nombre de un documento. |
Ejemplo:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.bean;
namespace OKMRest{ public class Program { static void Main(string[] args) { String host = "http://localhost:8080/openkm"; String username = "okmAdmin"; String password = "admin"; OKMWebservice ws = OKMWebservicesFactory.newInstance(host); try { ws.login(user, password); Document doc = ws.document.renameDocument("f123a950-0329-4d62-8328-0ff500fd42db", "new_name.png"); } catch (Exception e) { System.Console.WriteLine(e.ToString()); } } }}setProperties
Sección titulada «setProperties»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| setProperties(String docId, String title, String description, String lang, List |
void | Cambia algunas propiedades del documento. |
- Variables que se pueden cambiar:
Ejemplo:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.bean;
namespace OKMRest{ public class Program { static void Main(string[] args) { String host = "http://localhost:8080/openkm"; String username = "okmAdmin"; String password = "admin"; OKMWebservice ws = OKMWebservicesFactory.newInstance(host); try { ws.login(user, password); List<string> keywords = new List<string>(); keywords.Add("testA"); keywords.Add("testB"); List<string> categories = new List<string>(); categories.Add("/okm:categories"); ws.document.setProperties("f123a950-0329-4d62-8328-0ff500fd42db", "anyTitle", "anyDescription", "es-ES", keywords, categories); } catch (Exception e) { System.Console.WriteLine(e.ToString()); } } }}checkout
Sección titulada «checkout»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| checkout(String docId) | void | Marca el documento para su edición. |
- Solo un usuario puede modificar un documento a la vez.
- Antes de empezar la edición debe ejecutar una acción de checkout, que bloquea el proceso de edición para el resto de usuarios y permite editar el documento únicamente al usuario que ejecutó la acción.
Ejemplo:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;
namespace OKMRest{ public class Program { static void Main(string[] args) { String host = "http://localhost:8080/openkm"; String username = "okmAdmin"; String password = "admin"; OKMWebservice ws = OKMWebservicesFactory.newInstance(host); try { ws.login(user, password); ws.document.checkout("f123a950-0329-4d62-8328-0ff500fd42db"); // At this point the document is locked for other users except for the user who executed the action } catch (Exception e) { System.Console.WriteLine(e.ToString()); } } }}cancelCheckout
Sección titulada «cancelCheckout»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| cancelCheckout(String docId) | void | Cancela la edición de un documento. |
Ejemplo:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;
namespace OKMRest{ public class Program { static void Main(string[] args) { String host = "http://localhost:8080/openkm"; String username = "okmAdmin"; String password = "admin"; OKMWebservice ws = OKMWebservicesFactory.newInstance(host); try { ws.login(user, password); // At this point the document is locked for other users except for the user who executed the action ws.document.cancelCheckout("f123a950-0329-4d62-8328-0ff500fd42db"); // At this point other users are allowed to execute a checkout and modify the document } catch (Exception e) { System.Console.WriteLine(e.ToString()); } } }}forceCancelCheckout
Sección titulada «forceCancelCheckout»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| forceCancelCheckout(String docId) | void | Cancela la edición de un documento. |
- Este método permite cancelar la edición de cualquier documento.
- No es necesario que esta acción la ejecute el mismo usuario que ejecutó previamente la acción de checkout.
Ejemplo:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;
namespace OKMRest{ public class Program { static void Main(string[] args) { String host = "http://localhost:8080/openkm"; String username = "okmAdmin"; String password = "admin"; OKMWebservice ws = OKMWebservicesFactory.newInstance(host); try { ws.login(user, password); // At this point the document is locked for other users except for the user who executed the action ws.document.forceCancelCheckout("f123a950-0329-4d62-8328-0ff500fd42db"); // At this point other users are allowed to execute a checkout and modify the document } catch (Exception e) { System.Console.WriteLine(e.ToString()); } } }}isCheckedOut
Sección titulada «isCheckedOut»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| isCheckedOut(String docId) | Boolean | Devuelve un booleano que indica si el documento está siendo editado. |
Ejemplo:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;
namespace OKMRest{ public class Program { static void Main(string[] args) { String host = "http://localhost:8080/openkm"; String username = "okmAdmin"; String password = "admin"; OKMWebservice ws = OKMWebservicesFactory.newInstance(host); try { ws.login(user, password); System.Console.WriteLine("Is the document checkout:"+ ws.document.isCheckedOut("f123a950-0329-4d62-8328-0ff500fd42db").ToString()); } catch (Exception e) { System.Console.WriteLine(e.ToString()); } } }}checkin
Sección titulada «checkin»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| checkin(String docId, String comment, FileStream fs) | Version | Actualiza un documento con una nueva versión y devuelve un objeto con los valores de la nueva Version. |
Ejemplo:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.IO;using com.openkm.sdk4csharp;
namespace OKMRest{ public class Program { static void Main(string[] args) { String host = "http://localhost:8080/openkm"; String username = "okmAdmin"; String password = "admin"; OKMWebservice ws = OKMWebservicesFactory.newInstance(host); try { ws.login(user, password); FileStream fs = new FileStream("E:\\logo.png", FileMode.Open); ws.document.checkin("f123a950-0329-4d62-8328-0ff500fd42db","optional some comment",fs); fs.Dispose(); } catch (Exception e) { System.Console.WriteLine(e.ToString()); } } }}checkin
Sección titulada «checkin»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| checkin(String docId, String comment, FileStream fs, int increment) | Version | Actualiza un documento con una nueva versión y devuelve un objeto con los nuevos valores de Version. |
Ejemplo:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.IO;using com.openkm.sdk4csharp;
namespace OKMRest{ public class Program { static void Main(string[] args) { String host = "http://localhost:8080/openkm"; String username = "okmAdmin"; String password = "admin"; OKMWebservice ws = OKMWebservicesFactory.newInstance(host); try { ws.login(user, password); FileStream fs = new FileStream(@"C:\Desktop\logo.png", FileMode.Open); ws.document.checkin("f123a950-0329-4d62-8328-0ff500fd42db", "optional some comment", fs, 1); fs.Dispose(); } catch (Exception e) { System.Console.WriteLine(e.ToString()); } } }}isLocked
Sección titulada «isLocked»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| isLocked(String docId) | Boolean | Devuelve un booleano que indica si el documento está bloqueado. |
Ejemplo:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;
namespace OKMRest{ public class Program { static void Main(string[] args) { String host = "http://localhost:8080/openkm"; String username = "okmAdmin"; String password = "admin"; OKMWebservice ws = OKMWebservicesFactory.newInstance(host); try { ws.login(user, password); System.Console.WriteLine("Is document locked:" + ws.document.isLocked("f123a950-0329-4d62-8328-0ff500fd42db").ToString()); } catch (Exception e) { System.Console.WriteLine(e.ToString()); } } }}getLockInfo
Sección titulada «getLockInfo»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| getLockInfo(String docId) | LockInfo | Devuelve un objeto con la información del bloqueo. |
Ejemplo:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;
namespace OKMRest{ public class Program { static void Main(string[] args) { String host = "http://localhost:8080/openkm"; String username = "okmAdmin"; String password = "admin"; OKMWebservice ws = OKMWebservicesFactory.newInstance(host); try { ws.login(user, password); System.Console.WriteLine(ws.document.getLockInfo("f123a950-0329-4d62-8328-0ff500fd42db")); } catch (Exception e) { System.Console.WriteLine(e.ToString()); } } }}purgeDocument
Sección titulada «purgeDocument»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| purgeDocument(String docId) | void | El documento se elimina permanentemente del repositorio. |
- Normalmente se purgan documentos desde /okm:trash/userId - las ubicaciones personales de la papelera de cada usuario - pero es posible purgar directamente cualquier documento de todo el repositorio.
Ejemplo:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;
namespace OKMRest{ public class Program { static void Main(string[] args) { String host = "http://localhost:8080/openkm"; String username = "okmAdmin"; String password = "admin"; OKMWebservice ws = OKMWebservicesFactory.newInstance(host); try { ws.login(user, password); ws.document.purgeDocument("f123a950-0329-4d62-8328-0ff500fd42db"); } catch (Exception e) { System.Console.WriteLine(e.ToString()); } } }}moveDocument
Sección titulada «moveDocument»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| moveDocument(String docId, String dstId) | void | Mueve un documento a una carpeta o expediente. |
Ejemplo:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;
namespace OKMRest{ public class Program { static void Main(string[] args) { String host = "http://localhost:8080/openkm"; String username = "okmAdmin"; String password = "admin"; OKMWebservice ws = OKMWebservicesFactory.newInstance(host); try { ws.login(user, password); ws.document.moveDocument("f123a950-0329-4d62-8328-0ff500fd42db", fldId); } catch (Exception e) { System.Console.WriteLine(e.ToString()); } } }}copyDocument
Sección titulada «copyDocument»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| copyDocument(String docId, String fldId, String newName) | Document | Copia un documento en una carpeta o expediente. |
- El valor del parámetro fldId debe ser el UUID de una carpeta o de un expediente.
- Cuando el valor del parámetro newName es null, el documento conservará el mismo nombre.
Ejemplo:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;
namespace OKMRest{ public class Program { static void Main(string[] args) { String host = "http://localhost:8080/openkm"; String username = "okmAdmin"; String password = "admin"; OKMWebservice ws = OKMWebservicesFactory.newInstance(host); try { ws.login(user, password); ws.document.copyDocument("f123a950-0329-4d62-8328-0ff500fd42db", fldId, "name.png"); } catch (Exception e) { System.Console.WriteLine(e.ToString()); } } }}getVersionHistorySize
Sección titulada «getVersionHistorySize»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| getVersionHistorySize(String docId) | long | Devuelve el tamaño total en bytes de todos los documentos del historial de versiones. |
Ejemplo:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;
namespace OKMRest{ public class Program { static void Main(string[] args) { String host = "http://localhost:8080/openkm"; String username = "okmAdmin"; String password = "admin"; OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try { ws.login(user, password); long byteCount = ws.document.getVersionHistorySize(docUUid); string[] suf = { "B", "KB", "MB", "GB", "TB", "PB", "EB" }; //Longs run out around EB long bytes = Math.Abs(byteCount); int place = Convert.ToInt32(Math.Floor(Math.Log(bytes, 1024))); double num = Math.Round(bytes / Math.Pow(1024, place), 1); System.Console.WriteLine((Math.Sign(byteCount) * num).ToString() + suf[place]); } catch (Exception e) { System.Console.WriteLine(e.ToString()); } } }}isValidDocument
Sección titulada «isValidDocument»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| isValidDocument(String docId) | Boolean | Devuelve un booleano que indica si el nodo es un documento. |
Ejemplo:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;
namespace OKMRest{ public class Program { static void Main(string[] args) { String host = "http://localhost:8080/openkm"; String username = "okmAdmin"; String password = "admin"; OKMWebservice ws = OKMWebservicesFactory.newInstance(host); try { ws.login(user, password); // Return true ws.document.isValidDocument("f123a950-0329-4d62-8328-0ff500fd42db"); // Return false ws.document.isValidDocument("/okm:root"); } catch (Exception e) { System.Console.WriteLine(e.ToString()); } } }}getDocumentPath
Sección titulada «getDocumentPath»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| getDocumentPath(String docId) | String | Convierte un UUID de documento en una ruta de documento. |
Ejemplo:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;
namespace OKMRest{ public class Program { static void Main(string[] args) { String host = "http://localhost:8080/openkm"; String username = "okmAdmin"; String password = "admin"; OKMWebservice ws = OKMWebservicesFactory.newInstance(host); try { ws.login(user, password); System.Console.WriteLine(ws.document.getDocumentPath("e339f14b-4d3a-489c-91d3-05e4575709d2")); } catch (Exception e) { System.Console.WriteLine(e.ToString()); } } }}extendedDocumentCopy
Sección titulada «extendedDocumentCopy»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| extendedDocumentCopy(String docId, String fldId, String name, bool categories, boolean keywords, bool propertyGroups, bool notes, bool wiki, bool security) |
void | Copia un documento con los datos asociados a una carpeta o expediente. |
- El valor del parámetro nodeId debe ser el UUID de un documento.
- El valor del parámetro dstId debe ser el UUID de una carpeta o de un expediente.
- Cuando el valor del parámetro newName es null, el documento conservará el mismo nombre.
Ejemplo:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;
namespace OKMRest{ public class Program { static void Main(string[] args) { String host = "http://localhost:8080/openkm"; String username = "okmAdmin"; String password = "admin"; OKMWebservice ws = OKMWebservicesFactory.newInstance(host); try { ws.login(user, password); ws.document.extendedDocumentCopy("f123a950-0329-4d62-8328-0ff500fd42db", "d1cad1b0-3c4f-4ad3-8ee1-6ad779fa227c", "newDoc.docx", true, true, true, true, true, true); } catch (Exception e) { System.Console.WriteLine(e.ToString()); } } }}getExtractedText
Sección titulada «getExtractedText»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| getExtractedText(String docId) | String | Devuelve un String con el texto extraído producido por el proceso de extracción de texto. |
- Cuando un documento se sube a OpenKM, entra en la cola de extracción de texto. Existe un crontab que procesa periódicamente esta cola y extrae el contenido de los documentos.
Ejemplo:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;
namespace OKMRest{ public class Program { static void Main(string[] args) { String host = "http://localhost:8080/openkm"; String username = "okmAdmin"; String password = "admin"; OKMWebservice ws = OKMWebservicesFactory.newInstance(host); try { ws.login(user, password); System.Console.WriteLine(ws.document.getExtractedText("f123a950-0329-4d62-8328-0ff500fd42db")); } catch (Exception e) { System.Console.WriteLine(e.ToString()); } } }}setExtractedText
Sección titulada «setExtractedText»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| setExtractedText(String uuid, FileStream fileStream) | void | Establece el texto extraído. |
Ejemplo:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;
namespace OKMRest{ public class Program { static void Main(string[] args) { String host = "http://localhost:8080/openkm"; String username = "okmAdmin"; String password = "admin"; OKMWebservice ws = OKMWebservicesFactory.newInstance(host); try { ws.login(user, password); FileStream fs = new FileStream(@"C:\test.pdf", FileMode.Open, FileAccess.Read); ws.document.setExtractedText("f123a950-0329-4d62-8328-0ff500fd42db", fs); fs.Close(); } catch (Exception e) { System.Console.WriteLine(e.ToString()); } } }}getThumbnail
Sección titulada «getThumbnail»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| getThumbnail(String docId, ThumbnailType type) | Stream | Devuelve los datos de la imagen miniatura. |
- Tipos disponibles:
Ejemplo:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using System.IO;
namespace OKMRest{ public class Program { static void Main(string[] args) { String host = "http://localhost:8080/openkm"; String username = "okmAdmin"; String password = "admin"; OKMWebservice ws = OKMWebservicesFactory.newInstance(host); try { ws.login(user, password); Stream st = ws.document.getThumbnail("f123a950-0329-4d62-8328-0ff500fd42db", ThumbnailType.THUMBNAIL_LIGHTBOX); } catch (Exception e) { System.Console.WriteLine(e.ToString()); } } }}setLanguage
Sección titulada «setLanguage»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| setLanguage(String docId, String lang) | void | Establece el idioma de un documento. |
- El parámetro lang debe cumplir el estándar ISO 639-1.
Ejemplo:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;
namespace OKMRest{ public class Program { static void Main(string[] args) { String host = "http://localhost:8080/openkm"; String username = "okmAdmin"; String password = "admin"; OKMWebservice ws = OKMWebservicesFactory.newInstance(host); try { ws.login(user, password); ws.document.setLanguage("f123a950-0329-4d62-8328-0ff500fd42db", "es-ES"); } catch (Exception e) { System.Console.WriteLine(e.ToString()); } } }}setDocumentTitle
Sección titulada «setDocumentTitle»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| setDocumentTitle(String docId, String title) | void | Establece el título del documento. |
Ejemplo:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.bean;
namespace OKMRest{ public class Program { static void Main(string[] args) { String host = "http://localhost:8080/openkm"; String username = "okmAdmin"; String password = "admin"; OKMWebservice ws = OKMWebservicesFactory.newInstance(host); try { ws.login(user, password); ws.document.setDocumentTitle("f123a950-0329-4d62-8328-0ff500fd42db", "Some title here"); } catch (Exception e) { System.Console.WriteLine(e.ToString()); } } }}createDocumentFromTemplate
Sección titulada «createDocumentFromTemplate»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| createDocumentFromTemplate(String uuid, String dstPath , Boolean categories, Boolean keywords, Boolean notes, Boolean security, Dictionary<String, String> properties) | Document | Crea un nuevo documento a partir de una plantilla y devuelve un objeto Document. |
- El parámetro uuid es el valor UUID del fichero de plantilla.
- El valor dstPath es la ruta de destino del documento.
- Cuando la plantilla usa grupos de metadatos para rellenar campos, estos valores son obligatorios y deben establecerse en el parámetro properties.
Ejemplo:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.util;
namespace OKMRest{ public class Program { static void Main(string[] args) { String host = "http://localhost:8080/openkm"; String username = "okmAdmin"; String password = "admin"; OKMWebservice ws = OKMWebservicesFactory.newInstance(host); try { ws.login(user, password); Dictionary<String, String> properties = new Dictionary<String, String>(); properties.Add("okp:tpl.name", "Some name"); DateTime date = DateTime.Now; // Value must be converted to String ISO 8601 compliant properties.Add("okp:tpl.bird_date", ISO8601.formatBasic(date)); properties.Add("okp:tpl.language", "java"); ws.document.createFromTemplate("f123a950-0329-4d62-8328-0ff500fd42db", "/okm:root/test.pdf", false, false, false, false, properties); } catch (Exception e) { System.Console.WriteLine(e.ToString()); } } }}updateDocumentFromTemplate
Sección titulada «updateDocumentFromTemplate»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| updateDocumentFromTemplate(String uuid, String dstId, Map<String, String> properties) | Document | Actualiza un documento creado previamente a partir de una plantilla y devuelve un objeto Document. |
- El valor uuid es el valor UUID del fichero plantilla.
- El dstId es el UUID del documento a actualizar.
- Este método solo tiene sentido cuando una plantilla usa grupos de metadatos para rellenar campos.
Ejemplo:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.util;
namespace OKMRest{ public class Program { static void Main(string[] args) { String host = "http://localhost:8080/openkm"; String username = "okmAdmin"; String password = "admin"; OKMWebservice ws = OKMWebservicesFactory.newInstance(host); try { ws.login(user, password); Dictionary<String, String> properties = new Dictionary<String, String>(); properties.Add("okp:tpl.name", "Some name"); DateTime date = DateTime.Now; // Value must be converted to String ISO 8601 compliant properties.Add("okp:tpl.bird_date", ISO8601.formatBasic(date)); properties.Add("okp:tpl.language", "java");
ws.document.updateFromTemplate("9fa9787e-d8b0-4ff7-905a-a89f0b228ec8", "058b9379-b441-454d-8590-00d5a280ce79", properties); } catch (Exception e) { System.Console.WriteLine(e.ToString()); } } }}getDetectedLanguages
Sección titulada «getDetectedLanguages»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| getDetectedLanguages() | List |
Devuelve una lista de los idiomas de documento disponibles que OpenKM puede identificar. |
Ejemplo:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.bean;
namespace OKMRest{ public class Program { static void Main(string[] args) { String host = "http://localhost:8080/openkm"; String username = "okmAdmin"; String password = "admin"; OKMWebservice ws = OKMWebservicesFactory.newInstance(host); try { ws.login(user, password); foreach (String lang in ws.document.getDetectedLanguages()) { System.Console.WriteLine(lang); } } catch (Exception e) { System.Console.WriteLine(e.ToString()); } } }}getCheckedOut
Sección titulada «getCheckedOut»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| getCheckedOut() | List |
Devuelve una lista con los documentos que el usuario tiene en checkout. |
Ejemplo:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.bean;
namespace OKMRest{ public class Program { static void Main(string[] args) { String host = "http://localhost:8080/openkm"; String username = "okmAdmin"; String password = "admin"; OKMWebservice ws = OKMWebservicesFactory.newInstance(host); try { ws.login(user, password); List<Document> docs = ws.document.getCheckedOut(); foreach (Document doc in docs) { System.Console.WriteLine(doc.toString()); } } catch (Exception e) { System.Console.WriteLine(e.ToString()); } } }}setDocumentDescription
Sección titulada «setDocumentDescription»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| setDocumentDescription(String docId, String description) | void | Establece la descripción de un documento. |
Ejemplo:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.bean;
namespace OKMRest{ public class Program { static void Main(string[] args) { String host = "http://localhost:8080/openkm"; String username = "okmAdmin"; String password = "admin"; OKMWebservice ws = OKMWebservicesFactory.newInstance(host); try { ws.login(user, password); ws.document.setDocumentDescription("f123a950-0329-4d62-8328-0ff500fd42db", "Some description here"); } catch (Exception e) { System.Console.WriteLine(e.ToString()); } } }}createWizardDocument
Sección titulada «createWizardDocument»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| createWizardDocument(String docId, long stage) | WizardNode | Crea un documento con un asistente. |
Ejemplo:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.bean;
namespace OKMRest{ public class Program { static void Main(string[] args) { String host = "http://localhost:8080/openkm"; String username = "okmAdmin"; String password = "admin"; OKMWebservice ws = OKMWebservicesFactory.newInstance(host); try { ws.login(user, password); FileStream fs = new FileStream(LOCAL_DOC, FileMode.Open, FileAccess.Read); long nodeClass= 1; WizardNode wizardNode = ws.document.createWizardDocument("f123a950-0329-4d62-8328-0ff500fd42db","test.docx", nodeClass, fs); fs.Close(); } catch (Exception e) { System.Console.WriteLine(e.ToString()); } } }}getNumberOfPages
Sección titulada «getNumberOfPages»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| getNumberOfPages(String docId) | int | Obtiene el número de páginas de un documento. |
Ejemplo:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.bean;
namespace OKMRest{ public class Program { static void Main(string[] args) { String host = "http://localhost:8080/openkm"; String username = "okmAdmin"; String password = "admin"; OKMWebservice ws = OKMWebservicesFactory.newInstance(host); try { ws.login(user, password); System.Console.WriteLine("The number of pages is : " + ws.document.getNumberOfPages("f123a950-0329-4d62-8328-0ff500fd42db").ToString()); } catch (Exception e) { System.Console.WriteLine(e.ToString()); } } }}getPageAsImage
Sección titulada «getPageAsImage»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| getPageAsImage(String uuid, int pageNumber, int maxWidth, int maxHeight) | String | Devuelve una página concreta como imagen codificada en una cadena Base64. |
Ejemplo:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.bean;
namespace OKMRest{ public class Program { static void Main(string[] args) { String host = "http://localhost:8080/openkm"; String username = "okmAdmin"; String password = "admin"; OKMWebservice ws = OKMWebservicesFactory.newInstance(host); try { ws.login(user, password); System.Console.WriteLine(ws.document.getPageAsImage("f123a950-0329-4d62-8328-0ff500fd42db", 1, 150, 150)); } catch (Exception e) { System.Console.WriteLine(e.ToString()); } } }}IsAttachment
Sección titulada «IsAttachment»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| isAttachment(String docId) | Boolean | Devuelve un booleano que indica si el nodo es un adjunto de correo. |
Ejemplo:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.bean;
namespace OKMRest{ public class Program { static void Main(string[] args) { String host = "http://localhost:8080/openkm"; String username = "okmAdmin"; String password = "admin"; OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try { ws.login(user, password); System.Console.Writeline(ws.document.isAttachment("1ec49da9-1746-4875-ae32-9281d7303a62").ToString()); } catch (Exception e) { System.Console.WriteLine(e.ToString()); } } }}getDocumentPdf
Sección titulada «getDocumentPdf»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| getDocumentPdf(String uuid) | Stream | Devuelve un PDF del documento. |
Ejemplo:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.bean;using com.openkm.sdk4csharp.impl;
namespace OKMRest{ public class Program { static void Main(string[] args) { String host = "http://localhost:8080/openkm"; String username = "okmAdmin"; String password = "admin"; OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try { ws.login(user, password); Document doc = ws.document.getDocumentProperties("4b88cbe9-e73d-45fc-bac0-35e0d6e59e43"); Stream stream = ws.document.getDocumentPdf(doc.uuid); FileStream docFile = new FileStream("D:\\test.pdf", FileMode.OpenOrCreate, FileAccess.ReadWrite); stream.CopyTo(docFile); stream.Close(); docFile.Close(); } catch (Exception e) { System.Console.WriteLine(e.ToString()); } } }}