Deprecated: Function get_magic_quotes_gpc() is deprecated in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 99

Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 619

Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 1169

Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 1176

Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 1176

Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 1176

Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 1176

Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 1176

Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 1176

Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 1176

Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 1176

Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 1176

Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 1176

Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 1176

Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 1176

Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 1176

Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 1176

Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 1176

Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 1176

Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 1176

Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 1176

Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 1176

Warning: Cannot modify header information - headers already sent by (output started at /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php:99) in /hermes/walnacweb04/walnacweb04ab/b2791/pow.jasaeld/htdocs/De1337/nothing/index.php on line 1176
8000 GitHub - Genetec/DAP: The Genetec Development Acceleration Program (DAP) supports developers creating integrations and custom applications using our API and SDK.
Nothing Special   »   [go: up one dir, main page]

Skip to content
/ DAP Public

The Genetec Development Acceleration Program (DAP) supports developers creating integrations and custom applications using our API and SDK.

License

Notifications You must be signed in to change notification settings

Genetec/DAP

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 

Genetec DAP (Development Acceleration Program)

This repository contains sample projects using the Security Center SDK. The samples demonstrate various features and capabilities of the Security Center SDK.

Introduction to Security Center

Security Center is Genetec's unified security platform that blends IP security systems within a single intuitive interface to simplify operations. It combines access control, video surveillance, automatic license plate recognition, communications, and analytics into one solution, enabling organizations to enhance their security operations and gain valuable insights.

Getting Started

1. Join the Development Acceleration Program (DAP):

Visit Genetec's DAP and join the program. This will provide you with access to the SDK documentation, installer, and a development license for Security Center.

2. Set up a Development Environment:

  • Install Security Center: Ensure you have Security Center installed. You can download the installer from the Genetec Portal.

  • Activate Development License: Activate the Security Center license provided by the DAP. This license allows your integration to connect to Security Center.

  • Install Security Center SDK: The SDK contains the necessary libraries to build and run custom integrations. Download and install the Security Center SDK from the Genetec Portal.

    The SDK installer automatically:

    • Creates environment variables (GSC_SDK for .NET Framework, GSC_SDK_CORE for .NET 8)
    • Writes the installation path in Windows registry
    • Copies the Security Center SDK assemblies to the SDK directories

    See Referencing Security Center SDK Assemblies for assembly referencing and runtime resolution details.

  • Development Tools:

  • Visual Studio: Ensure you have Visual Studio 2022 version 17.6 (or later) installed.

  • .NET Framework 4.8.1: The sample projects can be built using .NET Framework 4.8.1, which is supported by all versions of Security Center.

  • .NET 8: Some sample projects can be built using .NET 8, but only with Security Center SDK 5.12.2 or later. Currently, only the Platform SDK (Genetec.Sdk.dll) supports .NET 8.

  • Build and Run the Samples: Once your environment is ready, you can open the sample projects in Visual Studio, build them and run them.

3. Explore the Samples:

After setting up your environment, you can explore the sample projects in this repository. Each sample demonstrates a different feature or capability of the SDK, such as video management, access control, and system events.

Security Center SDKs

The sample projects in this repository are organized into four main SDKs, each building upon the foundational Platform SDK:

Platform SDK Samples (/Platform SDK/)

The core samples that demonstrate fundamental Security Center SDK functionality. These samples provide the foundation that all other SDKs build upon, including entity management, event monitoring, and reporting.

Key capabilities demonstrated:

  • Login and entity loading using the SampleBase class

  • Entity creation, modification, and deletion

  • Reports queries

  • Event monitoring and alarm processing

  • Custom fields

  • Transaction management

Start here for: Basic SDK concepts, entity operations, reporting, and core Security Center functionality.

Media SDK Samples (/Media SDK/)

Video and audio processing samples that extend the Platform SDK with specialized media functionality. These samples demonstrate streaming, playback, PTZ control, and media management capabilities.

Key capabilities demonstrated:

  • Video streaming and playback operations

  • PTZ camera coordination and control

  • Video export and format conversion

  • Audio transmission and processing

  • Overlay graphics and visual enhancements

Dependencies: Built on Platform SDK foundations for entity management and SDK connection patterns.

See the Media SDK README.

Workspace SDK Samples (/Workspace SDK/)

Client-side user interface extensions that leverage Platform SDK entities and services to create custom components for Security Desk and Config Tool applications.

Key capabilities demonstrated:

  • Custom Security Desk tasks and pages

  • Dashboard widgets and tile components

  • Config Tool configuration pages

  • Options extensions and UI integrations

Dependencies: Uses Platform SDK for entity access, authentication, and core SDK functionality within the client applications.

See the Workspace SDK README.

Plugin SDK Samples (/Plugin SDK/)

Server-side plugin development samples that build upon Platform SDK infrastructure to create custom roles with database support, failover capabilities, and deep system integration.

Key capabilities demonstrated:

  • Server-side processing and custom role creation

  • Database integration with upgrade and cleanup support

  • Background services and business logic implementation

  • Custom report generation and data management

Dependencies: Inherits Platform SDK patterns for entity management, queries, and core SDK functionality while adding server-side role capabilities.

See the Plugin SDK README.

Sample Project Structure

The sample projects in this repository are structured as follows:

  • Target Frameworks: The samples support .NET Framework 4.8.1. Some samples may also support .NET 8 for use with Security Center SDK 5.12.2 or later.

  • Project Output: The sample projects typically compile to one of the following:

  • Executable files (.exe) for standalone applications

  • Class libraries (.dll) for Workspace modules and Plugins

  • SDK References:

  • For .NET Framework 4.8.1: The projects reference Security Center assemblies from the $(GSC_SDK) directory.

  • For .NET 8: The projects reference Security Center assemblies from the $(GSC_SDK_CORE) directory.

  • Additional Features:

  • Some projects include a post-build step to copy certificate files to the output directory.

  • Projects may share common code through the use of shared project items.

Targeting .NET Framework or .NET 8

The Platform SDK projects support both .NET Framework 4.8.1 and .NET 8, depending on the Security Center SDK version. Here's how to work with different target frameworks:

  1. Check the current target frameworks:
  • Edit the project file (.csproj) or view its properties in Visual Studio.

  • Look for the <TargetFrameworks> element.

  1. Target .NET Framework 4.8.1:
  • Ensure your project file includes:
<TargetFrameworks>net481</TargetFrameworks>
  1. Target .NET 8:
  • Ensure your project file includes:
<TargetFrameworks>net8.0-windows</TargetFrameworks>
  1. Target both .NET Framework 4.8.1 and .NET 8:
  • Modify your project file to include:
<TargetFrameworks>net481;net8.0-windows</TargetFrameworks>
  1. Build for a specific framework:
  • In Visual Studio: Use the Configuration Manager to set up different build configurations for each framework (see detailed guide below).

  • Command line: Specify the target framework when building:


dotnet build -f net481

or


dotnet build -f net8.0-windows

Remember to use the appropriate version of the Security Center SDK that matches your target framework. The .NET 8 target requires Security Center SDK 5.12.2 or later.

SDK Framework Support Matrix

The following table shows which .NET frameworks are supported by each SDK:

SDK .NET Framework 4.8.1 .NET 8 Notes
Platform SDK .NET 8 requires Security Center SDK 5.12.2+
Media SDK .NET 8 support planned for future release
Workspace SDK Client applications use .NET Framework
Plugin SDK .NET 8 support planned for future release

Important: Only Platform SDK samples support multi-targeting. All other SDK samples target .NET Framework 4.8.1 exclusively.

Using Configuration Manager for Multiple Target Frameworks

  1. Open Configuration Manager:
  • In Visual Studio, go to the "Build" menu.

  • Select "Configuration Manager" near the bottom of the dropdown.

  1. Create New Configuration:
  • In the Configuration Manager dialog, click on the "Active solution configuration" dropdown.

  • Select "New" at the bottom of the list.

  • Name your new configuration (e.g., "Debug-net481" for .NET Framework 4.8.1 debug build).

  • Choose which existing configuration to copy settings from (usually "Debug").

  • Click "OK" to create the new configuration.

  1. Set Project Properties for the New Configuration:
  • Right-click on your project in the Solution Explorer.

  • Select "Properties" at the bottom of the context menu.

  • In the project properties, ensure the new configuration is selected in the "Configuration" dropdown at the top.

  • Go to the "Build" tab.

  • In the "Conditional compilation symbols" field, add "NETFRAMEWORK" (without quotes) for .NET Framework builds.

  • In the "Target framework" dropdown, select ".NET Framework 4.8.1".

  • Save the changes.

  1. Repeat for .NET 8:
  • Follow steps 2 and 3 to create a new configuration for .NET 8 (e.g., "Debug-net8").

  • In the project properties for this configuration, set the target framework to ".NET 8.0".

  • Instead of "NETFRAMEWORK", use "NET8_0" in the conditional compilation symbols.

  1. Set Up Release Configurations:
  • Repeat steps 2-4 to create Release configurations for both frameworks.
  1. Use the Configurations:
  • In Visual Studio's main toolbar, use the "Solution Configurations" dropdown to switch between your new configurations.

  • When you build the project, it will use the settings for the selected configuration.

  1. Conditional Code:
  • You can now use conditional compilation in your code:
#if  NETFRAMEWORK

// .NET Framework specific code

#elif  NET8_0

// .NET 8 specific code

#endif

Documentation

Complete documentation for the Security Center SDK can be found on the Genetec Developer Portal. You will need to create an account to access the documentation.

License

Please refer to the LICENSE file for information about permissions and limitations for using these SDK samples.

Contributing

While this repository is primarily for reference purposes, contributions such as bug reports, feature requests, and code improvements are welcome. Please follow the guidelines outlined in the CONTRIBUTING file.

Support

If you encounter any issues or have questions regarding the Security Center SDK or the provided samples, please reach out to the Genetec support team through the Genetec Technical Assistance Portal.

About

The Genetec Development Acceleration Program (DAP) supports developers creating integrations and custom applications using our API and SDK.

Topics

Resources

License

Contributing

Security policy

Stars

Watchers

Forks

Contributors 5

0