Eagle Eye User Guide

Eagle Eye User Guide

1. Eagle Eye – Genesis Integration 

Part A: Generate Client Credentials in Eagle Eye

Step 1  

Log in to the Eagle Eye Developer Portal using your credentials:


Step 2  

Navigate to List Applications.

Step 3  

Click Add Application.

Step 4  

Fill in the required application details and click Save Changes.

Step 5  

Once the application is created, select it from the list and click View Client Credentials.

Step 6  

Click Add Credentials and complete the required fields.

Step 7  

Set the Redirect URL to:

Step 8  

Copy the generated Client ID and Client Secret. These credentials will be used in the Genesis application configuration.

Part B: Configure Eagle Eye Credentials in Genesis  

Step 9 – Global Configuration (Single Eagle Eye Account)  

If you want to use a single Eagle Eye account across the entire Genesis application, you must provide the Eagle Eye client credentials at the Service Provider level.

  • Navigate to Service Provider Configuration

  • Go to Additional Settings → Custom Properties

  • Obtain the Client ID and Client Secret from your Eagle Eye account

  1. Click Add and provide the following values:

    • Parameter Name:EagleEyeClientId
      Parameter Value:<Client ID>

    • Parameter Name:EagleEyeClientSecret
      Parameter Value:<Client Secret>

  • Click Save


Step 10 – Site-Level Configuration (Multiple Eagle Eye Accounts) 

If you want to use different Eagle Eye accounts for different sites, the credentials must be configured at the Site level where the device will be onboarded.

  • Navigate to Site Configuration

  • Click Edit for the required site


  1. Under Custom Properties, click Add and provide:
    1. Parameter Name:EagleEyeClientId
      Parameter Value:<Client ID>
    2. Parameter Name:EagleEyeClientSecret
      Parameter Value:<Client Secret>
  2. Click Save


Important Note on Credential Resolution

  • If Eagle Eye client credentials are configured at the site level, Genesis will always prioritize and use the site-level credentials for that site.

  • If no credentials are found at the site level, Genesis will automatically fall back to the Service Provider–level credentials.

  • This allows flexible deployments where:

    • A single Eagle Eye account can be shared across all sites, or

    • Different Eagle Eye accounts can be used for specific sites as needed.

Completion  
You have now successfully completed the initial Eagle Eye–Genesis integration setup. The system is ready to onboard devices and proceed with audio/video workflows.

2. Authentication and Token Handling Workflow 

Eagle Eye uses an OAuth-based authentication mechanism to grant access to device features such as speaker/audio control.

Token Generation Overview  

  • After a successful Eagle Eye login, an authorization code is issued.

  • Using this authorization code:

    • An Access Token is generated (valid for 12 hours).

    • A Refresh Token is generated (valid for 90 days with frequent use; otherwise, it expires after 14 days).

  • These tokens are mandatory to access and control Eagle Eye speaker devices.

Challenge with Standard OAuth Flow  

  • Eagle Eye issues tokens only after a user logs in through their portal using a redirect URL.
  • This means tokens cannot be generated silently or via API alone without user interaction.

Genesis Solution: Integrated Redirection Flow

To address this limitation, Genesis has integrated the Eagle Eye redirection flow directly into the device discovery process.

  • During device discovery:

    • If no access/refresh token is available, or

    • If the refresh token has expired,

  • Genesis automatically triggers the Eagle Eye login redirection within the application.

  • This allows users to authenticate and authorize access without leaving the Genesis workflow.

Prerequisites  

  • Popup blocking must be disabled in the browser.

    • If popups are blocked:

      • Genesis displays a warning toast message in the UI.

      • You must re-discover the device after enabling popups to complete token storage.

User Interaction Scenarios  

  • If the authentication popup is manually closed:
    • Genesis will prompt the user again to complete the token authorization process.
  • If Eagle Eye credentials are not configured at either:
    • Site level, or
    • Service Provider level,
    • Genesis will display an “Authentication Failed” message.
  • If authentication completes successfully:
    • Tokens are securely saved.
    • A success message is shown confirming that authentication is complete.

3. Speaker Configuration During Device Discovery  

During the device discovery process, if a device includes a speaker, it is initially saved as a Camera by default.

Mandatory Configuration Step 

To enable speaker functionality, you must explicitly update the sensor type:

  1. Navigate to Sensor-Level Configuration for the discovered device.

  2. Locate the Type field.

  3. Change the type from Camera to Speaker.

  4. Click Save to apply the changes. 


Once this update is completed, the device will be recognized and treated as a Speaker within Genesis.





















Important Note:

This step is mandatory. If the sensor type remains set to Camera, the device will not function as a speaker, and audio-related features will not work.

4. Audio Speaker Workflow and Configuration

Speaker Association Behavior

If a device contains only a speaker and is not linked to any camera, the system will treat this speaker as a common (shared) speaker for the entire site where the device is onboarded.
  • This common speaker will be used site-wide, even if other devices at the same site have their own integrated speakers.

  • As long as this speaker-only device is active, it will take precedence over other integrated speakers at the site.

Disabling the Common Speaker  

If you do not want to use the speaker-only device as the common speaker:
  • You can disable the device at the Device level, or

  • Disable the speaker sensor at the Sensor level

Once the speaker-only device (or its sensor) is disabled, the system will use the integrated speakers available on other devices at the site.

Audio URL Configuration (Mandatory)  

To enable audio transmission, the audio streaming endpoints must be configured at the device level.

Configure the following fields with valid URLs:

  • LocalAudioNodeUrl
    Example:
    https://streaming03.nxgen.cloud:1880/

  • LocalAudioStreamUrl
    Example:
    wss://streaming03.nxgen.cloud:1880/audioStream


Important:
If these audio URLs are not configured, audio will not be transmitted, even if the speaker and device are correctly onboarded and active.