Exchange group calendar installatie procedure

Klik rechts boven op de chat knop voor hulp bij de installatie.  Voor het de-installeren van de software hoef je alleen de un-installservice.bat te draaien en de installatiemap te verwijderen. Er blijft niets achter.

 

Overzicht van de installatie

  1. Service account maken en rechten geven
  2. De software ZIP uitpakken en een plek geven op een 64 bit computer
  3. Openbare agenda map maken in Outlook en rechten instellen
  4. Wat gebruikers email adressen in de console aanmaken, service account aangeven en licentie sleutel invoeren. groepsagenda invoeren en mensen er aan koppelen
  5. Configuratie bestand aanpassen om de software als service te draaien en service installeren

 

Gedetaileerde stappen

 

1

Eigen exchange server

Maak een nieuw account in de active directory. Dit is het service account. Noem het GCADMIN.
Geen speciale rechten. Alleen lid maken van Domain Users groep. Geef gcadmin een mailbox.
Let op dat je het standaard email adres (reply smtp) instelt op je lokale domeinnaam. Je hebt waarschijnlijk een domein.nl en bijvoorbeeld intern domein.local ? Zorg dan dat je gcadmin@domein.local gebruikt als email adres.

Office 365

Maak een mailbox voor gcadmin en zorg dat die een licentie heeft.

 

2

Eigen exchange server

 Run dit commando in de Exchange Shell

New-ManagementRoleAssignment -Name:EGCimpersonation -Role:ApplicationImpersonation -User:gcadmin

Office 365 :  stap 2 is niet nodig



3

Download het EGC_EWS.zip bestand en pak het uit. Zet de uitgepakte map in zijn geheel op een 64 bit windows machine. Het beste is een server die niet uitgezet wordt anders is de software ook niet meer actief. 
Vraag een testlicentie aan via het menu op deze website want zonder licentie werkt de software niet.

 

4

De software staat dus op zijn plek op een harde schijf ergens waar jij het wilt hebben. Open die map en start gcadmin.exe
Dit is je beheer tool. Voer eerst je licentie in helemaal onderin en je email adres rechts daarvan.

De rest van stap 4 is alleen voor Office365. Met een eigen exchange server ga je door bij stap 5.

Sluit de gcadmin.exe en open de config.ini 
Plak onderin de config.ini deze vier regels:

[Override] 
ManualURL=https://outlook.office365.com/EWS/Exchange.asmx

[UseTLS1.2]
Value=True

sluit en save de config en open gcadmin.exe opnieuw. We moeten nu in Azure de app toevoegen.

Stap 4.1: open een powershell-console als beheerder (verhoogd)
Stap 4.2: zorg ervoor dat deze tls 1.2 gebruikt door deze opdracht uit te voeren: [Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12 Stap 4.3: voer dit commando uit: Install-Module -Name AzureAD en antwoord A (ja op alles). Dit kan even duren!
Stap 4.4: Wanneer u terug bent bij de prompt, voert u de onderstaande opdrachten uit, maar zorg ervoor dat u de sectie "yourID" wijzigt in de Tenant-ID van uw Azure AD. (laat de aanhalingstekens staan, vervang alleen het woord yourID) U kunt uw Tenant-ID vinden in het Azure Active Directory-beheercentrum - Overzicht

Connect-AzureAD -TenantID "yourID"
new-AzureADServicePrincipal -AppID "fdea1aff-feaa- 4d04-b795-55d873f2283b" -DisplayName "ExchangeGroupCalendar" -Tags {WindowsAzureActiveDirectoryIntegratedApp}

Stap 4.5: Open uw azure Active Directory-beheercentrum in de browser en zoek de Exchange Group Calendar-toepassing onder Enterprise-toepassingen. Selecteer deze en klik onder machtigingen op "Admin consent verlenen"

In gcadmin.exe moet je nu ook je Tenant-ID plakken.

Voer nu linksboven het email adres van jouw gcadmin in en daaronder het wachtwoord.
Druk nu op "test credentials" en kijk helemaal onderin de console wat er gebeurt. Als je geen fouten ziet lees dan verder bij punt 6. Heb je wel fouten dan kun je misschien met de volgende punten verder komen of gewoon gelijk op de chat knop hier drukken om hulp te vragen.

Krijg je een Autodiscovery probleem melding?
Is het certificaat van jouw server in orde? 
Heb je gcadmin wel een email adres in het lokale domein gegeven?

Je kunt autodiscovery helemaal omzeilen maar dat is geen fraaie oplossing. We hebben het liefst dat alles goed geconfigureerd is en werkt zoals het bedoeld is maar de quick fix is:
Sluit gcadmin.exe en open config.ini
Voeg aan de onderkant toe 
[Override] 
ManualURL=https://server.domain/EWS/Exchange.asmx
Waarbij je je eigen server en domein natuurlijk invult.

 6

Maak nu de eerste groepsagenda.
Als je office 365 hebt dan moet de openbare mappen structuur al gemaakt zijn. Je kunt hier zien hoe dat moet. Alternatief kun je er voor kiezen om geen openbare mappen te gebruiken maar om de groepsagenda's onder de agenda van het gcadmin account (dus in de mailbox van gcadmin) te maken. Zie punt 13 voor de configuratie instelling.

Je kunt geen agenda map maken via het Exchange management console. Die maakt alleen maar email mappen, dit moet echt via Outlook.
Het account waarmee je Outlook gebruik moet wel rechten hebben om nieuw openbare mappen te maken. (vraag hulp via de chat als het je niet lukt)


De groepsagenda map maken:

Gebruik in Outlook de toetsenbord combinatie CTRL-6
Links onder zie je de openbare mappen nu. Klik daar met je rechtermuis op en kies Nieuwe map. Geef de map een naam.
Zorg dat het type map ingesteld is voor agenda items. (keuze lijstje)
Kies het tabblad met rechten. Je ziet daar je eigen naam als eigenaar. Gcadmin moet ook eigenaar worden dus voeg die toe.
In principe is het nu klaar, de gebruikers vallen onder de "Standaard" groep en zijn daarmee auteur. Iedereen heeft dus toegang en kan alleen de eigen items in die map wijzigen. 
Wil je dit anders regelen dan maak je individuele mensen auteur en stel je de standaard groep in op "geen rechten".

Sla de map op en klik er nog even met je rechtermuis op om de optie "aan favorieten toevoegen" te kiezen. Dit maakt een snelkoppeling bij je andere agenda's.

7

Nu moet je in gcadmin.exe aangeven dat de groepsagenda bestaat. In het vakje onder de linker lijst geef je in "/groepsagendanaam" Dus het hele deel openbare mappen/alle openbare mappen wat je in outlook ziet vul je niet in. 
Als je op enter of het Plus icoontje drukt zie je onderin het scherm weer de acties en controle uitgevoerd worden. Als alles goed gaat verschijnt jouw groepsagenda nu in de linker lijst.

8

in de rechter lijst moeten wat gebruikers email adressen komen. Die kun je dan lid maken van je groepsagenda. Je voert ze onder de lijst in het vakje met de + in en drukt op enter zodat ze in de lijst met gebruikers komen te staan. 

 9

Je kunt nu een gebruiker kiezen in de rechter lijst, vervolgens je groepsagenda in de linker lijst en dan op de knop drukken in het midden tussen de 2 lijsten. 
Die gebruikers worden nu onderin als lid van de groepsagenda weergegeven. Selecteer je een andere groepsagenda dan zie je onderin daar weer de leden van.
Als je een gebruiker in de rechtse lijst kiest zie je in de lijst met groepsagenda's waar ze lid van zijn doordat die groepsagenda rood kleurt.

10

Als je bepaalde mensen een team wilt laten vormen (lees even in de concepten pagina het 6e deel wat hiermee bedoelt wordt )  dan kies je een groepsagenda uit je lijst en selecteert onderin voor de naam van de leden het aanvinkvakje om dit hun PGC te maken.

 11

De configuratie is nu klaar en alles wat overblijft is het installeren van de NT service. 
Zet nog even logging aan rechtsonder (log to text file)
Je kunt gcadmin.exe sluiten en dubbelklikken op RunEGCasService.ini

Als je de software geinstalleerd hebt in de map c:\EGC_EWS dan moet je de volgende 2 regels aanpassen:

CommandLine = c:\EGC_EWS\ExchangeGroupCalendar_EWS.exe
WorkingDir = c:\EGC_EWS

Sluit de ini file en run Installservice.bat.
Als je nu een foutmelding krijgt dan open je eerst een CMD als administrator
Je verplaatst de cursor naar de juiste map (bijvoorbeeld CD c:\EGC_EWS )
en je tikt in: Installservice.bat

Waarschijnlijk krijg je nu geen foutmelding en zie je de eerste log file verschijnen (egclog1.txt)

In de log wil je ook geen foutmeldingen zien.  Na een groot aantal initialisatie log regels moet je een herhaald "polling...." zien als alles goed gaat. Bij problemen even een chat openen met de helpdesk hier rechtsboven.

 

Nog wat extra informatie

12 

De gcadmin console is niet meer dan een hulpmiddel om de instellingen te beheren in de config.ini. Gcadmin.exe doet zelf niets qua processing. Dit wordt gedaan door Exchangegroupcalendar_ews.exe waar ook de meeste updates voor komen. Updaten van de software is dan ook meestal een kwestie van 1 nieuwe executable.

je mag de config.ini ook met de hand of via een script aan (laten) passen. Je moet dan wel snappen hoe deze is opgebouwd, dat wordt hierna besproken. 


Als je veel gebruikers hebt en je wilt ze niet 1 voor 1 invoeren dan kan dat bijvoorbeeld ook direct in de config.ini. Zorg eerst voor een export van je email adressen. Dit kan met dit commando in de shell
Get-Mailbox -ResultSize Unlimited |Select-Object DisplayName,ServerName,PrimarySmtpAddress, @{Name=“EmailAddresses”;Expression={$_.EmailAddresses |Where-Object {$_.PrefixString -ceq “smtp”} | ForEach-Object {$_.SmtpAddress}}} > c:\temp\export.txt 

Pak het bestand uit c:\temp, selecteer alles en kopieer naar clipboard.
Ga nu naar excel en plak je adressen.
Voeg 2 kolommen in en zorg dat in de eerste kolom een volgnummer komt. (1,2,3)
In de 2e kolom type je '= en dit kopieer je in de hele 2e kolom
De 3e kolom heeft de email adressen.
Selecteer de eerste 3 kolommen, kopieer naar clipboard en plak in notepad.
Je wilt overhouden
1=naam@domein.nl
2=naam@domein.nl
zonder witruimte in de regels. dubbelklik de witruimte die je teveel hebt en verwijder die met zoek en vervang.

Nu kun je de hele lijst kopieren en plakken in config.ini
Doe dit onder het kopje [USERS]
Als je laatste emailadres volgnummer 100 heeft dan moet je het getal achter Userindex= veranderen in 100

Zou je nu gcadmin openen dan zie je al je email adressen in de lijst. Ze zijn nog geen lid van een groepsagenda. Dit kun je ook in de config.ini doen maar via multiselect (ctrl of shift ) gaat dat sneller in de gcadmin console.

Wat meer info over indexen

Alle indexen staan onder [Indexes]

  • GCindex = het aantal groepsagenda's
  • MemberIndex# = Waarbij # een nummer is. Elke groepsagenda heeft een eigen nummer. Dus dit betreft het aantal leden van groepsagenda nummer # 
  • PGC-# = Waarbij # het nummer van de groepsagenda is. Dit indiceert hoeveel gebruikers die groepsagenda als PGC hebben.
  • Userindex= het totale aantal mensen in de lijst met namen

Het principe is steeds dat we alles een uniek volgnummer geven. Elke gebruiker heeft een eigen nummer en elke groepsagenda ook.

Als we willen onthouden dat gebruiker nummer 12 lid is van groepsagenda nummer 1 dan kunnen we dat terugvinden onder het kopje [membersof-1] (leden van groepsagenda nummer 1.
Voor ieder lid hebben we een uniek volgnummer: 1,2,3,4 etc en daarachter vermelden we het gebruiker volgenummer. 
Je ziet dus een structuur als
[Membersof-1]
1=1
2=4
3=16
4=28
Eigenlijk heel eenvoudig nietwaar? Het eerste lid van groepsagenda is gebruiker 1. het 2e lid is gebruiker 4, de derde is 16 en 4 is 28
.
Wil je nu weten welke namen daarbij horen dan staan die onder 
[users]
1=jan@domein.nl
2= ... etc

Mocht je nog vragen hebben over het manipuleren van de config.ini en wellicht het automatiseren van het beheer gekoppeld aan andere tools die je al gebruikt dan willen we graag helpen. 

13

Er zijn nog wat instellingen die je niet in de gcadmin.ex kunt doen maar alleen door het aanpassen van de config.ini

[CleanUp]
RemoveOlderThan60Days=False

Standaard wordt alles opgeschoond uit de groepsagenda wat ouder is dan 60 dagen. Dit kun je uitzetten met de bovenstaande instelling.

[GCAMIN2]
EmailAddress=
Password=

Dit is een instelling voor gebruikers van office 365 die meer dan 20 groepsagenda's willen. Je maakt dan een 2e gcadmin account en geeft het dezelfde rechten als je eerste gcadmin account. Email adres en wachtwoord zet je in deze instelling. En dan kun je 40 groepsagenda's maken. Als ook dat nog te weinig is neem dan contact op.

 [UseSubFolderCalendar]
FolderName=MySubfolder

Deze instelling gebruik je om je standaard persoonlijke agenda helemaal buiten de groepsagenda te houden. Wat er gebeurt is dat de software met deze instelling bij ALLE GEBRUIKERS een submap aanmaakt onder hun eigen agenda met de naam "mysubfolder"

Als een gebruiker iets in zijn normale agenda doet dan doet de EGC daar niets mee, maar als hij het in MySubfolder doet wel. 
Ook als beheerders iets in de groepsagenda maken voor de gebruikers verschijnen die items alleen in de sub map.

Punt van aandacht is de "resources" in exchange server. Zoals je vergaderruimtes etc. 
Je moet voorkomen dat die ook zo'n submap krijgen anders werken ze niet meer met EGC samen.
Dit doe je door onder de gewone agenda van de resource een mapje aan te maken met de naam "MySubfolder" wat jij gebruikt hebt als naam. Dit mag geen agenda mapje zijn. 

Ook voor gewone gebruikers die gewoon hun eigen agenda willen gebruiken met EGC kun je dat doen. Als er maar een mapje onder hun agenda staat wat geen agenda is en dezelfde naam heeft als jou submap naam dan werkt bij hun gewoon de standaard agenda met egc samen.

 

[TimeZone]
UseUserTimeZone=True

Voor bedrijven met mensen in verschillende tijdzones. Afspraken in de groepsagenda worden zo gemaakt op basis van de tijdzone van Outlook van die gebruiker.

[ProcessFutureOnly]
Value=True

Als iemand een afspraak wijzigt in zijn agenda die in het verleden ligt doen we daar niks meer mee met bovenstaande instelling.


[EncryptPassword]
Value=True
Om het wachtwoord van het gcadmin account te versleutelen en als **** in de console te tonen.



[GcadminCalendarIsGcroot]
Value=True
Als je geen public folders (openbare mappen) wilt gebruiken dan kunnen de groepsagenda's alternatief onder de standaard agenda van het gcadmin account gemaakt worden.
gebruikers moeten dan natuurlijk ook auteurs rechten hebben in die mappen.
Bij het ingeven van de groepsagenda namen in gcadmin.exe moet je de standaard agenda van gcadmin gebruiken als het startpunt. Bijvoorbeeld "/sales"  (zonder aanhalingstekens) wil zeggen dat de groepsagenda "sales" zich direct als submap onder de agenda van gcadmin bevindt.