Mail samples
Esta página aún no está disponible en tu idioma.
Basics
Section titled “Basics”Suggested code sample
Section titled “Suggested code sample”First, you must create the webservice object:
OKMWebservices ws = OKMWebservicesFactory.getInstance(host);Then should login using the method “login”. You can access the “login” method from webservice object “ws” as is shown below:
ws.login(user, password);At this point you can use all the Mail methods from “mail” class as is shown below:
ws.mail.getMailProperties("05d9b8e3-f9c1-4ace-9007-afd775dbbced")Methods
Section titled “Methods”getMailProperties
Section titled “getMailProperties”Description:
| Method | Return values | Description |
|---|---|---|
| getMailProperties(String uuid) | Returns the mail properties. |
Example:
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.getMailProperties("05d9b8e3-f9c1-4ace-9007-afd775dbbced")); } catch (Exception e) { e.printStackTrace(); } }}deleteMail
Section titled “deleteMail”Description:
| Method | Return values | Description |
|---|---|---|
| deleteMail(String uuid) | void | Deletes a mail. |
Example:
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.deleteMail("05d9b8e3-f9c1-4ace-9007-afd775dbbced"); } catch (Exception e) { e.printStackTrace(); } }}purgeMail
Section titled “purgeMail”Description:
| Method | Return values | Description |
|---|---|---|
| purgeMail(String uuid) | void | Mail is definitely removed from repository. |
Usually, you will purge mails into /okm:trash/userId - the personal trash user locations - but it is possible to directly purge any mail from the whole repository.
Example:
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.purgeMail("05d9b8e3-f9c1-4ace-9007-afd775dbbced"); } catch (Exception e) { e.printStackTrace(); } }}renameMail
Section titled “renameMail”Description:
| Method | Return values | Description |
|---|---|---|
| renameMail(String uuid, String newName) | void | Rename a mail. |
Example:
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.renameMail("e3831cc4-30f0-419a-8fbf-a3418472ada5", "new name"); } catch (Exception e) { e.printStackTrace(); } }}moveMail
Section titled “moveMail”Description:
| Method | Return values | Description |
|---|---|---|
| moveMail(String uuid, String dstId) | void | Move mail into a folder or record. |
The values of the dstId parameter should be a folder or record UUID.
Example:
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.moveMail("e3831cc4-30f0-419a-8fbf-a3418472ada5", "ada67d44-b081-4b23-bdc1-74181cafbc5d"); } catch (Exception e) { e.printStackTrace(); } }}copyMail
Section titled “copyMail”Description:
| Method | Return values | Description |
|---|---|---|
| public void copyMail(String uuid, String dstId, String newName) | void | Copies mail into a folder or record. |
The values of the dstId parameter should be a folder or record UUID.
When parameter newName value is null, mail will preserve the same name.
Example:
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.copyMail("e3831cc4-30f0-419a-8fbf-a3418472ada5", "ada67d44-b081-4b23-bdc1-74181cafbc5d", "new_name"); } catch (Exception e) { e.printStackTrace(); } }}extendedMailCopy
Section titled “extendedMailCopy”Description:
| Method | Return values | Description |
|---|---|---|
| extendedMailCopy(String uuid, String dstId, boolean categories, boolean keywords, boolean propertyGroups, boolean notes, boolena security, String newName) | Copy mail width with associated data into a folder or record. |
The values of the dstId parameter should be a folder or record UUID.
Example:
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.extendedMailCopy("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(); } }}getMailChildren
Section titled “getMailChildren”Description:
| Method | Return values | Description |
|---|---|---|
| getMailChildren(String uuid) | List |
Returns a list of all mails which their parent is fldId. |
Example:
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.getMailChildren("ada67d44-b081-4b23-bdc1-74181cafbc5d")) { System.out.println(mail); } } catch (Exception e) { e.printStackTrace(); } }}isValidMail
Section titled “isValidMail”Description:
| Method | Return values | Description |
|---|---|---|
| isValidMail(String uuid) | Boolean | Returns a boolean that indicates if the node is a mail or not. |
Example:
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); // Return false System.out.println(ws.mail.isValidMail("ada67d44-b081-4b23-bdc1-74181cafbc5d"));
// Return true System.out.println(ws.mail.isValidMail("e3831cc4-30f0-419a-8fbf-a3418472ada5")); } catch (Exception e) { e.printStackTrace(); } }}getMailPath
Section titled “getMailPath”Description:
| Method | Return values | Description |
|---|---|---|
| getMailPath(String uuid) | String | Converts mail UUID to mail path. |
Example:
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.getMailPath("e3831cc4-30f0-419a-8fbf-a3418472ada5")); } catch (Exception e) { e.printStackTrace(); } }}createAttachment
Section titled “createAttachment”Description:
| Method | Return values | Description |
|---|---|---|
| createAttachment(String uuid, String docName, InputStream is) | Document | Adds an attachement to the mail. |
Example:
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
Section titled “deleteAttachment”Description:
| Method | Return values | Description |
|---|---|---|
| deleteAttachment(String uuid, String docId) | void | Delete a mail attachment. |
The value of the parameter docId parameter can be a valid document UUID.
Example:
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
Section titled “getAttachments”Description:
| Method | Return values | Description |
|---|---|---|
| getAttachments(String uuid) | List |
Retrieves a list of all the attachment documents of the mails. |
Example:
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
Section titled “sendMailWithAttachments”Description:
| Method | Return values | Description |
|---|---|---|
| sendMailWithAttachments(List |
void | Send mail message with attachement. |
The values of the uuid parameter should be a folder or record UUID. The uuid parameter indicate where the mail will be stored in the repository after is sent.
Other parameters:
- to are a list of mail accounts destination.
- subject is the mail subject.
- cc, bcc, replyTo is a list of mail accounts destination ( optional )
- docsId is a list of valid document UUID already into OpenKM that will be sent as an attachment into mail ( optional ).
Example:
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
Section titled “sendMailWithAttachments”Description:
| Method | Return values | Description |
|---|---|---|
| sendMailWithAttachments(String from, List |
void | Send mail message with attachement. |
The values of the uuid parameter should be a folder or record UUID. The uuid parameter indicate where the mail will be stored in the repository after is sent.
Other parameters:
- from is optional and maybe set with empty value
- to are a list of mail accounts destination.
- subject is the mail subject.
- cc, bcc, replyTo is a list of mail accounts destination ( optional )
- docsId is a list of valid document UUID already into OpenKM that will be sent as an attachment into mail ( optional ).
Example:
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
Section titled “importEml”Description:
| Method | Return values | Description |
|---|---|---|
| importEml(String uuid, String title, InputStream is) | Import a mail in EML format. |
The values of the uuid parameter should be a folder or record UUID. The uuid parameter indicates where the mail will be stored in the repository after is imported.
Example:
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
Section titled “importMsg”Description:
| Method | Return values | Description |
|---|---|---|
| importMsg(String uuid, String title, InputStream is) | Import a mail in MSG format. |
The values of the uuid parameter should be a folder or record UUID. The uuid parameter indicates where the mail will be stored in the repository after is sent.
Example:
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(); } }}setMailTitle
Section titled “setMailTitle”Description:
| Method | Return values | Description |
|---|---|---|
| setMailTitle(String uuid, String title) | void | Sets the mail title. |
Example:
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.setMailTitle("9d5dd110-db99-4d72-8cf7-610b027a4822", "new title"); } catch (Exception e) { e.printStackTrace(); } }}sendMail
Section titled “sendMail”Description:
| Method | Return values | Description |
|---|---|---|
| sendMail(List |
void | Sends a mail. |
Example:
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
Section titled “sendMail”Description:
| Method | Return values | Description |
|---|---|---|
| sendMail(String from, List |
void | Sends a mail. |
Other parameters:
- from is optional and maybe set with empty value
Example:
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(); } }}setMailDispositionStage
Section titled “setMailDispositionStage”Description:
| Method | Return values | Description |
|---|---|---|
| setMailDispositionStage(String uuid, long stage) | void | Set the disposition stage |
Example:
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.setMailDispositionStage("7ce1b4a8-4ade-4dce-8d7d-4e99a6cd368b", stage); } catch (Exception e) { e.printStackTrace(); } }}setMailDescription
Section titled “setMailDescription”Description:
| Method | Return values | Description |
|---|---|---|
| setMailDescription(String uuid, String description) | void | Set the description. |
Example:
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.setMailDescription("b405a504-d8cb-4166-ac51-22f68acee8c5", "some description"); Mail mail = ws.mail.getMailProperties("b405a504-d8cb-4166-ac51-22f68acee8c5"); System.out.println("Description: " + mail.getDescription()); } catch (Exception e) { e.printStackTrace(); } }}getMailContent
Section titled “getMailContent”Description:
| Method | Return values | Description |
|---|---|---|
| getMailContent(String mailId) | InputStream | Retrieve mail content - binary data - of the current mail version. |
Example:
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.getMailContent("b405a504-d8cb-4166-ac51-22f68acee8c5"); IOUtils.copy(is, fos); IOUtils.closeQuietly(is); IOUtils.closeQuietly(fos); } catch (Exception e) { e.printStackTrace(); } }}createWizardMail
Section titled “createWizardMail”Description:
| Method | Return values | Description |
|---|---|---|
| createWizardMail(String uuid, String title, InputStream is, String type) | WizardNode | Create a new document with a wizard. |
The parameters uuid should be any valid folder or record UUID.
Available types:
- Mail.ORIGIN_MSG
- Mail.ORIGIN_EML
Example:
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.createWizardMail("4c195453-246b-4ce9-86ba-b84e68d1f284", "test title", is, Mail.ORIGIN_EML); System.out.print(wn); IOUtils.closeQuietly(is); } catch (Exception e) { e.printStackTrace(); } }}getMailThumbnail
Section titled “getMailThumbnail”Description:
| Method | Return values | Description |
|---|---|---|
| getMailThumbnail(String mailId, ThumbnailType type) | InputStream | Returns thumbnail image data. |
Available types:
- ThumbnailType.THUMBNAIL_PROPERTIES ( shown in properties view )
- ThumbnailType.THUMBNAIL_LIGHTBOX ( shown in light box )
- ThumbnailType.THUMBNAIL_SEARCH ( shown in search view )
Example:
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
Section titled “getMailsPaginated”Description:
| Method | Return values | Description |
|---|---|---|
| getMailsPaginated(String context, int offset, int limit, MailFilterQuery filter, String orderColumn, bool orderAsc) | NodeList | Returns a list of emails paginated results filtered by the values of the MailFilterQuery parameter. |
Example:
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.Node;import com.openkm.sdk4j.bean.NodeList;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"; NodeList nodes = ws.mail.getMailsPaginated("/okm:root", 0, 20, filter, orderColumn, true);
for (Node node : nodes.getNodes()) { System.out.println(node); } } catch (Exception e) { e.printStackTrace(); } }}getMailAccounts
Section titled “getMailAccounts”Description:
| Method | Return values | Description |
|---|---|---|
| getMailAccounts() | List |
Retrieves a list of user email accounts. |
Example:
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.getMailAccounts()) { System.out.println(mailAccount); } } catch (Exception e) { e.printStackTrace(); } }}getMailMessages
Section titled “getMailMessages”Description:
| Method | Return values | Description |
|---|---|---|
| getMailMessages(long accountId, long start) | MailServerMessages | Retrieves a list of messages in the email server for an email account. |
Example:
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(); } }}addMailAccount
Section titled “addMailAccount”Description:
| Method | Return values | Description |
|---|---|---|
| addMailAccount(MailAccount mailAccount) | void | Add an email account. |
Example:
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.addMailAccount(mailAcount); } catch (Exception e) { e.printStackTrace(); } }}updateMailAccount
Section titled “updateMailAccount”Description:
| Method | Return values | Description |
|---|---|---|
| updateMailAccount(MailAccount mailAccount) | void | Update the main configuration data of an email account. |
Example:
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.updateMailAccount(mailAcount); } catch (Exception e) { e.printStackTrace(); } }}testMailAccount
Section titled “testMailAccount”Description:
| Method | Return values | Description |
|---|---|---|
| testMailAccount(MailAccount mailAccount) | void | Check email account connection. |
Example:
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.testMailAccount(mailAcount); } catch (Exception e) { e.printStackTrace(); } }}deleteMailAccount
Section titled “deleteMailAccount”Description:
| Method | Return values | Description |
|---|---|---|
| deleteMailAccount(long mailAccountId) | void | Delete email account. |
Example:
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.deleteMailAccount(mailAccountId); } catch (Exception e) { e.printStackTrace(); } }}importMailMessages
Section titled “importMailMessages”Description:
| Method | Return values | Description |
|---|---|---|
| importMailMessages(long mailAccountId, List |
void | Import email account messages. |
Example:
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.getMailMessages(mailAccountId, start); for (ExternalMail mail : msg.getServerMails()) { messageIds.add(mail.getUid()); }
ws.mail.importMailMessages(mailAccountId, messageIds); } catch (Exception e) { e.printStackTrace(); } }}createMailFilter
Section titled “createMailFilter”Description:
| Method | Return values | Description |
|---|---|---|
| createMailFilter(long mailAccountId, MailFilter mailFilter) | void | Add email account filter. |
Example
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.createMailFilter(mailAccountId, filter); } catch (Exception e) { e.printStackTrace(); } }}updateMailFilter
Section titled “updateMailFilter”Description:
| Method | Return values | Description |
|---|---|---|
| updateMailFilter(MailFilter mailFilter) | void | Update email account filter. |
Example:
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.updateMailFilter(filter); } catch (Exception e) { e.printStackTrace(); } }}deleteMailFilter
Section titled “deleteMailFilter”Description:
| Method | Return values | Description |
|---|---|---|
| deleteMailFilter(long mailFilterId) | void | Delete email account filter. |
Example:
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.deleteMailFilter(filterId); } catch (Exception e) { e.printStackTrace(); } }}createMailRule
Section titled “createMailRule”Description:
| Method | Return values | Description |
|---|---|---|
| createMailRule(long filterId, MailFilterRule rule) | void | Create email filter rule. |
Example:
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.createMailRule(filterId, rule); } catch (Exception e) { e.printStackTrace(); } }}updateMailRule
Section titled “updateMailRule”Description:
| Method | Return values | Description |
|---|---|---|
| updateMailRule(MailFilterRule rule) | void | Update email coount rule. |
Example:
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.updateMailRule(rule); } catch (Exception e) { e.printStackTrace(); } }}deleteMailRule
Section titled “deleteMailRule”Description:
| Method | Return values | Description |
|---|---|---|
| deleteMailRule(long ruleId) | void | Delete a rule of an email account. |
Example:
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.deleteMailRule(ruleId); } catch (Exception e) { e.printStackTrace(); } }}getMailFilterRules
Section titled “getMailFilterRules”Description:
| Method | Return values | Description |
|---|---|---|
| getMailFilterRules(long filterId) | List |
Retrieve a list rules by filter. |
Example:
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.getMailFilterRules(filterId)) { System.out.println(mailFilterRule); } } catch (Exception e) { e.printStackTrace(); } }}forwardEmail
Section titled “forwardEmail”Description:
| Method | Return values | Description |
|---|---|---|
| forwardEmail(String uuid, List |
void | Forward a email to a list of users, roles or external emails. |
Example:
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(); } }}getPdf
Section titled “getPdf”Description:
| Method | Return values | Description |
|---|---|---|
| getPdf(String uuid) | InputStream | Returns a PDF of the email. |
Example:
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.getMailProperties("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(); } }}saveMailAsPdf
Section titled “saveMailAsPdf”Description:
| Method | Return values | Description |
|---|---|---|
| saveMailAsPdf(String uuid, String newName, boolean propertyGroups, boolean security) | Document | Save the mail as PDF in the OpenKM repository. |
The value of the uuid parameter should be a Mail UUID.
When the parameter newName value is null, the document will preserve the same name.
Example:
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.getMailProperties("7f6c5c0b-a66b-4782-9595-e14b402a18b0"); Document docPdf = ws.mail.saveMailAsPdf(mail.getUuid(), mail.getSubject() + ".pdf", true, true); System.out.println("Document pdf: " + docPdf.getPath()); } catch (Exception e) { e.printStackTrace(); } }}