View Issue Details

IDProjectCategoryView StatusLast Update
0005349SOGoBackend Mailpublic2022-01-19 18:00
Reporterchris_walker Assigned To 
PrioritynormalSeverityfeatureReproducibilityalways
Status newResolutionopen 
Platform[Server] LinuxOSUbuntuOS Version16.04 LTS
Product Version5.1.1 
Summary0005349: Improve functionality with existing sieve scripts
Description

Please add an option in the configuration file that allows the server admin to NOT set the SOGo vacation sieve script as the active script. This allows administrators and users to use the include keyword to include the SOGo vacation script into already existing scripts, allowing for better interoperability and coexistence with already existing sieve scripts.

By using the feature outlined here https://datatracker.ietf.org/doc/html/rfc6609 (section 3.2, Control Structure "include") a user would then be able to have their own script reference the SOGo vacation script. An example script could look like this:

  require ["include", "fileinto", "mailbox"];

  include :personal :optional SOGoVacation;             <-- If SOGoVaction script is present, then vacation messages will be sent
  include :global SpamRules;                                      <-- We'll then fall into the spam rules for the organization

  # Users can now create their own rules
  if not address ["To", "CC"] "address@example.com"
  {
      fileinto :create "Low Priority";
  }

  ...

Perhaps allow the server admin to enable/disable SOGo's default behavior with the following configuration example:

  ...
  /* Web Interface */
  SOGoPageTitle = "Example Web Mail";
  SOGoVacationEnabled = YES;
  SOGoForwardEnabled = YES;
  SOGoSieveScriptsEnabled = YES;
  SOGoSieveScriptsActivated = NO;                 <-- This option would prevent script activation; allowing for the script to be included in a user's already existing script.
  SOGoMailAuxiliaryUserAccountsEnabled = YES;
  ...
TagsNo tags attached.

Activities

chris_walker

chris_walker

2022-01-19 16:01

reporter   ~0015779

This issue can be closed. Current SOGo behavior allows for the user to create the sogo sieve script without it being set as the active script (the user just ignores the "LET SOGO HANDLE EVERYTHING" button when creating forward/vacation scripts).

To take advantage of this users have to add the following to their active script:

require ["include"];
include :optional "sogo";

For example, my users now have active scripts with the following contents:

require ["include"];
include :global "spam";
include :optional "sogo";

This works as expected. When I create a forward/vacation script SOGo creates the sogo sieve script and the script gets executed as expected. When I disable the forward/vacation script SOGo removes the sogo script and the active script ignores the missing script and continues processing without error.

Issue History

Date Modified Username Field Change
2021-07-02 16:32 chris_walker New Issue
2022-01-19 16:01 chris_walker Note Added: 0015779
2022-01-19 18:00 francis Description Updated