Changes for page IMAP-Plugin
Change comment:
There is no comment for this version
Summary
-
Page properties (3 modified, 0 added, 0 removed)
Details
- Page properties
-
- Author
-
... ... @@ -1,1 +1,1 @@ 1 -XWiki. mko1 +XWiki.gru - Default language
-
... ... @@ -1,0 +1,1 @@ 1 +de - Content
-
... ... @@ -2,105 +2,180 @@ 2 2 3 3 {{content/}} 4 4 5 -The {{smallcaps}}Imap{{/smallcaps}} plug-in for {{formcycle/}} makesit possible todisplay datafromncomingformswithinane-mailprogram,tomanage them andtobe immediatelyinformed ofnewincomingdata. For this purpose,this pluginprovidesan {{smallcaps}}Imap{{/smallcaps}}and {{smallcaps}}Smtp{{/smallcaps}} server that canbeonnectedtobyany commone-mailprogram.5 +The {{smallcaps}}Imap{{/smallcaps}} plug-in for {{formcycle/}} lets you view the data submitted forms in your email client. This way you are notified of new submissions immediately. You can also move form records to different inboxes or delete them. This plugin is subject to additional charge. 6 6 7 - == Functionalities==7 +Technically speaking, this plugin provides an {{smallcaps}}Imap{{/smallcaps}} and {{smallcaps}}Smtp{{/smallcaps}} server to which most common email client can connect. 8 8 9 -; mmediate notification 10 -: Via the {{smallcaps}}}Imap{{/smallcaps}} interface the user is immediately informed about new or changed form entries. 9 +== Features == 10 + 11 +; Immediate notification 12 +: Immediately notifies users about newly submitted forms via the {{smallcaps}}Imap{{/smallcaps}} protocol 11 11 ; Configurable content 12 -: The content of the notifications as well as their subject, sender and recipient fields can be freely configured using corresponding templates. Since [[placeholders>>doc:Formcycle.UserInterface.Variables||target="_blank"]] can be used here, links for re-display directly within the mailbox can be created in addition to individual values or metadata of the form input. 13 -; Provision of files 14 -: Files can be uploaded in the form and during status processing, files are also sometimes generated. These files are automatically attached to the sent message. So these files are available directly in the e-mail program. 15 -; Mapping of the available mailbox structure 16 -: Since corresponding folders are created within the e-mail program to map the {{formcycle/}} mailboxes, the user only has access to form inboxes that he is allowed to have depending on the user group configuration. In addition, the folder //Inbox// is used as a collective mailbox to display all form entries accessible to the user. 14 +: The content of the notifications as well as the subject, sender and recipient can be configured freely using corresponding templates. You can also use [[variables>>doc:Formcycle.UserInterface.Variables||target="_blank"]] and insert links to the submitted form and values from the submitted form. 15 +: Users can upload files in the form, and backend users can also attach files in the inbox. These files are attached automatically to the email message, so that you can open them in your email client. Starting from version {{{version major="2" minor="1"/}}} it is alternatively also possible to define limits, starting from which files should only be listed in an attached text file. 16 +; Mapped inboxes 17 +: All inboxes to which you have access are created in your email client. In addition, the folder //Inbox// always points to the default inbox and contains all available form records. 17 17 ; Manage form entries 18 -: Inaddition totheactual display,therearealsooptionsformanaging formentries.Forexample, aformentryismovedtothecorresponding{{formcycle/}}mailboxwhenit ismoved toanotherfolder. Furthermore,thereadstatus is also synchronized.Thedeletion ofform entries is also possible bydeleting thecorrespondingmessageorby moving it to the trash,iftheuserhas the appropriate authorization.Ifthisauthorizationismissing, themessage reappearsin thee-mail program after a few seconds.19 +: Other than just viewing submitted forms, you can also perform several actions such as moving form records to different inboxes. When you have read an email, the form record in the {{formcycle/}} inbox is also marked as read; and when you delete an email by moving it to the trash, the form record is deleted as well. Please note that when you lack permission to do so, the deleted email will reappear in the inbox. 19 19 20 -The provided {{smallcaps}}Smtp{{ {/smallcaps}} server iscurrentlywithout functionality,so sentmessagesarecompletelydiscardedbyit.21 +The provided {{smallcaps}}Smtp{{/smallcaps}} server is a stub, and messages send to it are discarded and not processed any further. 21 21 22 22 == Installation == 23 23 24 - The installationofthe pluginisto beaccomplishedovertheintended administrationsurface ofplugins.All you have to doisimportthe corresponding{{smallcaps}}Jar{{/smallcaps}}file.Furthermore,thefirst installationcantake several minutes, depending on the number of formentries,duetoacompletepreparation of theatafor the {{smallcaps}}Imap{{/smallcaps}} server.25 +Install the plugin as a system plugin in the backend. Please note that the initial installation may take up to several minutes, depending on the number of form records, as they need to be prepared for the {{smallcaps}}Imap{{/smallcaps}} server. 25 25 26 26 {{info}} 27 -The {{smallcaps}}Imap{{/smallcaps}} plugin does not make any distinctionnwhichclient it is installed when logging in and delivering messages. It is always available to all users. Therefore it is recommended to install the plugin as system plugin. This also avoids possibleproblems with duplicate ports and allowscentralconfiguration.28 +The {{smallcaps}}Imap{{/smallcaps}} plugin does not consider the client scope where it is installed when logging in and delivering messages. It is always available to all users. Therefore it is recommended to install the plugin as a system plugin. This also avoids possible issues with duplicate ports and allows for the plugon to be configured centrally. 28 28 {{/info}} 29 29 30 -== Configuration of thePlugins ==31 +== Plugin configuration . It contains settings for the email server connection and lets you define how the emails should look like. == 31 31 32 -{{figure image="config_ de.png"}}33 -The configuration interface of the plugin. This is where settings for the connection to the mail server are made. Furthermore, it is defined how the sent e-mails should look like.33 +{{figure image="config_en.png"}} 34 +The configuration page of the plugin 34 34 {{/figure}} 35 35 36 36 After installing the plugin, the configuration parameters shown in the figure are available. The following configuration options are possible: 37 37 38 -=== Configuration of the e-mail serverervice===39 +=== Configuration of the mail servers === 39 39 40 40 {{id name="server_config"/}} 41 41 42 42 ; smtp.binding.address 43 -: Default value: //0.0.0.//. Specifies the {{smallcaps}}ip{{/smallcaps}} address of the {{{smallcaps}}Smtp~{{{/smallcaps}} server to use. The default value is //0.0.0.0//, which uses an automatically generated {{smallcaps}}ip{{/smallcaps}}. Changing this value is only necessary if multiple network adapters are in use or the automatic detection fails. 44 -; smtp.binding.port 45 -: Default value: //25//. Specifies the port of the {{smallcaps}}Smtp{{/smallcaps}} server to use. The default value should only be changed if this port is not available. 46 -; imap.binding.address 47 -: Default value: //0.0.0.0//. Specifies the IP address to use for the {{smallcaps}}Imap{{/smallcaps}} server. The default value is //0.0.0.0//, which also uses an automatically generated {{smallcaps}}ip{{/smallcaps}}. Changing this value is only necessary if multiple network adapters are in use or the automatic detection fails. 48 -: Default value: //143//. Specifies the port of the {{smallcaps}}Imap~{{{/smallcaps}} server to use. The default value should only be changed if this port is not available. 44 +: Default: //0.0.0.0//. Specifies the {{smallcaps}}ip{{/smallcaps}} address of the {{smallcaps}}Smtp{{/smallcaps}} server to use. The default value is //0.0.0.0//, which attempts to detect the {{smallcaps}}ip{{/smallcaps}} automatically. Changing this value is only necessary if multiple network adapters are in use or if the automatic detection fails. 45 +; smtp.binding.port 46 +: Default: //25//. Specifies the port of the {{smallcaps}}Smtp{{/smallcaps}} server to use. The default value should only be changed if the default port is not available. 47 +; imap.binding.address 48 +: Default: //0.0.0.0//. Specifies the {{smallcaps}}ip{{/smallcaps}} address to use for the {{smallcaps}}Imap{{/smallcaps}} server. The default value is //0.0.0.0//, which also uses an automatically detected {{smallcaps}}ip{{/smallcaps}}. Changing this value is only necessary if multiple network adapters are in use or the automatic detection fails. 49 +; imap.binding.port 50 +: Default: //143//. Specifies the port of the {{smallcaps}}Imap{{/smallcaps}} server to use. The default value should only be changed if the default port is not available. 51 +; imap.batch.size (starting from {{version major="2" minor="1"/}}) 52 +: Default: //50//. Specifies the number of messages to be delivered simultaneously. A lower value will reduces the memory usage but also the performance. 49 49 50 -=== Configuration of the e-mail message ===54 +=== Configuration of the mail messages === 51 51 52 -{{id name="message_files_config"/}} 53 -; mail.to.template 54 -: Default: //mail_to.txt//. Specifies the name of the file to be searched for in the client and form files and to be used as a template for the e-mail recipient. 55 -; mail.from.template 56 -: Default: //mail_from.txt//. Specifies the name of the file to be searched for in the client and form files and to be used as a template for the e-mail sender. 57 -; mail.subject.template 58 -: Default: //mail_subject.txt//. Specifies the name of the file to be searched for in the client and form files and to be used as a template for the e-mail subject. 59 -; mail.body.template 60 -: Default: //mail_body.txt//. Specifies the name of the file to be searched for in the client and form files and to be used as a template for the e-mail content. 56 +{{id name="message_files_config"/}} 61 61 62 -== Configuration of e-mail contents and fields == 58 +; mail.to.template 59 +: Default: //mail_to.txt//. Specifies the name of a client or form file to be used as a template for the email recipient. 60 +; mail.from.template 61 +: Default: //mail_from.txt//. Specifies the name of a client or form file to be used as a template for the email sender. 62 +; mail.subject.template 63 +: Default: //mail_subject.txt//. Specifies the name of a client or form file to be used as a template for the email subject. 64 +; mail.body.template 65 +: Default: //mail_body.txt//. Specifies the name of a client or form file to be used as a template for the email content. 66 +; mail.attachment.limit (starting from {{version major="2" minor="1"/}}) 67 +: Default: //10//. Maximum size of a file (in MB) above which it should not be attached, but listed in a text file (-1 = deactivated, 0 = lists all attachments). 68 +; mail.attachment.sum.limit (starting from {{version major="2" minor="1"/}}) 69 +: Default: //-1//. Maximum sum of all file sizes (in MB) above which they should not be attached but listed in a text file (-1 = deactivated, 0 = always list all attachments). 63 63 64 - Theconfiguration of thecontentsand fields of the actual message uses a template mechanism. This is based on the four files set in [[e-mail message configuration>>||anchor="message_files_config"]]. These are imported as a client file when the plugin is installed and are used when synchronizing the messages.To ensure a form-specific display, its possible to create identicallynamed files manually as form files and thus overlay the client files. In all files it is possible to use [[placeholders>>doc:Formcycle.UserInterface.Variables||target="_blank"]] so that form data sent here can be displayed. It is also possible to create a link to display the filled out form.71 +=== Configuration of the synchronization === 65 65 66 -; Content 67 -: Default value: //mail_body.txt//. Specifies the content of the e-mail message. Only here you have the possibility to use {{smallcaps}}Html{{/smallcaps}}. 68 -Example: {{code language="html"}} <html> <head></head> <body> <p><a href="[%$FORM_INBOX_LINK%]">Link</a> to form entry ([%$PROCESS_ID%]).</p> </body> </html> {{/code}} 69 -; Subject 70 -: Default value: //mail_subject.txt//. Specifies the subject of the message. 71 -Example: {{code language="none"}} ID: [%$RECORD_ID%] - [%$STATUS_NAME%] {{/code}} 72 -; Recipient 73 -: Default value: //mail_to.txt//. Specifies the recipient of the message. This is to be entered according to the pattern //name <user@example.com>// and has no effect on the actual receipt of the message. 74 -Example: {{code language="none"}} XIMA FORMCYCLE <no-reply@example.com> {{/code}} 75 -; Sender 76 -: Default value: //mail_from.txt//. Specifies the sender of the message. This must be entered using the pattern //Name <user@example.com>// and has no effect on the sending of the message. 77 -Example: {{code language="none"}} [%$PROJECT_NAME%] <[%$PROJECT_NAME%]@example.com> {{/code}} 73 +; sync.max.threads (starting from {{version major="2" minor="1"/}}) 74 +: Default: //4//. Number of threads with which the synchronization of messages should be performed. 75 +; sync.page.size (starting from {{version major="2" minor="1"/}}) 76 +: Default: //50//. Number of messages with which a thread should perform the synchronization. 78 78 79 -== Configuration of the e-mailprogram==78 +=== Configuration of the cache === 80 80 81 -Für die Konfiguration des E-Mail-Programms sind neben der Adresse des E-Mail-Servers die unter [[Konfiguration des E-Mail-Server-Services>>||anchor="server_config"]] hinerlegten Ports zu verwenden. Die kompletten zu verwendenden Anmeldedaten setzen sich demnach wie folgt zusammen: 80 +; cache.heap.size (starting from {{version major="2" minor="1"/}}) 81 +: Default: //200//. Size of the RAM to be used in M. 82 +; cache.disk.size (starting from {{version major="2" minor="1"/}}) 83 +: Default: //500//. Size of the hard drive memory to be used in MB. 84 +; cache.tti (starting from {{version major="2" minor="1"/}}) 85 +: Default: //900//. Maximum age of a cache entry in seconds. 82 82 83 -; {{smallcaps}}Smtp{{/smallcaps}} server 84 -: //<server address>// 85 -; {{smallcaps}}Smtp{{/smallcaps}} port 86 -: //see//[[Configuration Mail Server Service>>||anchor="server_config"]] 87 -; {{smallcaps}}Imap{{/smallcaps}} server 88 -: //<server address>// 89 -; {{smallcaps}}Imap{{/smallcaps}} port 90 -: //see//[[Configuration Mail Server Service>>||anchor="server_config"]] 91 -; Username 92 -: //<FORMCYCLE-user>@<FORMCYCLE-clientname>// 93 -; Password 94 -: //<FORMCYCLE-user-password>// 95 -; Authentication 96 -: Password, normal 97 -; SSL encryption and connection security 98 -: none 87 +== Email contents and fields == 99 99 100 - ==Example configurationforThunderbird==89 +A template mechanism is used for the configuration of the content and fields of the email message that is sent. 101 101 102 -1. Open the e-mail account management via //Extras// > //Account settings//.{{lightbox image="thunderbird_1.png" group="g0" width="300"/}} 103 -1. Via //account actions// > //add email account...// open the dialog for configuring a new account.{{lightbox image="thunderbird_2.png" group="g0" width="500"/}} 104 -1. Initially, Thunderbird tries to determine a server automatically based on the entered email address (here //user@imap.com//). Since this is not possible here, you can cancel this by clicking the //Edit Manually// button.{{lightbox image="thunderbird_3.png" group="g0" width="500"/}} 105 -1. The corresponding data can now be entered in the following interface of the server configuration. In the example, the client name is //imap.com// and the user name //user// and the standard ports are used.{{lightbox image="thunderbird_4.png" group="g0" width="500"/}} 106 -1. After completing the configuration, the user's mailboxes now appear as folders (here //central mailbox// and //demo mailbox//) and contain the messages of the existing form entries.{{lightbox image="thunderbird_5.png" group="g0" width="700"/}}}}} 91 +The templates are specified by the [[email message configuration>>||anchor="message_files_config"]]. When an email is sent, the plugin first looks for a template in the form files of the current form, and if none is found, it looks for a template in the client files. This lets you create global templates as client files and override them for specific forms, if neccessary. 92 + 93 +You can use [[variables>>doc:Formcycle.UserInterface.Variables||target="_blank"]] in all templates, such as when you want to insert data from the submitted form and would like to include a link to the form record. 94 + 95 +The following templates can be configured: 96 + 97 +; Content 98 +: Default value: //mail_body.txt//. Specifies the content of the email message. This template allows you to use {{smallcaps}}Html{{/smallcaps}} For example: 99 + 100 +{{code language="html"}} 101 +<html> 102 + <head></head> 103 + <body> 104 + <p><a href="[%$FORM_INBOX_LINK%]">Link</a> to form entry ([%$PROCESS_ID%]).</p> 105 + </body> 106 +</html> 107 +{{/code}} 108 + 109 +; Subject 110 +: Default value: //mail_subject.txt//. Specifies the subject of the message and must not contain {{smallcaps}}Html{{/smallcaps}}. For example: 111 + 112 +{{code language="none"}} 113 + ID: [%$RECORD_ID%] - [%$STATUS_NAME%] 114 +{{/code}} 115 + 116 +; Recipient 117 +: Default value: //mail_to.txt//. Specifies the recipient of the message and must not contain {{smallcaps}}Html{{/smallcaps}}. This is to be entered according to the pattern //name <user@example.com>// and has no effect on the actual receipt of the message. Example: 118 + 119 +{{code language="none"}} 120 + XIMA FORMCYCLE <no-reply@example.com> 121 +{{/code}} 122 + 123 +; Sender 124 +: Default value: //mail_from.txt//. Specifies the sender of the message and must not contain {{smallcaps}}Html{{/smallcaps}}. You need to enter the sender using the pattern //Name <user@example.com>//. The sender has no effect on how the message is sent. Example: 125 + 126 +{{code language="none"}} 127 + [%$PROJECT_NAME%] <[%$PROJECT_NAME%]@example.com> 128 +{{/code}} 129 + 130 +== Email client configuration == 131 + 132 +Use the the address and port of the email server, as configured in the [[plugin configuration>>||anchor="server_config"]] must be used. Below you can find a list of all settings: 133 + 134 +; {{smallcaps}}Smtp{{/smallcaps}} server 135 +: //<server address>// 136 +; {{smallcaps}}Smtp{{/smallcaps}} port 137 +: see [[email server service configuration>>||anchor="server_config"]] 138 +; {{smallcaps}}Imap{{/smallcaps}} server 139 +: //<server address>// 140 +; {{smallcaps}}Imap{{/smallcaps}} port 141 +: see [[email server service configuration>>||anchor="server_config"]] 142 +; Username 143 +: //<FORMCYCLE-user>@<FORMCYCLE-clientname>// 144 +; Password 145 +: //<FORMCYCLE-user-password>// 146 +; Authentication 147 +: Normal password 148 +; SSL encryption and connection security 149 +: None 150 + 151 +== Example configuration for Thunderbird == 152 + 153 +1. Open the email account management via //Preferences// > //Account Settings//.{{lightbox image="thunderbird_1_en.png" group="g0" width="300"/}} 154 +1. Click on //Account Actions// > //Add Mail Account...// to open the dialog for adding a new account.{{lightbox image="thunderbird_2_en.png" group="g0" width="500"/}} 155 +1. Initially, Thunderbird tries to determine the email server automatically based on the entered email address (here //user@imap.com//). Since this is not possible here, you can cancel that attempt by clicking on the //Manual config// button.{{lightbox image="thunderbird_3_en.png" group="g0" width="500"/}} 156 +1. Fill out the email server settings. See above for what you should enter in each field. In the example, the client name is //imap.com// and the user name //user// and the standard ports are used.{{lightbox image="thunderbird_4_en.png" group="g0" width="500"/}} 157 +1. After you complete the configuration, the user's mailboxes now appear as folders (here //central mailbox// and //demo mailbox//) and contain the messages of the existing form records.{{lightbox image="thunderbird_5_en.png" group="g0" width="700"/}} 158 + 159 +== Version history == 160 + 161 +**Version 2.1.0** 162 + 163 +* Switching to {{formcycle/}} version 6.5.5 164 +* Updated the used libraries 165 +* Optimization of memory consumption and database queries 166 +* Integration of a cache for the header and body of messages 167 +* Correction of errors when reading the IMAP BODYSTRUCTURE 168 +* Reintegration of the configuration of the attachment limits 169 +* Extension of the configurability of IMAP batch size and synchronization 170 + 171 +**Version 2.0.0** 172 + 173 +* Modifications for compatibility with {{formcycle/}} version 6.0.2 174 + 175 +**Version 1.0.1** 176 + 177 +* Optimizations and extensions of the configurability 178 + 179 +**Version 1.0.0** 180 + 181 +* Initial release