has anybody successfully integrated any CRM with SOGo calendar and
contacts?

I'm using SOGo 1.3.5 and SugarCRM 6.1 on the same machine both using PostgreSQL as the backend DB. It isn't really integration, but I've got both SOGo and SugarCRM using ldap to authenticate so the username / passwords are the same. Then I created a view of the Sugar database:

SELECT DISTINCT 'blank'::character varying AS c_password, contacts.last_name AS c_id, contacts.first_name AS c_name, ((contacts.first_name::text || ' '::text) || contacts.last_name::text)::character varying AS c_cn, contacts.first_name AS cn, contacts.first_name AS givenname, contacts.first_name AS c_uid, contacts.last_name AS sn, contacts.title, email_addresses.email_address AS mail, contacts.department, contacts.phone_home AS homephone, contacts.phone_mobile AS mobile, contacts.phone_work AS telephonenumber, contacts.phone_fax AS fax, contacts.primary_address_street AS streetaddress, contacts.primary_address_city AS locality, contacts.primary_address_state AS st, contacts.primary_address_postalcode AS zip, contacts.primary_address_country AS countryname, contacts.birthdate, accounts.name AS o
   FROM sugar.contacts
LEFT JOIN sugar.email_addr_bean_rel ON email_addr_bean_rel.bean_id = contacts.id LEFT JOIN sugar.email_addresses ON email_addresses.id = email_addr_bean_rel.email_address_id LEFT JOIN sugar.accounts_contacts ON accounts_contacts.contact_id::bpchar = contacts.id LEFT JOIN sugar.accounts ON accounts.id = accounts_contacts.account_id::bpchar WHERE contacts.deleted = 0 AND accounts_contacts.deleted = 0 AND email_addr_bean_rel.deleted = 0 AND email_addresses.deleted = 0;

Then I added a public directory to SOGo for all users to use by adding to SOGoUserSources:

                type=sql;
                id=sugar;
                displayName="Sugar Directory";
viewURL = "postgresql://sogo:sogo@localhost:5432/sugar/sugar.sogotest2";
                userPasswordAlgorithm = "None";
                canAuthenticate = NO;
                isAddressBook = YES;


The addressbook is readonly and available to all and has double entries for people with multiple emails and few other quirks, but it is always 'synced' since it is just a view from the Sugar DB. Ideally, SugarCRM would support carddav and caldav, but until then this is sometime. I bet someone with some magic DB foo could do something for calendars as well -- may a trigger on update of SOGo that updates Sugar and visa versa.

Ben
--
[email protected]
https://inverse.ca/sogo/lists

Reply via email to