JBoss.orgCommunity Documentation

MailSettingConfigPlugin

Since eXo Collaboration 2.2.0, MailSettingConfigPlugin is used to define the behavior, for example, showing/hiding fields and checking/unchecking checkboxes, of email account settings in the mail-server-configuration.xml file. It allows administrators to preconfigure all settings and to specify if end-users have the modification right on each specific setting or not.



<external-component-plugins>
  <target-component>org.exoplatform.mail.service.MailService</target-component>
    <component-plugin>   
        <name>cs.mail.service.settings</name>
        <set-method>addPlugin</set-method>
        <type>org.exoplatform.mail.service.MailSettingConfigPlugin</type>
        <description>description</description>
            <init-params>
                <object-param>
                    <name>leaveOnServer</name>
                <description>options to keep a copy of the message on the mail server after eXo Mail has downloaded the message</description>
                <object type="org.exoplatform.mail.service.MailSettingConfig">
                    <field name="name"><string>leaveOnServer</string></field>
                    <field name="userAllowed"><boolean>true</boolean></field>
                    <field name="defaultValue"><string>true</string></field>
                </object>
                </object-param>
                <object-param>
                    <name>incomingServer</name>
                <description>default incoming server to check for new mails.</description>
                <object type="org.exoplatform.mail.service.MailSettingConfig">
                    <field name="name"><string>incomingServer</string></field>
                    <field name="userAllowed"><boolean>true</boolean></field>
                    <field name="defaultValue"><string>imap.gmail.com</string></field>
                </object>
                </object-param>
                <object-param>
                    <name>incomingPort</name>
                <description>default port incoming server to check for new mails.</description>
                <object type="org.exoplatform.mail.service.MailSettingConfig">
                    <field name="name"><string>incomingPort</string></field>
                    <field name="userAllowed"><boolean>true</boolean></field>
                    <field name="defaultValue"><string>993</string></field>
                </object>
                </object-param>
                <object-param>
                    <name>outgoingServer</name>
                <description>description</description>
                <object type="org.exoplatform.mail.service.MailSettingConfig">
                    <field name="name"><string>outgoingServer</string></field>
                    <field name="userAllowed"><boolean>true</boolean></field>
                    <field name="defaultValue"><string>smtp.gmail.com</string></field>
                </object>
                </object-param>
                <object-param>
                    <name>outgoingPort</name>
                <description>description</description>
                <object type="org.exoplatform.mail.service.MailSettingConfig">
                    <field name="name"><string>outgoingPort</string></field>
                    <field name="userAllowed"><boolean>true</boolean></field>
                    <field name="defaultValue"><string>465</string></field>
                </object>
                </object-param>
                <object-param>
                    <name>acceptIncomingSecureAuthentication</name>
                <description>description</description>
                <object type="org.exoplatform.mail.service.MailSettingConfig">
                    <field name="name"><string>acceptIncomingSecureAuthentication</string></field>
                    <field name="userAllowed"><boolean>true</boolean></field>
                    <field name="defaultValue"><string>true</string></field>
                </object>
                </object-param>
                <object-param>
                    <name>incomingSecureAuthentication</name>
                <description>description</description>
                <object type="org.exoplatform.mail.service.MailSettingConfig">
                    <field name="name"><string>incomingSecureAuthentication</string></field>
                    <field name="userAllowed"><boolean>true</boolean></field>
                    <field name="defaultValue"><string>starttls</string></field>
                </object>
                </object-param>
                <object-param>
                    <name>incomingAuthenticationMechanism</name>
                <description>description</description>
                <object type="org.exoplatform.mail.service.MailSettingConfig">
                    <field name="name"><string>incomingAuthenticationMechanism</string></field>
                    <field name="userAllowed"><boolean>true</boolean></field>
                    <field name="defaultValue"><string>plain</string></field>
                </object>
                </object-param>
                <object-param>
                    <name>acceptOutgoingSecureAuthentication</name>
                <description>description</description>
                <object type="org.exoplatform.mail.service.MailSettingConfig">
                    <field name="name"><string>acceptOutgoingSecureAuthentication</string></field>
                    <field name="userAllowed"><boolean>true</boolean></field>
                    <field name="defaultValue"><string>true</string></field>
                </object>
                </object-param>
                <object-param>
                    <name>outgoingSecureAuthentication</name>
                <description>description</description>
                <object type="org.exoplatform.mail.service.MailSettingConfig">
                    <field name="name"><string>outgoingSecureAuthentication</string></field>
                    <field name="userAllowed"><boolean>true</boolean></field>
                    <field name="defaultValue"><string>starttls</string></field>
                </object>
                </object-param>
                <object-param>
                    <name>outgoingAuthenticationMechanism</name>
                <description>description</description>
                <object type="org.exoplatform.mail.service.MailSettingConfig">
                    <field name="name"><string>outgoingAuthenticationMechanism</string></field>
                    <field name="userAllowed"><boolean>true</boolean></field>
                    <field name="defaultValue"><string>plain</string></field>
                </object>
                </object-param>
            </init-params>
    </component-plugin>      
  </external-component-plugins>

Details:

Object-paramDesciption
leaveOnServerOptions to keep the message on the mail server after it has been downloaded to the Mail application of eXo Collaboration.
incomingServerThe default incoming server used to check new mails.
incomingPortThe default port of the incoming server used to check new mails.
outgoingServerThe default port of the outgoing server used to send new mails.
outgoingPortThe default outgoing port to send new mails.
acceptIncomingSecureAuthenticationAccept the secure authentication of the incoming server.
incomingSecureAuthenticationThe type of incoming secure authentication.
incomingAuthenticationMechanismThe type of incoming authentication mechanism.
acceptOutgoingSecureAuthenticationAccepts the secure authentication of the outgoing server.
outgoingSecureAuthenticationThe type of outgoing secure authentication.
outgoingAuthenticationMechanismThe type of incoming authentication mechanism.

The object parameters have the same field names, but the values of the parameters are different.

Field namesDescriptionPossible values
nameThe field name in the account settings form.String
userAllowedAllow users to edit the field in the account settings form or not.Boolean
defaultValueThe default value of the field in the account settings form. String