Address Book Integration

Address Book Integration

Scope and Purpose of this Document

This document is created to outline possible ways of integrating the iLobby Address Book with various available Enterprise systems for the purpose of automation of data entry and maintenance.  The goal is to keep the iLobby Address Book updated with latest employee data via sync with another business system.  The approach must be secure, efficient and maintain the desired level of compliance and confidentiality. 

Security and Confidentiality of Data

This document falls under iLobby’s privacy and security policies which mandate sufficient level of encryption and data segmentation to be present throughout the platform.  For the purpose of this document following guidelines are to be followed:

  1. Minimum of TLS 1.2 encryption to be used for all data transfers
  2. All data submissions must be uniquely tokenized or identified using a unique key ID and secret, issued to a specific client.  Client may have more than one key, but each key can only be assigned to one client.
  3. Expired key/tokens are not to be re-used
  4. All data must travel from the customer system, directly into protected area of iLobby.  No middle servers/repositories are to be used, unless they are in-scope and makeup the iLobby platform.  Under no circumstances will iLobby request the client to post data to an insecure server, even temporarily.
  5. VPN and IP restricted connections may be used to further safeguard the data

Synchronizing Data

By default, all data pushed through any of the synchronization mechanisms outlined in this document will take precedence and will overwrite data manually entered.  If empty fields are submitted, they will be ignored and they will not overwrite data already stored.  Data is synchronized based on the email address of the address book entry.  Each sync will add new records to the address book and will mark records not present in the sync as “disabled”. 


Few options are available for clients looking to sync address books for multiple locations.  If this is a requirement, please contact support@goilobby.com for available options. 

Integration Option: Azure / Office 365

iLobby supports direct to Azure/Office 365 integration. This integration will expose the entire contents of the AD to iLobby on “read only” basis.


When requested, iLobby will provide the Client with a web url residing on iLobby platform. This url, when clicked, will attempt to connect the iLobby server with your hosted AD.  In order to authenticate the connection, the user will have to enter their AD credentials, which have to allow for access to AD contents.  Permission request will be displayed (some items may be duplicated).  Once the connection is 
authorized by the user, iLobby will be issued a token by Azure/Office 365.  This token will be used to establish an ongoing connection and to extract the AD information.  iLobby Enterprise App will also appear in your Azure control panel to denote that the connection has been made.  You will be able to remove it when no longer required.


Please see Sample Office 365 Integration Screens at the end of this document for additional detail.

Integration Option: Locally hosted AD

iLobby address book can be populated with AD data by running the provided powershell script (see attachment) on the customer server.  This is a push action, where customer fully controls what data is pushed to the iLobby server and at what frequency.  As a guideline, we recommend that only relevant data is submitted and that frequency is set at once per day.


When requested, iLobby will provide the Client with an API key to be used for transmission.  The key is to be inserted into the required part of the provided powershell script.  The script may be modified to reflect the customer’s AD structure and consists of the following main parts:
  1. Querying AD for a list of users with specified fields and within specified AD groups
  2. Creation of a CSV file containing the list
  3. Upload of the CSV file to iLobby Web API using the issued key
Multiple sites may be synched using a single CSV file by specifying the correct site as per the sample format below, or by requesting unique API keys for each site in order to submit separate, site specific, CSV files.

Integration Option: Custom Integration

iLobby address book can be populated with data from any source by submitting a pre-formatted CSV file to the iLobby API. As a guideline, we recommend that only relevant data is submitted and that frequency is set at once per day.


When requested, iLobby will provide the Client and an API key to be used for transmission and the format for the URL request.  The CSV file submitted must meet iLobby format standards in order to be processed.  Sample format is attached.

Sample PowerShell Script:

Please see below the example of the updated PowerShell script for .CSV Address Book sync. 


  1. SAMPLE POWERSHELL SCRIPT, CHANGE EXTENSION TO .PS1 PRIOR TO EXECUTION#
  2.  
  3. <# 1. DEFINE SEARCH LOCATIONS #>
  4. $OULocation="OU=Users,DC=TOR"                 
  5.  
  6. <# 2. SET API CREDENTIALS #>
  7. $client_id = ''             
  8. $client_secret = ''     
  9.  
  10. <# 3. SET OUTPUT DIRECTORY #>
  11. $sourceFilePath = $PSScriptRoot + "\adextract.csv"     

  12. <# 4. SET UP USER PROPERTIES TO EXPORT #>
  13. $fields = @('mail','DisplayName','telephoneNumber','HomePhone')   

  14.  <# ACTIVE DIRECTORY USER EXPORT TO CSV FILE #> 
  15. Import-Module ActiveDirectory                                     
  16. $Users = Get-ADUser -Filter {Enabled -eq "True"} -SearchBase $OULocation -SearchScope  Subtree -Properties $fields | select $fields
  17. $Users | Export-Csv $sourceFilePath -NoTypeInformation -Force

  18. <# GET TOKEN #>
  19. $headers=@{}
  20. $headers.Add("Content-Type", "application/x-www-form-urlencoded")
  21. $response = Invoke-WebRequest -Uri 'https://partnerapi.goilobby.com/auth/connect/token' -Method POST -Headers $headers -Body "grant_type=client_credentials&client_id=$($client_id)&client_secret=$($client_secret)"
  22. $token = ConvertFrom-Json $response.Content
  23. $access_token = $token.access_token

  24. <# UPLOAD CSV FILE TO ILOBBY API #>
  25. [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.SecurityProtocolType]::Tls12;
  26. $urlDest = "https://partnerapi.goilobby.com/addressbook/uploadcsv";
  27. $webClient = New-Object System.Net.WebClient;
  28. $webClient.Headers.Add("Content-Type", "application/x-www-form-urlencoded")
  29. $webClient.Headers.Add("Authorization", "Bearer $($access_token)");
  30. $resp = $webClient.UploadFile($urlDest, "POST", $sourceFilePath); 
  31. $enc = [System.Text.Encoding]::ASCII
  32. $enc.GetString($resp)


Sample CSV file format

FIRSTNAME,LASTNAME,TITLE,DIVISION,EMAIL,MOBILE,DESKPHONE,SITE

Rob,Jones,Manager,Management,rob.jones@test.com,4169998888,4169997777,Toronto

!!! When including the "SITE" column, please make sure that the values for all records match the site names in the iLobby portal.

Sample Office 365 Integration Screens

When requested, iLobby support will provide the client with a unique integration link for establishing the connection between client’s O365 installation and iLobby.  After navigating to the link, client will be presented with the following screens:


Account Selection


This screen will allow the client to select the user account with which the integration link will be established:





Permissions Screen


Once account is selected, iLobby will need to be authorized and granted the permissions required to access the contents of customer’s Office 365 installation:




Application List


iLobby can now be managed in the list of installed applications and services under Enterprise Applications list within the Management tab of your Office 365 management portal:






    • Related Articles

    • Configuring the Address Book

      In order for guests to be able to select a host on the iLobby app, and for the hosts to be notified of a visitor, the iLobby Address Book needs to be populated with host (employee) profiles. You can add or edit profiles as necessary.     Each host's ...
    • Address Book

      This guide outlines the steps required to resolve the iLobby Address Book-related issues.  Issue 1: Host from the Address Book cannot be found on the “Who are you visiting?” screen.  Resolution time:  Maximum 15 minutes.   Assumptions:  You have ...
    • Setting up Voice Notifications

      Use the voice notifications function to allow hosts to receive a phone call notifying them that they have a visitor every time a guest signs in. Be sure that the correct number for the host is recorded in each host's profile in the Address Book. The ...
    • Setting up Global Messaging

      You can use the iLobby portal to send messages to contacts in your Address Book, via the Global messaging function.  1. Click Settings, then Global Messaging. 2. Enter the Subject and Body of the message. 3. To send the message only to hosts at ...
    • Logging in to the iLobby Companion app

      iLobby mobile app is intended to be used by employees as a companion application to the iLobby Kiosk. You can download the iLobby Visitor Registration (Companion) application from Apple App Store and Google Play for free. In order to use iLobby ...