Ejemplos de Mail
Conceptos básicos
Sección titulada «Conceptos básicos»Ejemplo de código sugerido
Sección titulada «Ejemplo de código sugerido»Primero, debes crear el objeto de servicio web:
OKMWebservices ws = OKMWebservicesFactory.getInstance(host);A continuación debes iniciar sesión usando el método “login”. Puedes acceder al método “login” desde el objeto de servicio web “ws” como se muestra a continuación:
ws.login(user, password);Llegados a este punto puedes usar todos los métodos de Mail desde la clase “mail” como se muestra a continuación:
ws.mail.getProperties("05d9b8e3-f9c1-4ace-9007-afd775dbbced")Métodos
Sección titulada «Métodos»getProperties
Sección titulada «getProperties»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| getProperties(String uuid) | 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ás correos a /okm:trash/userId - la ubicación personal de papelera del usuario - pero es posible purgar directamente cualquier correo de 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. |
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 el UUID de una carpeta o expediente.
- Cuando el 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(); } }}extendedCopy
Sección titulada «extendedCopy»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) | Copia un correo con sus datos asociados a una carpeta o expediente. |
- El valor del parámetro dstId debe ser el UUID de una 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(); } }}getChildren
Sección titulada «getChildren»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(); } }}isValid
Sección titulada «isValid»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| isValid(String uuid) | Boolean | Devuelve un booleano que indica si el nodo es 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); // 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(); } }}getPath
Sección titulada «getPath»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(); } }}createAttachment
Sección titulada «createAttachment»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(); } }}deleteAttachment
Sección titulada «deleteAttachment»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| deleteAttachment(String uuid, String docId) | void | Elimina un adjunto 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); ws.mail.deleteAttachment("e3831cc4-30f0-419a-8fbf-a3418472ada5", "6dcb02dc-0881-4610-b2bc-a158ed7be0ee"); } catch (Exception e) { e.printStackTrace(); } }}getAttachments
Sección titulada «getAttachments»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| getAttachments(String uuid) | List |
Obtiene 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(); } }}sendMailWithAttachments
Sección titulada «sendMailWithAttachments»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| sendMailWithAttachments(List |
void | Envía un mensaje de correo con adjuntos. |
- El valor del parámetro uuid debe ser el UUID de una carpeta o expediente. El parámetro uuid indica dónde se almacenará el correo en el repositorio una vez enviado.
- Otros parámetros:
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(); } }}sendMailWithAttachments
Sección titulada «sendMailWithAttachments»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| sendMailWithAttachments(String from, List |
void | Envía un mensaje de correo con adjuntos. |
- El valor del parámetro uuid debe ser el UUID de una carpeta o expediente. El parámetro uuid indica dónde se almacenará el correo en el repositorio una vez enviado.
- Otros parámetros:
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(); } }}importEml
Sección titulada «importEml»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| importEml(String uuid, String title, InputStream is) | Importa un correo en formato EML. |
- El valor del parámetro uuid debe ser el UUID de una carpeta o expediente. El parámetro uuid indica dónde se almacenará el correo en el repositorio una vez importado.
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(); } }}importMsg
Sección titulada «importMsg»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| importMsg(String uuid, String title, InputStream is) | Importa un correo en formato MSG. |
- El valor del parámetro uuid debe ser el UUID de una carpeta o expediente. El parámetro uuid indica dónde se almacenará el correo en el repositorio una vez importado.
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(); } }}setTitle
Sección titulada «setTitle»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(); } }}sendMail
Sección titulada «sendMail»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| sendMail(List |
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(); } }}sendMail
Sección titulada «sendMail»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| sendMail(String from, List |
void | Envía un correo. |
- Otros parámetros:
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(); } }}sendMail
Sección titulada «sendMail»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()); } }}setDispositionStage
Sección titulada «setDispositionStage»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| setDispositionStage(String uuid, long stage) | void | Establece la fase 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(); } }}setDescription
Sección titulada «setDescription»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(); } }}getContent
Sección titulada «getContent»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| getContent(String mailId) | InputStream | Obtiene 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(); } }}createWizard
Sección titulada «createWizard»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| createMail(String uuid, String title, InputStream is, String type) | WizardNode | Crea un nuevo documento con un wizard. |
- El parámetro uuid debe ser un UUID de carpeta o expediente válido.
- Tipos disponibles:
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(); } }}getThumbnail
Sección titulada «getThumbnail»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| getThumbnail(String mailId, ThumbnailType type) | InputStream | Devuelve los datos de la imagen miniatura. |
- Tipos disponibles:
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(); } }}getMailsPaginated
Sección titulada «getMailsPaginated»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 filtrada 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(); } }}getAccounts
Sección titulada «getAccounts»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| getAccounts() | List |
Obtiene 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(); } }}getMailMessages
Sección titulada «getMailMessages»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| getMailMessages(long accountId, long start) | MailServerMessages | Obtiene una lista de mensajes del 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(); } }}addAccount
Sección titulada «addAccount»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(); } }}updateAccount
Sección titulada «updateAccount»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| updateAccount(MailAccount mailAccount) | void | Actualiza los datos de configuración principal 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(); } }}testAccount
Sección titulada «testAccount»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(); } }}deleteAccount
Sección titulada «deleteAccount»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(); } }}importMessages
Sección titulada «importMessages»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| importMessages(long mailAccountId, List |
void | Importa mensajes de 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.importMessages(mailAccountId, messageIds); } catch (Exception e) { e.printStackTrace(); } }}createFilter
Sección titulada «createFilter»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(); } }}updateFilter
Sección titulada «updateFilter»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(); } }}deleteFilter
Sección titulada «deleteFilter»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(); } }}createRule
Sección titulada «createRule»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(); } }}updateRule
Sección titulada «updateRule»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(); } }}deleteRule
Sección titulada «deleteRule»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(); } }}getFilterRules
Sección titulada «getFilterRules»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| getFilterRules(long filterId) | List |
Obtiene 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(); } }}forwardEmail
Sección titulada «forwardEmail»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| forwardEmail(String uuid, List |
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(); } }}saveAsPdf
Sección titulada «saveAsPdf»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. |
- 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(); } }}