Mail samples
Basics
Section titled “Basics”On most methods, you’ll see the parameter named “mailId”. The value of this parameter can be a valid mail UUID.
Suggested code sample
Section titled “Suggested code sample”First, you must create the webservice object:
OKMWebservices ws = OKMWebservicesFactory.newInstance(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 mailId) | Returns the mail properties. |
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;
namespace OKMRest{public class Program{static void Main(string[] args){String host = "http://localhost:8080/openkm";String username = "okmAdmin";String password = "admin";OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try{ws.login(user, password);System.Console.WriteLine(ws.mail.getMailProperties("f0064cf3-4776-44c2-868a-f08697a6957e").toString());}catch (Exception e){System.Console.WriteLine(e.ToString());}}}}deleteMail
Section titled “deleteMail”Description:
| Method | Return values | Description |
|---|---|---|
| deleteMail(String mailId) | void | Deletes a mail. |
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;
namespace OKMRest{public class Program{static void Main(string[] args){String host = "http://localhost:8080/openkm";String username = "okmAdmin";String password = "admin";OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try{ws.login(user, password);ws.mail.deleteMail("50b7a5b9-89d2-430e-bbc9-6a6e01662a71");}catch (Exception e){System.Console.WriteLine(e.ToString());}}}}purgeMail
Section titled “purgeMail”Description:
| Method | Return values | Description |
|---|---|---|
| purgeMail(String mailId) | void | Folder is definitely removed from repository. |
Usually, you will purge mails into /okm:trash/userId - the personal trash user locations - but is possible to directly purge any mail from the whole repository.
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;
namespace OKMRest{public class Program{static void Main(string[] args){String host = "http://localhost:8080/openkm";String username = "okmAdmin";String password = "admin";OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try{ws.login(user, password);ws.mail.purgeMail("50b7a5b9-89d2-430e-bbc9-6a6e01662a71");}catch (Exception e){System.Console.WriteLine(e.ToString());}}}}renameMail
Section titled “renameMail”Description:
| Method | Return values | Description |
|---|---|---|
| renameMail(String mailId, String newName) | Renames a mail. |
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;
namespace OKMRest{public class Program{static void Main(string[] args){String host = "http://localhost:8080/openkm";String username = "okmAdmin";String password = "admin";OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try{ws.login(user, password);ws.mail.renameMail("50b7a5b9-89d2-430e-bbc9-6a6e01662a71", "new name");}catch (Exception e){System.Console.WriteLine(e.ToString());}}}}moveMail
Section titled “moveMail”Description:
| Method | Return values | Description |
|---|---|---|
| moveMail(String mailId, String dstId) | void | Moves a mail into a folder or record. |
The values of the dstId parameter should be a folder or record UUID.
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;
namespace OKMRest{public class Program{static void Main(string[] args){String host = "http://localhost:8080/openkm";String username = "okmAdmin";String password = "admin";OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try{ws.login(user, password);ws.mail.moveMail("50b7a5b9-89d2-430e-bbc9-6a6e01662a71", "055e4384-7c70-4456-b32b-f5a55a79861f");}catch (Exception e){System.Console.WriteLine(e.ToString());}}}}copyMail
Section titled “copyMail”Description:
| Method | Return values | Description |
|---|---|---|
| public void copyMail(String mailId, String dstId, String newName) | 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:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;
namespace OKMRest{public class Program{static void Main(string[] args){String host = "http://localhost:8080/openkm";String username = "okmAdmin";String password = "admin";OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try{ws.login(user, password);ws.mail.copyMail("50b7a5b9-89d2-430e-bbc9-6a6e01662a71", "055e4384-7c70-4456-b32b-f5a55a79861f", "new_name");}catch (Exception e){System.Console.WriteLine(e.ToString());}}}}extendedMailCopy
Section titled “extendedMailCopy”Description:
| Method | Return values | Description |
|---|---|---|
| extendedMailCopy(String mailId, String dstId, bool categories, bool keywords, bool propertyGroups, bool notes, bool wiki, bool security, String newName) |
Copies mail with associated data into a folder or record. |
The values of the dstId parameter should be a folder or record UUID.
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;
namespace OKMRest{public class Program{static void Main(string[] args){String host = "http://localhost:8080/openkm";String username = "okmAdmin";String password = "admin";OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try{ws.login(user, password);ws.mail.extendedMailCopy("fe51797c-be0b-4076-8f4b-b4fffe8fd2bc", "055e4384-7c70-4456-b32b-f5a55a79861f", true, true, true, true, true, true, null);}catch (Exception e){System.Console.WriteLine(e.ToString());}}}}getMailChildren
Section titled “getMailChildren”Description:
| Method | Return values | Description |
|---|---|---|
| getMailChildren(String fldId) | List |
Returns a list of all mails which their parent is fldId. |
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.bean;
namespace OKMRest{public class Program{static void Main(string[] args){String host = "http://localhost:8080/openkm";String username = "okmAdmin";String password = "admin";OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try{ws.login(user, password);foreach (Mail mail in ws.mail.getMailChildren("055e4384-7c70-4456-b32b-f5a55a79861f")){System.Console.WriteLine(mail);}}catch (Exception e){System.Console.WriteLine(e.ToString());}}}}isValidMail
Section titled “isValidMail”Description:
| Method | Return values | Description |
|---|---|---|
| isValidMail(String mailId) | Boolean | Returns a boolean that indicates if the node is a mail or not. |
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.bean;
namespace OKMRest{public class Program{static void Main(string[] args){String host = "http://localhost:8080/openkm";String username = "okmAdmin";String password = "admin";OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try{ws.login(user, password);// Return truews.mail.isValidMail("50b7a5b9-89d2-430e-bbc9-6a6e01662a71");}catch (Exception e){System.Console.WriteLine(e.ToString());}}}}getMailPath
Section titled “getMailPath”Description:
| Method | Return values | Description |
|---|---|---|
| getMailPath(String mailId) | String | Converts a mail UUID to folder path. |
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;
namespace OKMRest{public class Program{static void Main(string[] args){String host = "http://localhost:8080/openkm";String username = "okmAdmin";String password = "admin";OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try{ws.login(user, password);System.Console.WriteLine(ws.mail.getMailPath("50b7a5b9-89d2-430e-bbc9-6a6e01662a71"));}catch (Exception e){System.Console.WriteLine(e.ToString());}}}}createAttachment
Section titled “createAttachment”Description:
| Method | Return values | Description |
|---|---|---|
| createAttachment(String mailId, String docName, InputStream is) | Document | Stores in the mail an attachment. |
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.bean;using System.IO;
namespace OKMRest{public class Program{static void Main(string[] args){String host = "http://localhost:8080/openkm";String username = "okmAdmin";String password = "admin";OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try{ws.login(user, password);FileStream fs = new FileStream("E:\\logo.png", FileMode.Open);ws.mail.createAttachment("50b7a5b9-89d2-430e-bbc9-6a6e01662a71", "log.png", fs);fs.Dispose();}catch (Exception e){System.Console.WriteLine(e.ToString());}}}}deleteAttachment
Section titled “deleteAttachment”Description:
| Method | Return values | Description |
|---|---|---|
| deleteAttachment(String mailId, String docId) | void | Deletes a mail attachment. |
The value of the parameter docId parameter can be a valid document UUID or path.
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;
namespace OKMRest{public class Program{static void Main(string[] args){String host = "http://localhost:8080/openkm";String username = "okmAdmin";String password = "admin";OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try{ws.login(user, password); ws.mail.deleteAttachment("50b7a5b9-89d2-430e-bbc9-6a6e01662a71", "e339f14b-4d3a-489c-91d3-05e4575709d2");}catch (Exception e){System.Console.WriteLine(e.ToString());}}}}getAttachments
Section titled “getAttachments”Description:
| Method | Return values | Description |
|---|---|---|
| getAttachments(String mailId) | List |
Retrieves a list of all documents attachment of a mail. |
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.bean;
namespace OKMRest{public class Program{static void Main(string[] args){String host = "http://localhost:8080/openkm";String username = "okmAdmin";String password = "admin";OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try{ws.login(user, password);foreach (Document doc in ws.mail.getAttachments("50b7a5b9-89d2-430e-bbc9-6a6e01662a71")){System.Console.WriteLine(doc);}}catch (Exception e){System.Console.WriteLine(e.ToString());}}}}sendMailWithAttachments
Section titled “sendMailWithAttachments”Description:
| Method | Return values | Description |
|---|---|---|
| sendMailWithAttachments(List List |
Sends a mail message with an attachement. |
The values of the dstId parameter should be a folder or record UUID or path. The dstId parameter indicates where the mail will be stored into the repository after be sent.
Other parameters:
- to are a list of mail accounts destination.
- subject is the mail subject.
- cc, bcc 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:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;
namespace OKMRest{public class Program{static void Main(string[] args){String host = "http://localhost:8080/openkm";String username = "okmAdmin";String password = "admin";OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try{ws.login(user, password);List<String> to = new List<String>();to.Add("destination@mail.com");List<String> cc = new List<String>();List<String> bcc = new List<String>();List<String> docsId = new List<String>();List<String> replyTo= new List<String>();docsId.Add("7aa523e0-06cf-4733-b8c8-cc74d8b2716d");docsId.Add("f123a950-0329-4d62-8328-0ff500fd42db");ws.mail.sendMailWithAttachments(to, cc, bcc, replyTo, "some subject", "This mail its a test.", docsId, "055e4384-7c70-4456-b32b-f5a55a79861f");}catch (Exception e){System.Console.WriteLine(e.ToString());}}}}sendMailWithAttachments
Section titled “sendMailWithAttachments”Description:
| Method | Return values | Description |
|---|---|---|
| sendMailWithAttachments(String from, List String body, List |
Sends a mail message with an attachement. |
The values of the dstId parameter should be a folder or record UUID or path. The dstId parameter indicates where the mail will be stored into the repository after be sent.
Other parameters:
- to are a list of mail accounts destination.
- subject is the mail subject.
- cc, bcc 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:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;
namespace OKMRest{public class Program{static void Main(string[] args){String host = "http://localhost:8080/openkm";String username = "okmAdmin";String password = "admin";OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try{ws.login(user, password);string from = "test@none.com";List<String> to = new List<String>();to.Add("destination@mail.com");List<String> cc = new List<String>();List<String> bcc = new List<String>();List<String> docsId = new List<String>();List<String> replyTo= new List<String>();docsId.Add("7aa523e0-06cf-4733-b8c8-cc74d8b2716d");docsId.Add("f123a950-0329-4d62-8328-0ff500fd42db");ws.mail.sendMailWithAttachments(from, to, cc, bcc, replyTo, "some subject", "This mail its a test.", docsId, "055e4384-7c70-4456-b32b-f5a55a79861f");}catch (Exception e){System.Console.WriteLine(e.ToString());}}}}importEml
Section titled “importEml”Description:
| Method | Return values | Description |
|---|---|---|
| importEml(String dstId, String title, FileStream fs) | Import a mail in EML format. |
The values of the dstId parameter should be a folder or record UUID or path. The dstId parameter indicates where the mail will be stored in the repository after is sent.
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.bean;using System.IO;
namespace OKMRest{public class Program{static void Main(string[] args){String host = "http://localhost:8080/openkm";String username = "okmAdmin";String password = "admin";OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try{ws.login(user, password);FileStream filestream = new FileStream("C:\\Documents\\test.eml", FileMode.Open);Mail mail = ws.mail.importEml("f123a950-0329-4d62-8328-0ff500fd42db", "Test", filestream);System.Console.WriteLine(mail);filestream.Close();}catch (Exception e){System.Console.WriteLine(e.ToString());}}}}importMsg
Section titled “importMsg”Description:
| Method | Return values | Description |
|---|---|---|
| importMsg(String dstId, String title, FileStream fs) | Import a mail in MSG format. |
The values of the dstId parameter should be a folder or record UUID or path. The dstId parameter indicates where the mail will be stored in the repository after is sent.
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.bean;using System.IO;
namespace OKMRest{public class Program{static void Main(string[] args){String host = "http://localhost:8080/openkm";String username = "okmAdmin";String password = "admin";OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try{ws.login(user, password);FileStream filestream = new FileStream("C:\\Documents\\test.msg", FileMode.Open);Mail mail = ws.mail.importMsg("f123a950-0329-4d62-8328-0ff500fd42db", "Test", filestream);System.Console.WriteLine(mail);filestream.Close();}catch (Exception e){System.Console.WriteLine(e.ToString());}}}}setMailTitle
Section titled “setMailTitle”Description:
| Method | Return values | Description |
|---|---|---|
| setMailTitle(String mailId, String title) | Sets the mail title. |
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;
namespace OKMRest{public class Program{static void Main(string[] args){String host = "http://localhost:8080/openkm";String username = "okmAdmin";String password = "admin";OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try{ws.login(user, password);ws.mail.setMailTitle("68ed7a93-005c-4ec6-ac01-bb151573c775", "new title");}catch (Exception e){System.Console.WriteLine(e.ToString());}}}}sendMail
Section titled “sendMail”Description:
| Method | Return values | Description |
|---|---|---|
| sendMail(List |
Void | Sends a mail. |
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;
namespace OKMRest{public class Program{static void Main(string[] args){String host = "http://localhost:8080/openkm";String username = "okmAdmin";String password = "admin";OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try{ws.login(user, password);List<String> to = new List<string>();to.Add("some@mail.com");ws.mail.sendMail(to, "Testing sending mail from OpenKM", "Test message body.");}catch (Exception e){System.Console.WriteLine(e.ToString());}}}}sendMail
Section titled “sendMail”Description:
| Method | Return values | Description |
|---|---|---|
| sendMail(String from, List |
Void | Sends a mail. |
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;
namespace OKMRest{public class Program{static void Main(string[] args){String host = "http://localhost:8080/openkm";String username = "okmAdmin";String password = "admin";OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try{ws.login(user, password);string from = "test@mome.com"List<String> to = new List<string>();to.Add("some@mail.com");ws.mail.sendMail(from, to, "Testing sending mail from OpenKM", "Test message body.");}catch (Exception e){System.Console.WriteLine(e.ToString());}}}}setMailNodeClass
Section titled “setMailNodeClass”Description:
| Method | Return values | Description |
|---|---|---|
| setMailNodeClass(String mailId, long ncId) | void | Sets the mail node class. |
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;
namespace OKMRest{public class Program{static void Main(string[] args){String host = "http://localhost:8080/openkm";String username = "okmAdmin";String password = "admin";OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try{ws.login(user, password);ws.mail.setMailNodeClass("68ed7a93-005c-4ec6-ac01-bb151573c775", ncId);}catch (Exception e){System.Console.WriteLine(e.ToString());}}}}setMailDescription
Section titled “setMailDescription”Description:
| Method | Return values | Description |
|---|---|---|
| setMailDescription(String mailId, String description) | void | Sets the mail title. |
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;
namespace OKMRest{public class Program{static void Main(string[] args){String host = "http://localhost:8080/openkm";String username = "okmAdmin";String password = "admin";OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try{ws.login(user, password);ws.mail.setMailDescription("68ed7a93-005c-4ec6-ac01-bb151573c775", "Any description");}catch (Exception e){System.Console.WriteLine(e.ToString());}}}}getMailContent
Section titled “getMailContent”Description:
| Method | Return values | Description |
|---|---|---|
| getMailContent(String mailId) | Stream | Sets the mail title. |
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;
namespace OKMRest{public class Program{static void Main(string[] args){String host = "http://localhost:8080/openkm";String username = "okmAdmin";String password = "admin";OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try{ws.login(user, password); Stream s = ws.mail.getMailContent("68ed7a93-005c-4ec6-ac01-bb151573c775");FileStream mailFile = new FileStream("C:\\mailtest.msg", FileMode.OpenOrCreate);s.CopyTo(mailFile);s.Close();mailFile.Close();}catch (Exception e){System.Console.WriteLine(e.ToString());}}}}getMailThumbnail
Section titled “getMailThumbnail”Description:
| Method | Return values | Description |
|---|---|---|
| getMailThumbnail(String mailId, String type) | Stream | 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:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;
namespace OKMRest{public class Program{static void Main(string[] args){String host = "http://localhost:8080/openkm";String username = "okmAdmin";String password = "admin";OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try{ws.login(user, password);Stream s = ws.mail.getMailThumbnail("68ed7a93-005c-4ec6-ac01-bb151573c775", ThumbnailType.THUMBNAIL_PROPERTIES);}catch (Exception e){System.Console.WriteLine(e.ToString());}}}}setMailDispositionStage
Section titled “setMailDispositionStage”Description:
| Method | Return values | Description |
|---|---|---|
| setMailDispositionStage(String uuid, long stage) | void | Sets the mail disposition stage. |
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;
namespace OKMRest{public class Program{static void Main(string[] args){String host = "http://localhost:8080/openkm";String username = "okmAdmin";String password = "admin";OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try{ws.login(user, password);long stage = 1;ws.mail.setMailDispositionStage("f0064cf3-4776-44c2-868a-f08697a6957e", stage);}catch (Exception e){System.Console.WriteLine(e.ToString());}}}}createWizardMail
Section titled “createWizardMail”Description:
| Method | Return values | Description |
|---|---|---|
| createWizardMail(String uuid, String title, FileStream fileStream, String type) | WizardNode | Create a mail with wizard. |
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.bean;
namespace OKMRest{public class Program{static void Main(string[] args){String host = "http://localhost:8080/openkm";String username = "okmAdmin";String password = "admin";OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try{ws.login(user, password); Folder fld = ws.createFolder("f123a950-0329-4d62-8328-0ff500fd42db", "Test");FileStream filestream = new FileStream("C:\\testing.msg", FileMode.Open, FileAccess.Read);WizardNode wn = ws.mail.createWizardMail(fld.uuid, "Any title", filestream, Mail.ORIGIN_MSG);filestream.Close();System.Console.WriteLine(wn.toString());}catch (Exception e){System.Console.WriteLine(e.ToString());}}}}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:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.bean;
namespace OKMRest{public class Program{static void Main(string[] args){String host = "http://localhost:8080/openkm";String username = "okmAdmin";String password = "admin";OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try{ws.login(user, password); MailFilterQuery filter = new MailFilterQuery();filter.subject = "";filter.attachments = AttachmentEnum.ALL;String orderColumn = "subject";NodeList nodes = ws.mail.getMailsPaginated(0, 10, filter, orderColumn, true);
foreach (Node node in nodes){System.Console.WriteLine(node.toString());}}catch (Exception e){System.Console.WriteLine(e.ToString());}}}}getMailAccounts
Section titled “getMailAccounts”Description:
| Method | Return values | Description |
|---|---|---|
| getMailAccounts() | List |
Retrieves a list of user email accounts. |
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.bean;
namespace OKMRest{public class Program{static void Main(string[] args){String host = "http://localhost:8080/openkm";String username = "okmAdmin";String password = "admin";OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try{ws.login(user, password);foreach (MailAccount mail in ws.mail.getMailAccounts()){System.Console.WriteLine(mail.toString());}}catch (Exception e){System.Console.WriteLine(e.ToString());}}}}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:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.bean;
namespace OKMRest{public class Program{static void Main(string[] args){String host = "http://localhost:8080/openkm";String username = "okmAdmin";String password = "admin";OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try{ws.login(user, password);long accoundId = 1;long start = 1;MailServerMessages msm = ws.mail.getMailMessages(accoundId, start);System.Console.WriteLine(msm.toString());}catch (Exception e){System.Console.WriteLine(e.ToString());}}}}addMailAccount
Section titled “addMailAccount”Description:
| Method | Return values | Description |
|---|---|---|
| addMailAccount(MailAccount mailAccount) | void | Add an email account. |
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.bean;
namespace OKMRest{public class Program{static void Main(string[] args){String host = "http://localhost:8080/openkm";String username = "okmAdmin";String password = "admin";OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try{ws.login(user, password);MailAccount mailAcount = new MailAccount();mailAcount.mailProtocol = MailAccount.PROTOCOL_IMAPS;mailAcount.mailUser = "test@none.com";mailAcount.mailPassword = "123456";mailAcount.mailHost = "imap.gmail.com";mailAcount.mailFolder = "OpenKM";mailAcount.active = true;mailAcount.recursive = true;ws.mail.addMailAccount(mailAcount);}catch (Exception e){System.Console.WriteLine(e.ToString());}}}}updateMailAccount
Section titled “updateMailAccount”Description:
| Method | Return values | Description |
|---|---|---|
| updateMailAccount(MailAccount mailAccount) | void | Update the main configuration data of an email account. |
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.bean;
namespace OKMRest{public class Program{static void Main(string[] args){String host = "http://localhost:8080/openkm";String username = "okmAdmin";String password = "admin";OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try{ws.login(user, password);MailAccount mailAcount = new MailAccount();mailAcount.id = 1;// Valid mail account id;mailAcount.mailProtocol = MailAccount.PROTOCOL_IMAPS;mailAcount.mailUser = "test@none.com";mailAcount.mailPassword = "123456";mailAcount.mailHost = "imap.gmail.com";mailAcount.mailFolder = "OpenKM";mailAcount.active = false;mailAcount.mailMarkDeleted = false;mailAcount.recursive = false;ws.mail.updateMailAccount(mailAcount);}catch (Exception e){System.Console.WriteLine(e.ToString());}}}}testMailAccount
Section titled “testMailAccount”Description:
| Method | Return values | Description |
|---|---|---|
| testMailAccount(MailAccount mailAccount) | void | Verify connectivity of an email account. |
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.bean;
namespace OKMRest{public class Program{static void Main(string[] args){String host = "http://localhost:8080/openkm";String username = "okmAdmin";String password = "admin";OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try{ws.login(user, password);MailAccount mailAcount = new MailAccount();mailAcount.mailProtocol = MailAccount.PROTOCOL_IMAPS;mailAcount.mailUser = "test@none.com";mailAcount.mailPassword = "123456";mailAcount.mailHost = "imap.gmail.com";mailAcount.mailFolder = "OpenKM";mailAcount.active = true;mailAcount.recursive = true;
// Test mail accountws.mail.testMailAccount(mailAcount);}catch (Exception e){System.Console.WriteLine(e.ToString());}}}}deleteMailAccount
Section titled “deleteMailAccount”Description:
| Method | Return values | Description |
|---|---|---|
| deleteMailAccount(long mailAccountId) | void | Delete an email account. |
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.bean;
namespace OKMRest{public class Program{static void Main(string[] args){String host = "http://localhost:8080/openkm";String username = "okmAdmin";String password = "admin";OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try{ws.login(user, password);long mailId = 1; //Valid mail idws.mail.deleteMailAccount(mailId);}catch (Exception e){System.Console.WriteLine(e.ToString());}}}}importMailMessages
Section titled “importMailMessages”Description:
| Method | Return values | Description |
|---|---|---|
| importMailMessages(long mailAccountId, List |
void | Import messages of aa specific email account. |
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.bean;
namespace OKMRest{public class Program{static void Main(string[] args){String host = "http://localhost:8080/openkm";String username = "okmAdmin";String password = "admin";OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try{ws.login(user, password);List<long> messageIds = new List<long>();messageIds.Add(1);long mailAccountId = 1; // Valid mail idws.mail.importMailMessages(mailAccountId, messageIds);}catch (Exception e){System.Console.WriteLine(e.ToString());}}}}createMailFilter
Section titled “createMailFilter”Description:
| Method | Return values | Description |
|---|---|---|
| createMailFilter(long mailAccountId, MailFilter mailFilter) | void | Add a filter of an email account. |
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.bean;
namespace OKMRest{public class Program{static void Main(string[] args){String host = "http://localhost:8080/openkm";String username = "okmAdmin";String password = "admin";OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try{ws.login(user, password);Folder fld = ws.createFolder("f123a950-0329-4d62-8328-0ff500fd42db", "FilterFolder");// Valid mail account idlong mailAccountId = 1;MailFilter filter = new MailFilter();filter.order = 0;filter.grouping = false;filter.exclusive = true;filter.active = false;filter.node = fld.uuid;ws.mail.createMailFilter(mailAccountId, filter);}catch (Exception e){System.Console.WriteLine(e.ToString());}}}}updateMailFilter
Section titled “updateMailFilter”Description:
| Method | Return values | Description |
|---|---|---|
| updateMailFilter(MailFilter mailFilter) | void | Update the filter of an email account. |
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.bean;
namespace OKMRest{public class Program{static void Main(string[] args){String host = "http://localhost:8080/openkm";String username = "okmAdmin";String password = "admin";OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try{ws.login(user, password); MailFilter filter = new MailFilter();filter.id = 1; // Valid filter idfilter.grouping = true;filter.exclusive = false;filter.active = true;ws.mail.updateMailFilter(filter);}catch (Exception e){System.Console.WriteLine(e.ToString());}}}}deleteMailFilter
Section titled “deleteMailFilter”Description:
| Method | Return values | Description |
|---|---|---|
| deleteMailFilter(long mailFilterId) | void | Delete a filter of an email account. |
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.bean;
namespace OKMRest{public class Program{static void Main(string[] args){String host = "http://localhost:8080/openkm";String username = "okmAdmin";String password = "admin";OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try{ws.login(user, password);long filterId = 1; // Valid filter idws.mail.deleteMailFilter(filterId);}catch (Exception e){System.Console.WriteLine(e.ToString());}}}}createMailRule
Section titled “createMailRule”Description:
| Method | Return values | Description |
|---|---|---|
| createMailRule(long filterId, MailFilterRule rule) | void | Create a rule of an email filter. |
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.bean;
namespace OKMRest{public class Program{static void Main(string[] args){String host = "http://localhost:8080/openkm";String username = "okmAdmin";String password = "admin";OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try{ws.login(user, password);MailFilterRule rule = new MailFilterRule();rule.operation = MailFilterRule.OPERATION_CONTAINS;rule.value = "test";rule.field = MailFilterRule.FIELD_FROM;rule.active = false;long filterId = 1;// Valid filter idws.mail.createMailRule(filterId, rule);}catch (Exception e){System.Console.WriteLine(e.ToString());}}}}updateMailRule
Section titled “updateMailRule”Description:
| Method | Return values | Description |
|---|---|---|
| updateMailRule(MailFilterRule rule) | void | Update a rule of an email coount. |
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.bean;
namespace OKMRest{public class Program{static void Main(string[] args){String host = "http://localhost:8080/openkm";String username = "okmAdmin";String password = "admin";OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try{ws.login(user, password);List<MailFilterRule> rules = ws.getMailFilterRules(filter.id);if (rules != null && rules.Count > 0){// Update ruleMailFilterRule rule = new MailFilterRule();rule.id = rules[0].id;rule.operation = MailFilterRule.OPERATION_EQUALS;rule.value = "Any";rule.field = MailFilterRule.FIELD_SUBJECT;rule.active = true;ws.mail.updateMailRule(rule);}}catch (Exception e){System.Console.WriteLine(e.ToString());}}}}deleteMailRule
Section titled “deleteMailRule”Description:
| Method | Return values | Description |
|---|---|---|
| deleteMailRule(long ruleId) | void | Delete a rule of an email account. |
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.bean;
namespace OKMRest{public class Program{static void Main(string[] args){String host = "http://localhost:8080/openkm";String username = "okmAdmin";String password = "admin";OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try{ws.login(user, password);long ruleId = 1; // Valid rule idws.mail.deleteMailRule(ruleId);}catch (Exception e){System.Console.WriteLine(e.ToString());}}}}getMailFilterRules
Section titled “getMailFilterRules”Description:
| Method | Return values | Description |
|---|---|---|
| getMailFilterRules(long filterId) | List |
Retrieve a list of all the associated rules of type filter. |
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.bean;
namespace OKMRest{public class Program{static void Main(string[] args){String host = "http://localhost:8080/openkm";String username = "okmAdmin";String password = "admin";OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try{ws.login(user, password); long filterId = 1; // Valid filter idforeach (MailFilterRule mfrule in ws.mail.getMailFilterRules(filterId)){System.Console.WriteLine(mfrule.toString());}}catch (Exception e){System.Console.WriteLine(e.ToString());}}}}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:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.bean;
namespace OKMRest{public class Program{static void Main(string[] args){String host = "http://localhost:8080/openkm";String username = "okmAdmin";String password = "admin";OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try{ws.login(user, password); string mailUuid = "f123a950-0329-4d62-8328-0ff500fd42db";List<string> users = new List<string>();users.Add("userTest");List<string> roles = new List<string>();roles.Add("ROLE_USER");List<string> mails = new List<string>();mails.Add("test@none.com");ws.mail.forwardEmail(mailUuid, users, roles, mails, "Any message");}catch (Exception e){System.Console.WriteLine(e.ToString());}}}}getPdf
Section titled “getPdf”Description:
| Method | Return values | Description |
|---|---|---|
| getPdf(String uuid) | Stream | Returns a PDF of the email. |
Example:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.bean;using com.openkm.sdk4csharp.impl;
namespace OKMRest{public class Program{static void Main(string[] args){String host = "http://localhost:8080/openkm";String username = "okmAdmin";String password = "admin";OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try{ws.login(user, password);Mail mail = ws.mail.getMailProperties("4b88cbe9-e73d-45fc-bac0-35e0d6e59e43");Stream stream = ws.mail.getPdf(mail.uuid);FileStream mailFile = new FileStream("D:\\" + mail.subject + ".pdf", FileMode.OpenOrCreate, FileAccess.ReadWrite);stream.CopyTo(mailFile);stream.Close();mailFile.Close();}catch (Exception e){System.Console.WriteLine(e.ToString());}}}}saveMailAsPdf
Section titled “saveMailAsPdf”Description:
| Method | Return values | Description |
|---|---|---|
| saveMailAsPdf(String uuid, String newName, bool propertyGroups, bool 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:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.bean;using com.openkm.sdk4csharp.impl;
namespace OKMRest{public class Program{static void Main(string[] args){String host = "http://localhost:8080/openkm";String username = "okmAdmin";String password = "admin";OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try{ws.login(user, password);Mail mail = ws.mail.getMailProperties("4b88cbe9-e73d-45fc-bac0-35e0d6e59e43");Document docPdf = ws.mail.saveMailAsPdf(mail.uuid, mail.subject + ".pdf", true, true);System.Console.WriteLine("Document pdf: " + docPdf.path);}catch (Exception e){System.Console.WriteLine(e.ToString());}}}}