Maik Derstappen [2016-11-24 20:08 +0100] :

>    On 24.11.2016 11:47, Niklaas Baudet von Gersdorff
>    ([1]st...@niklaas.eu) wrote:
>
> From the docs it is not clear what the syntax is, because the text an
> the example show different syntax.
> 
> I don't think so.
> 
>    the docs are just changed to the nested array example, before it was
>    ja a list in the example ;)

I was lucky then. :-)

> Just set this up for two of my domains. I guess the most
> important aspect to note is that it's an "array of arrays". So,
> each group of domains that should be visible to each other is one
> array. If you want to have multiple groups that share visibility
> you need multiple arrays.
> 
> For example if a group consisting of domain1, domain2, and
> domain3 should see each other, and another group of domain2,
> domain4, and domain5 should see each other, you'd have to
> specify:
> 
>   SOGoDomainsVisibility = ( ( domains1, domain2, domain3 ), ( domain2, domain4
> , domain5 ) ) ;
> 
> Does this help to better understand it?
> 
>    ok good to know thx for the example.
>    You are using domain1 and domain2 instead of domain1.com and
>    domain2.com.

Well, this depends on how you name the domains you service with
SOGo.

>    I have the feeling that there is something strange in general with
>    the multi domain config.
>    I set it up like:
>      domains = {
>        dom1.de = {
>          SOGoMailDomain = dom1.de;
>          SOGoUserSources = (
>                  {
>                    type = sql;
>                    id = dom1_dir;
>                    DomainFieldName = "domain";
>                    viewURL =
>    [2]"postgresql://sogo:passw...@mail.lan:5432/mail/sogo_users";
>                    SOGoDomainsVisibility = ((dom1.de, dom2.de));
>                    canAuthenticate = YES;
>                    isAddressBook = YES;
>                    userPasswordAlgorithm = ssha;
>                  }
>          );
>        };
>        dom2.de = {
>          SOGoMailDomain = dom2.de;
>          SOGoUserSources = (
>                  {
>                    type = sql;
>                    id = dom2_dir;
>                    DomainFieldName = "domain";
>                    viewURL =
>    [3]"postgresql://sogo:passw...@mail.lan:5432/mail/sogo_users";
>                    SOGoDomainsVisibility = ((dom1.de, dom2.de));
>                    canAuthenticate = YES;
>                    isAddressBook = YES;
>                    userPasswordAlgorithm = ssha;
>                  }
>          );
>        };
>      };
>    But if a user from dom2.de is logged in, he can see addresses from
>    dom1.de but surprisingly not for his domain dom2.de.
>    Any idea what that could be.

Please take a closer look at the "Preferences Hierarchy" that
SOGo implements at

  https://sogo.nu/files/docs/SOGoInstallationGuide.html#_preferences_hierarchy

You must distinguish between System, Domain, and User
Preferences.

The preference in question (SOGoDomainsVisibility) is of type
System as you can see in the table at

  
https://sogo.nu/files/docs/SOGoInstallationGuide.html#_multi_domains_configuration

where there is an "S" in the column left from
"SOGoDomainsVisibility". However, you use it as a Domain
Preference because you put it under each domain (see your
configuration example above). I am pretty sure that this causes
the error. You must put it outside of the domains' configuration
as follows:

  domains = {
    domain0 = {
      SOGoMailDomain = domain0;
      SOGoUserSources = (
        {
          [snip]
        }
      );
    };
    domain1 = {
      SOGoMailDomain = domain0;
      SOGoUserSources = (
        {
          [snip]
        }
      );
    };
    domain2 = {
      SOGoMailDomain = domain2;
      SOGoUserSources = (
        {
          [snip]
        }
      );
    };
    domain3 = {
      SOGoMailDomain = domain3;
      SOGoUserSources = (
        {
          [snip]
        }
      );
    };
  };

  SOGoDomainsVisibility = ( ( domain0, domain2 ), ( domain2, domain3 ) );

Obviously, domain{0..3} must be real domain names.

How does that work out for you?

    Niklaas
-- 
users@sogo.nu
https://inverse.ca/sogo/lists

Reply via email to