Ir al contenido
Otras versiones

Cargando…

Mail samples

Primero debe crear el objeto webservice:

OKMWebservices ws = OKMWebservicesFactory.getInstance(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, puede usar todos los métodos de Mail desde la clase “mail”, tal y como se muestra a continuación:

ws.mail.getProperties("05d9b8e3-f9c1-4ace-9007-afd775dbbced")

Descripción:

Método Valores de retorno Descripción
getProperties(String uuid) Mail Devuelve las propiedades del correo.

Ejemplo:

package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;
import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) {
String host = "http://localhost:8080/openkm";
String user = "okmAdmin";
String password = "admin";
OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try {
ws.login(user, password);
System.out.println(ws.mail.getProperties("05d9b8e3-f9c1-4ace-9007-afd775dbbced"));
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
delete(String uuid) void Elimina un correo.

Ejemplo:

package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;
import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) {
String host = "http://localhost:8080/openkm";
String user = "okmAdmin";
String password = "admin";
OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try {
ws.login(user, password);
ws.mail.delete("05d9b8e3-f9c1-4ace-9007-afd775dbbced");
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
purge(String uuid) void El correo se elimina permanentemente del repositorio.

Normalmente, purgará correos hacia /okm:trash/userId - la papelera personal del usuario - pero también es posible purgar directamente cualquier correo desde todo el repositorio.

Ejemplo:

package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;
import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) {
String host = "http://localhost:8080/openkm";
String user = "okmAdmin";
String password = "admin";
OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try {
ws.login(user, password);
ws.mail.purge("05d9b8e3-f9c1-4ace-9007-afd775dbbced");
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
rename(String uuid, String newName) void Renombra un correo.

Ejemplo:

package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;
import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) {
String host = "http://localhost:8080/openkm";
String user = "okmAdmin";
String password = "admin";
OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try {
ws.login(user, password);
ws.mail.rename("e3831cc4-30f0-419a-8fbf-a3418472ada5", "new name");
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
move(String uuid, String dstId) void Mueve un correo a una carpeta o expediente.

El valor del parámetro dstId debe ser un UUID de carpeta o expediente.

Ejemplo:

package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;
import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) {
String host = "http://localhost:8080/openkm";
String user = "okmAdmin";
String password = "admin";
OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try {
ws.login(user, password);
ws.mail.move("e3831cc4-30f0-419a-8fbf-a3418472ada5", "ada67d44-b081-4b23-bdc1-74181cafbc5d");
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
public void copy(String uuid, String dstId, String newName) void Copia un correo a una carpeta o expediente.

El valor del parámetro dstId debe ser un UUID de carpeta o expediente.

Cuando el valor del parámetro newName es null, el correo conservará el mismo nombre.

Ejemplo:

package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;
import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) {
String host = "http://localhost:8080/openkm";
String user = "okmAdmin";
String password = "admin";
OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try {
ws.login(user, password);
ws.mail.copy("e3831cc4-30f0-419a-8fbf-a3418472ada5", "ada67d44-b081-4b23-bdc1-74181cafbc5d", "new_name");
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
extendedCopy(String uuid, String dstId, boolean categories, boolean keywords, boolean propertyGroups, boolean notes, boolean security, String newName) Mail Copia un correo con sus datos asociados a una carpeta o expediente.

El valor del parámetro dstId debe ser un UUID de carpeta o expediente.

Ejemplo:

package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;
import com.openkm.sdk4j.bean.Mail;
import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) {
String host = "http://localhost:8080/openkm";
String user = "okmAdmin";
String password = "admin";
OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try {
ws.login(user, password);
Mail mail = ws.mail.extendedCopy("e3831cc4-30f0-419a-8fbf-a3418472ada5", "ada67d44-b081-4b23-bdc1-74181cafbc5d", true, true, true, true, true, null);
System.out.println(mail);
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
getChildren(String uuid) List Devuelve una lista de todos los correos cuyo padre es fldId.

Ejemplo:

package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;
import com.openkm.sdk4j.bean.Mail;
import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) {
String host = "http://localhost:8080/openkm";
String user = "okmAdmin";
String password = "admin";
OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try {
ws.login(user, password);
for (Mail mail : ws.mail.getChildren("ada67d44-b081-4b23-bdc1-74181cafbc5d")) {
System.out.println(mail);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
isValid(String uuid) Boolean Devuelve un booleano que indica si el nodo es un correo o no.

Ejemplo:

package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;
import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) {
String host = "http://localhost:8080/openkm";
String user = "okmAdmin";
String password = "admin";
OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try {
ws.login(user, password);
// Devuelve false
System.out.println(ws.mail.isValid("ada67d44-b081-4b23-bdc1-74181cafbc5d"));
// Devuelve true
System.out.println(ws.mail.isValid("e3831cc4-30f0-419a-8fbf-a3418472ada5"));
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
getPath(String uuid) String Convierte el UUID de un correo en su ruta.

Ejemplo:

package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;
import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) {
String host = "http://localhost:8080/openkm";
String user = "okmAdmin";
String password = "admin";
OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try {
ws.login(user, password);
System.out.println(ws.mail.getPath("e3831cc4-30f0-419a-8fbf-a3418472ada5"));
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
createAttachment(String uuid, String docName, InputStream is) Document Añade un adjunto al correo.

Ejemplo:

package com.openkm;
import java.io.FileInputStream;
import java.io.InputStream;
import org.apache.commons.io.IOUtils;
import com.openkm.sdk4j.OKMWebservicesFactory;
import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) {
String host = "http://localhost:8080/openkm";
String user = "okmAdmin";
String password = "admin";
OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try {
ws.login(user, password);
InputStream is = new FileInputStream("/home/openkm/logo.png");
ws.mail.createAttachment("e3831cc4-30f0-419a-8fbf-a3418472ada5", "logo.png", is);
IOUtils.closeQuietly(is);
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
deleteAttachment(String uuid, String docId) void Elimina un adjunto de un correo.

El valor del parámetro docId puede ser un UUID de documento válido.

Ejemplo:

package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;
import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) {
String host = "http://localhost:8080/openkm";
String user = "okmAdmin";
String password = "admin";
OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try {
ws.login(user, password);
ws.mail.deleteAttachment("e3831cc4-30f0-419a-8fbf-a3418472ada5", "6dcb02dc-0881-4610-b2bc-a158ed7be0ee");
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
getAttachments(String uuid) List Recupera una lista de todos los documentos adjuntos del correo.

Ejemplo:

package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;
import com.openkm.sdk4j.bean.Document;
import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) {
String host = "http://localhost:8080/openkm";
String user = "okmAdmin";
String password = "admin";
OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try {
ws.login(user, password);
for (Document doc : ws.mail.getAttachments("e3831cc4-30f0-419a-8fbf-a3418472ada5")) {
System.out.println(doc);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
sendMailWithAttachments(List to, List cc, List bcc, List replyTo, String subject, String body, List docsId, String uuid) void Envía un mensaje de correo con adjuntos.

El valor del parámetro uuid debe ser un UUID de carpeta o expediente. El parámetro uuid indica dónde se almacenará el correo en el repositorio después de enviarlo.

Otros parámetros:

  • to es una lista de cuentas de correo destinatarias.
  • subject es el asunto del correo.
  • cc, bcc, replyTo son listas de cuentas de correo destinatarias (opcional)
  • docsId es una lista de UUID de documentos válidos ya existentes en OpenKM que se enviarán como adjuntos en el correo (opcional).

Ejemplo:

package com.openkm;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import com.openkm.sdk4j.OKMWebservicesFactory;
import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) {
String host = "http://localhost:8080/openkm";
String user = "okmAdmin";
String password = "admin";
OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try {
ws.login(user, password);
List<String> to = Arrays.asList("gnu.java.sergio@mail.com");
List<String> cc = new ArrayList<>();
List<String> bcc = new ArrayList<>();
List<String> replyTo = new ArrayList<>();
List<String> docsId = Arrays.asList("46762f90-82c6-4886-8d21-ad3017dd78a7", "8cd1e072-8595-4dd3-b121-41d622c43f08");
ws.mail.sendMailWithAttachments(to, cc, bcc, replyTo, "some subject", "some body", docsId, "85f07f05-1641-47e8-891f-0ea30643554e");
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
sendMailWithAttachments(String from, List to, List cc, List bcc, List replyTo, String subject, String body, List docsId, String uuid) void Envía un mensaje de correo con adjuntos.

El valor del parámetro uuid debe ser un UUID de carpeta o expediente. El parámetro uuid indica dónde se almacenará el correo en el repositorio después de enviarlo.

Otros parámetros:

  • from es opcional y puede establecerse con un valor vacío
  • to es una lista de cuentas de correo destinatarias.
  • subject es el asunto del correo.
  • cc, bcc, replyTo son listas de cuentas de correo destinatarias (opcional)
  • docsId es una lista de UUID de documentos válidos ya existentes en OpenKM que se enviarán como adjuntos en el correo (opcional).

Ejemplo:

package com.openkm;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import com.openkm.sdk4j.OKMWebservicesFactory;
import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) {
String host = "http://localhost:8080/openkm";
String user = "okmAdmin";
String password = "admin";
OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try {
ws.login(user, password);
String from = "some@nomail.com";
List<String> to = Arrays.asList("gnu.java.sergio@mail.com");
List<String> cc = new ArrayList<>();
List<String> bcc = new ArrayList<>();
List<String> replyTo = new ArrayList<>();
List<String> docsId = Arrays.asList("46762f90-82c6-4886-8d21-ad3017dd78a7", "8cd1e072-8595-4dd3-b121-41d622c43f08");
ws.mail.sendMailWithAttachments(from, to, cc, bcc, replyTo, "some subject", "some body", docsId, "85f07f05-1641-47e8-891f-0ea30643554e");
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
importEml(String uuid, String title, InputStream is) Mail Importa un correo en formato EML.

El valor del parámetro uuid debe ser un UUID de carpeta o expediente. El parámetro uuid indica dónde se almacenará el correo en el repositorio después de importarlo.

Ejemplo:

package com.openkm;
import java.io.FileInputStream;
import java.io.InputStream;
import org.apache.commons.io.IOUtils;
import com.openkm.sdk4j.OKMWebservicesFactory;
import com.openkm.sdk4j.bean.Mail;
import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) {
String host = "http://localhost:8080/openkm";
String user = "okmAdmin";
String password = "admin";
OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try {
ws.login(user, password);
InputStream is = new FileInputStream("/home/openkm/test.eml");
Mail mail = ws.mail.importEml("85f07f05-1641-47e8-891f-0ea30643554e", "some title", is);
System.out.println(mail);
IOUtils.closeQuietly(is);
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
importMsg(String uuid, String title, InputStream is) Mail Importa un correo en formato MSG.

El valor del parámetro uuid debe ser un UUID de carpeta o expediente. El parámetro uuid indica dónde se almacenará el correo en el repositorio después de importarlo.

Ejemplo:

package com.openkm;
import java.io.FileInputStream;
import java.io.InputStream;
import org.apache.commons.io.IOUtils;
import com.openkm.sdk4j.OKMWebservicesFactory;
import com.openkm.sdk4j.bean.Mail;
import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) {
String host = "http://localhost:8080/openkm";
String user = "okmAdmin";
String password = "admin";
OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try {
ws.login(user, password);
InputStream is = new FileInputStream("/home/openkm/test.msg");
Mail mail = ws.mail.importMsg("85f07f05-1641-47e8-891f-0ea30643554e", "some title", is);
System.out.println(mail);
IOUtils.closeQuietly(is);
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
setTitle(String uuid, String title) void Establece el título del correo.

Ejemplo:

package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;
import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) {
String host = "http://localhost:8080/openkm";
String user = "okmAdmin";
String password = "admin";
OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try {
ws.login(user, password);
ws.mail.setTitle("9d5dd110-db99-4d72-8cf7-610b027a4822", "new title");
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
sendMail(List recipients, String subject, String body) void Envía un correo.

Ejemplo:

package com.openkm;
import java.util.ArrayList;
import java.util.List;
import com.openkm.sdk4j.OKMWebservicesFactory;
import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) {
String host = "http://localhost:8080/openkm";
String user = "okmAdmin";
String password = "admin";
OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try {
ws.login(user, password);
StringBuffer body = new StringBuffer();
body.append("Test message body.");
List<String> recipients = new ArrayList<>();
recipients.add("some@mail.com");
ws.mail.sendMail(recipients, "Testing sending mail from OpenKM", body.toString());
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
sendMail(String from, List recipients, String subject, String body) void Envía un correo.

Otros parámetros:

  • from es opcional y puede establecerse con un valor vacío

Ejemplo:

package com.openkm;
import java.util.ArrayList;
import java.util.List;
import com.openkm.sdk4j.OKMWebservicesFactory;
import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) {
String host = "http://localhost:8080/openkm";
String user = "okmAdmin";
String password = "admin";
OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try {
ws.login(user, password);
String from = "some@nomail.com";
StringBuffer body = new StringBuffer();
body.append("Test message body.");
List<String> recipients = new ArrayList<>();
recipients.add("some@mail.com");
ws.mail.sendMail(to, recipients, "Testing sending mail from OpenKM", body.toString());
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
sendMail(String to, String subject, String body) void Envía un correo.

Ejemplo:

package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;
import com.openkm.sdk4j.impl.OKMWebservices;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
public class Test {
private static final Logger log = LoggerFactory.getLogger(Test.class);
public static void main(String[] args) {
String host = "http://localhost:8080/openkm";
String user = "okmAdmin";
String password = "admin";
OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try {
ws.login(user, password);
// sendMail
String to = "some@nomail.com";
StringBuffer body = new StringBuffer();
body.append("message test");
ws.mail.sendMail(to, "sigma subject", body.toString());
} catch (Exception e) {
log.error(e.getMessage());
}
}
}

Descripción:

Método Valores de retorno Descripción
setDispositionStage(String uuid, long stage) void Establece la etapa de disposición

Ejemplo:

package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;
import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) {
String host = "http://localhost:8080/openkm";
String user = "okmAdmin";
String password = "admin";
OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try {
ws.login(user, password);
long stage = 1;
ws.mail.setDispositionStage("7ce1b4a8-4ade-4dce-8d7d-4e99a6cd368b", stage);
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
setDescription(String uuid, String description) void Establece la descripción.

Ejemplo:

package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;
import com.openkm.sdk4j.bean.Mail;
import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) {
String host = "http://localhost:8080/openkm";
String user = "okmAdmin";
String password = "admin";
OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try {
ws.login(user, password);
ws.mail.setDescription("b405a504-d8cb-4166-ac51-22f68acee8c5", "some description");
Mail mail = ws.mail.getProperties("b405a504-d8cb-4166-ac51-22f68acee8c5");
System.out.println("Description: " + mail.getDescription());
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
getContent(String mailId) InputStream Recupera el contenido del correo (datos binarios) de la versión actual del correo.

Ejemplo:

package com.openkm;
import java.io.FileOutputStream;
import java.io.InputStream;
import java.io.OutputStream;
import org.apache.commons.io.IOUtils;
import com.openkm.sdk4j.OKMWebservicesFactory;
import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) {
String host = "http://localhost:8080/openkm";
String user = "okmAdmin";
String password = "admin";
OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try {
ws.login(user, password);
OutputStream fos = new FileOutputStream("/home/openkm/test.eml");
InputStream is = ws.mail.getContent("b405a504-d8cb-4166-ac51-22f68acee8c5");
IOUtils.copy(is, fos);
IOUtils.closeQuietly(is);
IOUtils.closeQuietly(fos);
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
createMail(String uuid, String title, InputStream is, String type) WizardNode Crea un nuevo documento mediante un asistente.

El parámetro uuid debe ser un UUID válido de carpeta o expediente.

Tipos disponibles:

  • Mail.ORIGIN_MSG
  • Mail.ORIGIN_EML

Ejemplo:

package com.openkm;
import java.io.FileInputStream;
import java.io.InputStream;
import org.apache.commons.io.IOUtils;
import com.openkm.sdk4j.OKMWebservicesFactory;
import com.openkm.sdk4j.bean.Mail;
import com.openkm.sdk4j.bean.WizardNode;
import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) {
String host = "http://localhost:8080/openkm";
String user = "okmAdmin";
String password = "admin";
OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try {
ws.login(user, password);
InputStream is = new FileInputStream("/home/openkm/sample2.eml");
WizardNode wn = ws.mail.createWizardl("4c195453-246b-4ce9-86ba-b84e68d1f284", "test title", is, Mail.ORIGIN_EML);
System.out.print(wn);
IOUtils.closeQuietly(is);
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
getThumbnail(String mailId, ThumbnailType type) InputStream Devuelve los datos de la imagen miniatura.

Tipos disponibles:

  • ThumbnailType.THUMBNAIL_PROPERTIES ( se muestra en la vista de propiedades )
  • ThumbnailType.THUMBNAIL_LIGHTBOX ( se muestra en el visor ampliado )
  • ThumbnailType.THUMBNAIL_SEARCH ( se muestra en la vista de búsqueda )

Ejemplo:

package com.openkm;
import java.io.FileOutputStream;
import java.io.InputStream;
import java.io.OutputStream;
import org.apache.commons.io.IOUtils;
import com.openkm.sdk4j.OKMWebservicesFactory;
import com.openkm.sdk4j.bean.ThumbnailType;
import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) {
String host = "http://localhost:8080/openkm";
String user = "okmAdmin";
String password = "admin";
OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try {
ws.login(user, password);
OutputStream fos = new FileOutputStream("/home/gnujavasergio/okm/thumbnail.png");
InputStream is = ws.mail.getMailThumbnail("1778f0b5-672c-48c1-b54e-494c18dd6df4", ThumbnailType.THUMBNAIL_LIGHTBOX);
IOUtils.copy(is, fos);
IOUtils.closeQuietly(is);
IOUtils.closeQuietly(fos);
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
getMailsPaginated(String context, int offset, int limit, MailFilterQuery filter, String orderColumn, boolean orderAsc) SimpleNodeBaseResultSet Devuelve una lista paginada de correos filtrados por los valores del parámetro MailFilterQuery.

Ejemplo:

package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;
import com.openkm.sdk4j.bean.AttachmentEnum;
import com.openkm.sdk4j.bean.MailFilterQuery;
import com.openkm.sdk4j.bean.SimpleNodeBase;
import com.openkm.sdk4j.bean.SimpleNodeBaseResultSet;
import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) {
String host = "http://localhost:8080/openkm";
String user = "okmAdmin";
String password = "admin";
OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try {
ws.login(user, password);
MailFilterQuery filter = new MailFilterQuery();
filter.setSubject("");
filter.setAttachments(AttachmentEnum.ALL);
String orderColumn = "subject";
SimpleNodeBaseResultSet simpleNodeBaseResultSet = ws.mail.getMailsPaginated("/okm:root", 0, 20, filter, orderColumn, true);
for (SimpleNodeBase simpleNodeBase : simpleNodeBaseResultSet.getResults()) {
System.out.println(simpleNodeBase);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
getAccounts() List Recupera una lista de las cuentas de correo del usuario.

Ejemplo:

package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;
import com.openkm.sdk4j.bean.MailAccount;
import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) {
String host = "http://localhost:8080/openkm";
String user = "okmAdmin";
String password = "admin";
OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try {
ws.login(user, password);
for (MailAccount mailAccount : ws.mail.getAccounts()) {
System.out.println(mailAccount);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
getMailMessages(long accountId, long start) MailServerMessages Recupera una lista de mensajes en el servidor de correo para una cuenta de correo.

Ejemplo:

package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;
import com.openkm.sdk4j.bean.ExternalMail;
import com.openkm.sdk4j.bean.MailServerMessages;
import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) {
String host = "http://localhost:8080/openkm";
String user = "okmAdmin";
String password = "admin";
OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try {
ws.login(user, password);
long accoundId = 1;
long start = 1;
MailServerMessages msg = ws.mail.getMailMessages(accoundId, start);
for (ExternalMail mail : msg.getServerMails()) {
System.out.println(mail);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
addAccount(MailAccount mailAccount) void Añade una cuenta de correo.

Ejemplo:

package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;
import com.openkm.sdk4j.bean.MailAccount;
import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) {
String host = "http://localhost:8080/openkm";
String user = "okmAdmin";
String password = "admin";
OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try {
ws.login(user, password);
MailAccount mailAcount = new MailAccount();
mailAcount.setMailProtocol(MailAccount.PROTOCOL_IMAPS);
mailAcount.setMailUser("test@none.com");
mailAcount.setMailPassword("123456");
mailAcount.setMailHost("imap.gmail.com");
mailAcount.setMailFolder("OpenKM");
mailAcount.setActive(true);
mailAcount.setRecursive(true);
ws.mail.addAccount(mailAcount);
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
updateAccount(MailAccount mailAccount) void Actualiza los datos de configuración principales de una cuenta de correo.

Ejemplo:

package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;
import com.openkm.sdk4j.bean.MailAccount;
import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) {
String host = "http://localhost:8080/openkm";
String user = "okmAdmin";
String password = "admin";
OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try {
ws.login(user, password);
MailAccount mailAcount = new MailAccount();
mailAcount.setId(2);
mailAcount.setMailProtocol(MailAccount.PROTOCOL_IMAPS);
mailAcount.setMailUser("testupdate@none.com");
mailAcount.setMailPassword("123456789");
mailAcount.setMailHost("imap.gmail.com");
mailAcount.setMailFolder("OpenKM");
mailAcount.setActive(true);
mailAcount.setRecursive(true);
ws.mail.updateAccount(mailAcount);
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
testAccount(MailAccount mailAccount) void Comprueba la conexión de la cuenta de correo.

Ejemplo:

package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;
import com.openkm.sdk4j.bean.MailAccount;
import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) {
String host = "http://localhost:8080/openkm";
String user = "okmAdmin";
String password = "admin";
OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try {
ws.login(user, password);
MailAccount mailAcount = new MailAccount();
mailAcount.setMailProtocol(MailAccount.PROTOCOL_IMAPS);
mailAcount.setMailUser("testupdate@none.com");
mailAcount.setMailPassword("123456789");
mailAcount.setMailHost("imap.gmail.com");
mailAcount.setMailFolder("OpenKM");
mailAcount.setActive(true);
mailAcount.setRecursive(true);
// Test mail account
ws.mail.testAccount(mailAcount);
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
deleteAccount(long mailAccountId) void Elimina una cuenta de correo.

Ejemplo:

package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;
import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) {
String host = "http://localhost:8080/openkm";
String user = "okmAdmin";
String password = "admin";
OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try {
ws.login(user, password);
long mailAccountId = 2;
ws.mail.deleteAccount(mailAccountId);
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
importMessages(long mailAccountId, List messageIds) void Importa mensajes desde una cuenta de correo.

Ejemplo:

package com.openkm;
import java.util.ArrayList;
import java.util.List;
import com.openkm.sdk4j.OKMWebservicesFactory;
import com.openkm.sdk4j.bean.ExternalMail;
import com.openkm.sdk4j.bean.MailServerMessages;
import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) {
String host = "http://localhost:8080/openkm";
String user = "okmAdmin";
String password = "admin";
OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try {
ws.login(user, password);
List<Long> messageIds = new ArrayList<>();
long mailAccountId = 1; // Valid mailAccountId
long start = 1;
MailServerMessages msg = ws.mail.getMailMessages(mailAccountId, start);
for (ExternalMail mail : msg.getServerMails()) {
messageIds.add(mail.getUid());
}
ws.mail.importMailMessages(mailAccountId, messageIds);
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Ejemplo:

package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;
import com.openkm.sdk4j.bean.MailFilter;
import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) {
String host = "http://localhost:8080/openkm";
String user = "okmAdmin";
String password = "admin";
OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try {
ws.login(user, password);
long mailAccountId = 2; // Valid mailAccountId
MailFilter filter = new MailFilter();
filter.setOrder(0);
filter.setGrouping(false);
filter.setExclusive(true);
filter.setActive(false);
filter.setNode("a9d5c158-c7b1-4771-b9c3-b8d24f5a2645");
ws.mail.createFilter(mailAccountId, filter);
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
createFilter(long mailAccountId, MailFilter mailFilter) void Añade un filtro de cuenta de correo.
Método Valores de retorno Descripción
updateFilter(MailFilter mailFilter) void Actualiza un filtro de cuenta de correo.

Ejemplo:

package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;
import com.openkm.sdk4j.bean.MailFilter;
import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) {
String host = "http://localhost:8080/openkm";
String user = "okmAdmin";
String password = "admin";
OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try {
ws.login(user, password);
MailFilter filter = new MailFilter();
filter.setId(2); // Valid filter id
filter.setOrder(0);
filter.setGrouping(false);
filter.setExclusive(true);
filter.setActive(true);
filter.setNode("a9d5c158-c7b1-4771-b9c3-b8d24f5a2645");
ws.mail.updateFilter(filter);
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
deleteFilter(long mailFilterId) void Elimina un filtro de cuenta de correo.

Ejemplo:

package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;
import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) {
String host = "http://localhost:8080/openkm";
String user = "okmAdmin";
String password = "admin";
OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try {
ws.login(user, password);
long filterId = 1; // Valid filter id
ws.mail.deleteFilter(filterId);
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
createRule(long filterId, MailFilterRule rule) void Crea una regla de filtro de correo.

Ejemplo:

package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;
import com.openkm.sdk4j.bean.MailFilterRule;
import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) {
String host = "http://localhost:8080/openkm";
String user = "okmAdmin";
String password = "admin";
OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try {
ws.login(user, password);
long filterId = 2;// Valid filter id
MailFilterRule rule = new MailFilterRule();
rule.setOperation(MailFilterRule.OPERATION_CONTAINS);
rule.setValue("test");
rule.setField(MailFilterRule.FIELD_FROM);
rule.setActive(false);
ws.mail.createRule(filterId, rule);
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
updateMailRule(MailFilterRule rule) void Actualiza una regla de cuenta de correo.

Ejemplo:

package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;
import com.openkm.sdk4j.bean.MailFilterRule;
import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) {
String host = "http://localhost:8080/openkm";
String user = "okmAdmin";
String password = "admin";
OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try {
ws.login(user, password);
MailFilterRule rule = new MailFilterRule();
rule.setId(2);
rule.setOperation(MailFilterRule.OPERATION_EQUALS);
rule.setValue("test");
rule.setField(MailFilterRule.FIELD_FROM);
rule.setActive(false);
ws.mail.updateRule(rule);
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
deleteRule(long ruleId) void Elimina una regla de una cuenta de correo.

Ejemplo:

package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;
import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) {
String host = "http://localhost:8080/openkm";
String user = "okmAdmin";
String password = "admin";
OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try {
ws.login(user, password);
long ruleId = 1; // Valid rule id
ws.mail.deleteRule(ruleId);
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
getFilterRules(long filterId) List Recupera una lista de reglas de un filtro.

Ejemplo:

package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;
import com.openkm.sdk4j.bean.MailFilterRule;
import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) {
String host = "http://localhost:8080/openkm";
String user = "okmAdmin";
String password = "admin";
OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try {
ws.login(user, password);
long filterId = 2; // Valid filter id
for (MailFilterRule mailFilterRule : ws.mail.getFilterRules(filterId)) {
System.out.println(mailFilterRule);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
forwardEmail(String uuid, List users, List roles, List mails, String message) void Reenvía un correo a una lista de usuarios, roles o direcciones de correo externas.

Ejemplo:

package com.openkm;
import java.util.ArrayList;
import java.util.List;
import com.openkm.sdk4j.OKMWebservicesFactory;
import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) {
String host = "http://localhost:8080/openkm";
String user = "okmAdmin";
String password = "admin";
OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try {
ws.login(user, password);
String mailUuid = "f123a950-0329-4d62-8328-0ff500fd42db";
List<String> users = new ArrayList<>();
users.add("userTest");
List<String> roles = new ArrayList<>();
roles.add("ROLE_USER");
List<String> mails = new ArrayList<>();
mails.add("test@none.com");
ws.mail.forwardEmail(mailUuid, users, roles, mails, "Any message");
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
getPdf(String uuid) InputStream Devuelve un PDF del correo.

Ejemplo:

package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;
import com.openkm.sdk4j.bean.Mail;
import com.openkm.sdk4j.impl.OKMWebservices;
import org.apache.commons.io.IOUtils;
import java.io.FileOutputStream;
import java.io.InputStream;
import java.io.OutputStream;
public class Test {
public static void main(String[] args) {
String host = "http://localhost:8080/openkm";
String user = "okmAdmin";
String password = "admin";
OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try {
ws.login(user, password);
Mail mail = ws.mail.getProperties("4b88cbe9-e73d-45fc-bac0-35e0d6e59e43");
InputStream is = ws.mail.getPdf(mail.getUuid());
OutputStream fos = new FileOutputStream("/home/gnujavasergio/okm/" + mail.getSubject() + ".pdf");
IOUtils.copy(is, fos);
IOUtils.closeQuietly(is);
IOUtils.closeQuietly(fos);
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
saveAsPdf(String uuid, String newName, boolean propertyGroups, boolean security) Document Guarda el correo como PDF en el repositorio de OpenKM.

El valor del parámetro uuid debe ser un UUID de Mail.

Cuando el valor del parámetro newName es null, el documento conservará el mismo nombre.

Ejemplo:

package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;
import com.openkm.sdk4j.bean.Document;
import com.openkm.sdk4j.bean.Mail;
import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) {
String host = "http://localhost:8080/openkm";
String user = "okmAdmin";
String password = "admin";
OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try {
ws.login(user, password);
Mail mail = ws.mail.getProperties("7f6c5c0b-a66b-4782-9595-e14b402a18b0");
Document docPdf = ws.mail.saveAsPdf(mail.getUuid(), mail.getSubject() + ".pdf", true, true);
System.out.println("Document pdf: " + docPdf.getPath());
} catch (Exception e) {
e.printStackTrace();
}
}
}