come sincronizzare l'elenco degli indirizzi globali e utilizzarlo nelle prospettive

Come sincronizzare l'elenco indirizzi globale e utilizzarlo nell'Outlook

Diogo GouveiaProducts and Solutions Leave a Comment

Avete presente la sensazione di soddisfazione che si prova quando si inizia a digitare nel campo "A" di una nuova e-mail e le informazioni di contatto della persona che si sta cercando appaiono proprio lì? Ebbene, avete la Elenco globale degli indirizzi (GAL) per ringraziarlo.

Dove visualizzare l'elenco globale degli indirizzi

L'Elenco globale degli indirizzi (GAL) può essere considerato come una grande rubrica telefonica o un elenco di contatti per tutti i dipendenti di un'organizzazione. Contiene i nomi, gli indirizzi e-mail, i numeri di telefono e altri dettagli di tutte le persone che vi lavorano. In sostanza, GAL è una directory centrale che aiuta le persone all'interno di un'organizzazione a trovarsi e a connettersi facilmente tra loro. È uno strumento utile per cercare le informazioni di contatto di qualcuno quando si ha bisogno di inviargli un'e-mail o di chiamarlo.

Per controllare l'Elenco indirizzi globale dell'organizzazione in Microsoft Outlook, è sufficiente seguire i seguenti passaggi:

  • Avviare Microsoft Outlook.
  • Aprire la finestra Nuova e-mail.
    elenco indirizzi globale outlook nuova email
  • Fare clic su "A".
    elenco indirizzi globale outlook a
  • Selezionare l'opzione Elenco indirizzi globale o Elenco indirizzi globale predefinito.
    elenco indirizzi globale outlook default gal
Voilà! È facile come questo. Tuttavia, se la vostra organizzazione ha più di un server Microsoft Exchange, vedrete il GAL solo per il server che utilizzate.

E la sincronizzazione GAL?

Come abbiamo appena detto, l'Elenco indirizzi globale visualizzato dipende dal server utilizzato all'interno dell'organizzazione. Se nell'organizzazione sono presenti più server, l'elenco degli indirizzi globali visualizzato in Outlook è quello associato al server a cui si è connessi.

L'accesso a più GAL non è supportato. Se ne avete bisogno, la soluzione è la sincronizzazione dei GAL e ottenere tutte le informazioni in un unico GAL.

Ma quando ne avete bisogno? Ecco un paio di scenari che potrebbero richiederlo:

  • Fusioni e acquisizioni - Se l'azienda A si sta fondendo con l'azienda B, la sincronizzazione degli elenchi di indirizzi globali di entrambe le aziende semplificherà la vita agli utenti finali, poiché tutte le informazioni di contatto saranno ora comuni a entrambe le strutture. Per saperne di più sulle sfide del server Exchange negli scenari di fusione e acquisizione, consultate il seguente documento post sul blog.
  • Partner - Quando un'azienda A collabora con un'azienda B, si verifica un aumento della comunicazione tra le due parti. Per questo motivo, la sincronizzazione GAL è il modo perfetto per garantire che tutte le informazioni di contatto siano comodamente accessibili da entrambe le parti.
  • Server multipli Microsoft Exchange - Le aziende che operano all'interno dello stesso gruppo possono essere collegate ai propri ambienti Exchange, il che è comune, ad esempio, quando le filiali sono sparse in diversi paesi. Immaginiamo che il gruppo aziendale A abbia diverse filiali sparse per il mondo, ognuna con la propria infrastruttura IT e diversi server Exchange. Se un dipendente della filiale europea viene riassegnato alla filiale nordamericana della stessa società del gruppo A, anche la sincronizzazione GAL può essere utile.

Quindi, di fronte a questo tipo di scenari, come si può sincronizzare un elenco di indirizzi globale su altri server Microsoft Exchange? Esiste un modo semplice per farlo?

      public void Execute(IServiceProvider serviceProvider)
    {
        var tracingService = (ITracingService) serviceProvider.GetService(typeof(ITracingService));
        var context = (IPluginExecutionContext) serviceProvider.GetService(typeof(IPluginExecutionContext));
        var serviceFactory = (IOrganizationServiceFactory) serviceProvider.GetService(typeof(IOrganizationServiceFactory));
        var service = serviceFactory.CreateOrganizationService(context.UserId);
        if (!context.InputParameters.Contains("Target") || !(context.InputParameters["Target"] is Entity))
        {
            return;
        }

        var entity = (Entity) context.InputParameters["Target"];
        var isLoginEnabled = HasLoginEnabled(entity);
        
        se (isLoginEnabled == false)
        {
            return;
        }

        try
        {
            var emailAddress = (string) entity["emailaddress1"];
            var contactsWithSameEmailAddress = GetContactsByEmailAddress(service, entity.Id, emailAddress);
            if (contactsWithSameEmailAddress.Entities.Count > 0)
            {
                var hasLoginEnabled = HasLoginEnabled(contactsWithSameEmailAddress.Entities[0]);
                se (hasLoginEnabled)
                {
                    throw new InvalidPluginExecutionException(OperationStatus.Failed,
                        "L'utente esiste già. Provare a registrarsi con un altro indirizzo e-mail o accedere all'account esistente.");
                }

                var mergeRequest = new MergeRequest
                {
                    SubordinateId = entity.Id,
                    Target = new EntityReference("contact", contactsWithSameEmailAddress.Entities[0].Id),
                    UpdateContent = GetUpdateContent(entità)
                };
                var _ = (MergeResponse) service.Execute(mergeRequest);
                entity[CustomAttributeName] = true;
                service.Update(entity);
            }
            else
            {
                var domain = emailAddress.Split('@')[1];
                if (_publicDomains.Contains(domain))
                {
                    SendEmailAndDeactivateContact(service, tracingService, entity);
                }
                altrimenti
                {
                    var contactsWithSameDomain = GetContactsByDomain(service, entity.Id, domain);
                    if (contactsWithSameDomain.Entities.Count > 0)
                    {
                        entity["parentcustomerid"] = contactsWithSameDomain.Entities[0]["parentcustomerid"];
                        service.Update(entity);
                    }
                    altrimenti
                    {
                        SendEmailAndDeactivateContact(service, tracingService, entity);
                    }
                }
            }
        }
        catch (FaultException ex)
        {
            throw new InvalidPluginExecutionException("An error occurred in ContactPostOperationPlugin.", ex);
        }
    }
Chiudere il codice

Sincronizzazione GAL con CB Exchange Server Sync

CB Exchange Server Syncè il nostro strumento di sincronizzazione interno per il server Exchange di Microsoft. Il suo scopo principale è quello di sincronizzare e-mail, calendari, contatti, note, attività e cartelle tra diversi ambienti Exchange, senza soluzione di continuità e in modo completamente in background.

Come è prassi comune per tutte le nostre soluzioni software, siamo costantemente alla ricerca di modi per migliorare e sfruttare la potenza dei prodotti che sviluppiamo. Di conseguenza, nell'ultimo aggiornamento della versione self-hosted di CB Exchange Server Sync, abbiamo rilasciato un nuovissimo componente aggiuntivo chiamato Sincronizzazione GAL CB! Probabilmente si può fare un'ipotesi molto precisa su cosa fa questo nuovo componente aggiuntivo, ma lo spiegheremo comunque.

Oltre a e-mail, calendari, contatti, note, attività e cartelle, è ora possibile sincronizzare l'Elenco indirizzi globale con altri ambienti Microsoft Exchange. Questo rende CB GAL Sync la soluzione ideale per risolvere tutti gli scenari appena descritti!

L'installazione è incredibilmente facile da configurare, quindi non dovrete perdere tempo a cercare di capire come far funzionare l'integrazione. Oltre alla semplicità del software in sé, abbiamo anche Documentazione online e il nostro Portale di supporto disponibili per voi.

Siete pronti a iniziare la sincronizzazione dell'Elenco indirizzi globale? Entrare in contatto con noi e vi porteremo lì!


Sull'autore

Diogo Gouveia

Da Diogo Gouveia

"Dopo aver completato i miei studi nel Regno Unito, mi sono unita al team di marketing di Connecting Software per creare contenuti sull'integrazione del software e su una serie di altri argomenti informatici. Se avete osservazioni o suggerimenti, contattatemi".

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *