Ir al contenido
Otras versiones

Cargando…

Mail samples

En casi todos los métodos verá un parámetro llamado “mailId”. El valor de este parámetro puede ser un UUID o una ruta (path) válidos de correo.

Descripción:

Método Valores de retorno Descripción
createMail(Mail mail) Mail Crea un nuevo correo y devuelve como resultado un objeto Mail.
  • La variable path del parámetro mail debe inicializarse. Indica la ruta de la carpeta dentro de OpenKM.
  • Otras variables obligatorias:

Ejemplo:

package com.openkm;
import java.util.Arrays;
import java.util.Calendar;
import org.owasp.encoder.Encode;
import com.openkm.sdk4j.OKMWebservices;
import com.openkm.sdk4j.OKMWebservicesFactory;
import com.openkm.sdk4j.bean.Mail;
public class Test {
public static void main(String[] args) {
String host = "http://localhost:8080/OpenKM";
String username = "okmAdmin";
String password = "admin";
OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try {
Mail mail = new Mail();
// Mail path = msgId + escaped(subject)
String msgId = "2937b81d-0b10-4dd0-a426-9acbd80be1c9";
String subject = "some subject";
String mailPath = "/okm:root/"+ msgId + "-" + escape(subject);
mail.setPath(mailPath);
            // Other format for mail "some name <no_reply@openkm.com>"
mail.setFrom("<no_reply@openkm.com>");
mail.setTo((String[])Arrays.asList("anonymous@gmail.com").toArray());
            // You should set real dates
mail.setSentDate(Calendar.getInstance());
mail.setReceivedDate(Calendar.getInstance());
mail.setContent("some content");
mail.setMimeType(Mail.MIME_TEXT);
mail.setSubject(subject);
            // Get only as an approximation of real size for these sample
mail.setSize(mail.toString().getBytes("UTF-8").length);
ws.createMail(mail);
} catch (Exception e) {
e.printStackTrace();
}
}
private static String escape(String name) {
        String ret = cleanup(name);
        // Fix XSS issues
        ret = Encode.forHtml(ret);
        return ret;
    }
private static String cleanup(String name) {
        String ret = name.replace("/", "");
        ret = ret.replace("*", "");
        ret = ret.replaceAll("\\s+", " ").trim();
        return ret;
    }
}

Descripción:

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

Ejemplo:

package com.openkm;
import com.openkm.sdk4j.OKMWebservices;
import com.openkm.sdk4j.OKMWebservicesFactory;
public class Test {
public static void main(String[] args) {
String host = "http://localhost:8080/OpenKM";
String username = "okmAdmin";
String password = "admin";
OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try {
System.out.println(ws.getMailProperties("064ff51a-b815-4f48-a096-b4946876784f"));
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

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

Ejemplo:

package com.openkm;
import com.openkm.sdk4j.OKMWebservices;
import com.openkm.sdk4j.OKMWebservicesFactory;
public class Test {
public static void main(String[] args) {
String host = "http://localhost:8080/OpenKM";
String username = "okmAdmin";
String password = "admin";
OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try {
ws.deleteMail("064ff51a-b815-4f48-a096-b4946876784f");
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
purgeMail(String mailId) void El correo se elimina definitivamente del repositorio.
  • Normalmente se purgan correos en /okm:trash/userId - las ubicaciones personales de la papelera de cada usuario - pero es posible purgar directamente cualquier correo de todo el repositorio.

Ejemplo:

package com.openkm;
import com.openkm.sdk4j.OKMWebservices;
import com.openkm.sdk4j.OKMWebservicesFactory;
public class Test {
public static void main(String[] args) {
String host = "http://localhost:8080/OpenKM";
String username = "okmAdmin";
String password = "admin";
OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try {
ws.purgeMail("064ff51a-b815-4f48-a096-b4946876784f");
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

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

Ejemplo:

package com.openkm;
import com.openkm.sdk4j.OKMWebservices;
import com.openkm.sdk4j.OKMWebservicesFactory;
public class Test {
public static void main(String[] args) {
String host = "http://localhost:8080/OpenKM";
String username = "okmAdmin";
String password = "admin";
OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try {
ws.renameMail("064ff51a-b815-4f48-a096-b4946876784f","new name");
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
moveMail(String mailId, String dstId) void Mueve un correo a una carpeta.

Ejemplo:

package com.openkm;
import com.openkm.sdk4j.OKMWebservices;
import com.openkm.sdk4j.OKMWebservicesFactory;
public class Test {
public static void main(String[] args) {
String host = "http://localhost:8080/OpenKM";
String username = "okmAdmin";
String password = "admin";
OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try {
ws.moveMail("064ff51a-b815-4f48-a096-b4946876784f","/okm:root/tmp");
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
public void copyMail(String mailId, String dstId, String newName) void Copia un correo a una carpeta.
  • El valor del parámetro dstId debe ser un UUID o una ruta (path) de carpeta.
  • Cuando el valor del parámetro newName es null, el correo conservará el mismo nombre.

Ejemplo:

package com.openkm;
import com.openkm.sdk4j.OKMWebservices;
import com.openkm.sdk4j.OKMWebservicesFactory;
public class Test {
public static void main(String[] args) {
String host = "http://localhost:8080/OpenKM";
String username = "okmAdmin";
String password = "admin";
OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try {
ws.copyMail("064ff51a-b815-4f48-a096-b4946876784f","/okm:root/temp","new_name");
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
extendedMailCopy(String mailId, String dstId, boolean categories, boolean keywords, boolean propertyGroups, boolean notes, boolean wiki) void Copia un correo junto con los datos asociados a una carpeta.
  • El valor del parámetro dstId debe ser un UUID o una ruta (path) de carpeta.

Ejemplo:

package com.openkm;
import com.openkm.sdk4j.OKMWebservices;
import com.openkm.sdk4j.OKMWebservicesFactory;
public class Test {
public static void main(String[] args) {
String host = "http://localhost:8080/OpenKM";
String username = "okmAdmin";
String password = "admin";
OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try {
ws.extendedMailCopy("064ff51a-b815-4f48-a096-b4946876784f", "/okm:root/tmp", true, true, true, true, true);
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

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

Ejemplo:

package com.openkm;
import com.openkm.sdk4j.OKMWebservices;
import com.openkm.sdk4j.OKMWebservicesFactory;
import com.openkm.sdk4j.bean.Mail;
public class Test {
public static void main(String[] args) {
String host = "http://localhost:8080/OpenKM";
String username = "okmAdmin";
String password = "admin";
OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try {
            for (Mail mail : ws.getMailChildren("/okm:root")) {
                System.out.println(mail);
            }
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

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

Ejemplo:

package com.openkm;
import com.openkm.sdk4j.OKMWebservices;
import com.openkm.sdk4j.OKMWebservicesFactory;
public class Test {
public static void main(String[] args) {
String host = "http://localhost:8080/OpenKM";
String username = "okmAdmin";
String password = "admin";
OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try {
// Return false
ws.isValidMail("/okm:root/logo.png");
// Return true
ws.isValidMail("064ff51a-b815-4f48-a096-b4946876784f");
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

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

Ejemplo:

package com.openkm;
import com.openkm.sdk4j.OKMWebservices;
import com.openkm.sdk4j.OKMWebservicesFactory;
public class Test {
public static void main(String[] args) {
String host = "http://localhost:8080/OpenKM";
String username = "okmAdmin";
String password = "admin";
OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try {
System.out.println(ws.getMailPath("064ff51a-b815-4f48-a096-b4946876784f"));
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
importEml(String dstId, InputStream is) Mail Importa un correo en formato EML.
  • El valor del parámetro dstId debe ser un UUID o una ruta (path) de carpeta o de expediente. El parámetro dstId indica dónde se almacenará el correo en el repositorio tras importarse.

Ejemplo:

package com.openkm;
import com.openkm.sdk4j.OKMWebservices;
import com.openkm.sdk4j.OKMWebservicesFactory;
import com.openkm.sdk4j.bean.Mail;
import org.apache.commons.io.IOUtils;
import java.io.FileInputStream;
import java.io.InputStream;
public class Test {
public static void main(String[] args) {
String host = "http://localhost:8080/OpenKM";
String username = "okmAdmin";
String password = "admin";
OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try {
InputStream is = new FileInputStream("/home/files/test.eml");
Mail mail = ws.importEml("d88cff0d-903a-4c5a-82ea-8e6dbd100d65", is);
System.out.println(mail);
IOUtils.closeQuietly(is);
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
importMsg(String dstId, InputStream is) Mail Importa un correo en formato MSG.
  • El valor del parámetro dstId debe ser un UUID o una ruta (path) de carpeta o de expediente. El parámetro dstId indica dónde se almacenará el correo en el repositorio tras enviarse.

Ejemplo:

package com.openkm;
import java.io.FileInputStream;
import java.io.InputStream;
import org.apache.commons.io.IOUtils;
import com.openkm.sdk4j.OKMWebservices;
import com.openkm.sdk4j.OKMWebservicesFactory;
import com.openkm.sdk4j.bean.Mail;
public class Test {
public static void main(String[] args) {
String host = "http://localhost:8080/OpenKM";
String username = "okmAdmin";
String password = "admin";
OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try {
InputStream is = new FileInputStream("/home/files/test.msg");
Mail mail = ws.importMsg("d88cff0d-903a-4c5a-82ea-8e6dbd100d65", is);
System.out.println(mail);
IOUtils.closeQuietly(is);
} catch (Exception e) {
e.printStackTrace();
}
}
}