security center sdk 5.5 frequently asked questions · pdf fileas c#, vb.net, managed c++, etc....

15
Innovative Solutions Security Center SDK 5.5 Frequently Asked Questions July 22, 2016

Upload: trinhquynh

Post on 21-Mar-2018

226 views

Category:

Documents


5 download

TRANSCRIPT

Page 1: Security Center SDK 5.5 Frequently Asked Questions · PDF fileas C#, VB.NET, Managed C++, etc. The Web SDK can be used in the language of your choice. ... Security Center 5.5 SDK |

Innovative Solutions

Security Center SDK 5.5

Frequently Asked Questions

July 22, 2016

Page 2: Security Center SDK 5.5 Frequently Asked Questions · PDF fileas C#, VB.NET, Managed C++, etc. The Web SDK can be used in the language of your choice. ... Security Center 5.5 SDK |

2 genetec.com | Security Center 5.5 SDK | FAQ

Table of Contents

General 4

1.1 What SDK packages are available? 4

1.2 Why do I need to sign an SDK-Specific Non-Disclosure License Agreement (SDK Agreement) for the

SDK Advanced package? 4

1.3 Does the SDK Agreement cost money? 4

1.4 What tools are available to help me during the development process? 4

1.5 What is included in the documentation? 4

1.6 What is included in the samples? 5

1.7 What is the SDK forum? 5

1.8 What are the programming languages available when using the SDK? 5

1.9 Is the SDK backward compatible? 5

Architecture 6

2.1 How does the SDK application connect to the Security Center server? 6

2.2 What can I access once I'm logged in to the Security Center server? 6

2.3 Do I need to modify my Security Center license? 7

2.4 Who is responsible for updating my client's license when I am ready to deploy my integration? 7

2.5 What can cause my connection attempt to fail? 7

Platform - Alarms, Events and Custom Fields 8

3.1 Can I create my own custom events in Security Center? 8

3.2 Can I create/acknowledge/monitor alarms using the SDK? 8

3.3 Can I filter which events my application receives? 8

3.4 What are my options for interacting with Custom Fields? 8

3.5 How can I relay alarms from my third party system to Security Center? 8

3.6 Can we create bookmarks using the SDK? 8

Access Control Integrations 9

4.1 Can I monitor door and area events using the SDK? 9

4.2 Can I query for access control events using the SDK? 9

4.3 Can I modify the cardholders of an access rule? 9

4.4 Can I enroll new cardholders and credentials? 9

4.5 Can I use the SDK to enter custom card formats? 9

Page 3: Security Center SDK 5.5 Frequently Asked Questions · PDF fileas C#, VB.NET, Managed C++, etc. The Web SDK can be used in the language of your choice. ... Security Center 5.5 SDK |

3 genetec.com | Security Center 5.5 SDK | FAQ

4.6 Can I use the SDK to manage visitors? 9

4.7 Can I use the SDK to lock and unlock doors? What about setting my door to maintenance mode? 9

Integrating with Security Desk and Config Tool 10

5.1 What are my options when integrating with Security Desk or the Config Tool? 10

5.2 Can we integrate into any existing tasks? 10

Macros 11

6.1 What is a macro when compared to the rest of the SDK? 11

6.2 How do I deploy a macro? 11

Web-based SDK 11

7.1 Why use the Web SDK when the .NET SDK is available? 11

7.2 How to enable the Web SDK? 11

7.3 What functionality is available using the Web SDK? 12

7.4 How are the requests sent? 12

SDK Advanced - Media SDK 13

8.1 How can I retrieve video using the SDK? 13

8.2 Which object should I use for video analytics? 13

8.3 Which control should I use to display video in my application? 13

8.4 In terms of raw video, what do I have access to when using the SDK? 14

8.5 Can we do audio analytics using the Security Center SDK? 14

8.6 Can we overlay data onto the video stream using the SDK? 14

The RTSP Media Gateway 15

9.1 Can we receive video feeds via RTSP requests? 15

9.2 Which license options are required for RTSP Media Gateway? 15

9.3 What is streamed by the RTSP Media Gateway? 15

Certificates 15

10.1 Development Certificate 15

10.2 Production Certificate 15

Page 4: Security Center SDK 5.5 Frequently Asked Questions · PDF fileas C#, VB.NET, Managed C++, etc. The Web SDK can be used in the language of your choice. ... Security Center 5.5 SDK |

4 genetec.com | Security Center 5.5 SDK | FAQ

General

1.1 What SDK packages are available?

The SDK Basic package gives access to the Security Center platform. It is available after accepting terms and conditions on the Genetec website. The SDK Advanced package gives access to the Media components. This is available after signing an agreement with Genetec.

1.2 Why do I need to sign an SDK-Specific Non-Disclosure License Agreement (SDK Agreement) for the SDK Advanced package?

The SDK Agreement is mandatory before acquiring Genetec's SDK Advanced package. This legal document ensures that our product information will remain confidential and will only be used under our terms and agreements. We unfortunately cannot issue the SDK package unless the SDK Agreement is signed.

1.3 Does the SDK Agreement cost money?

The SDK Agreement does not cost any money. It is simply a legal document to protect our intellectual property.

1.4 What tools are available to help me during the development process?

When you purchase the SDK package, not only do you get Genetec's SDK, you also get access to multiple tools. For instance, you get the SDK documentation, sample projects, access to the SDK forum, and 1 year of support.

1.5 What is included in the documentation?

The documentation includes an overview of the SDK, a definition of the different SDKs, multiple tutorials to get you started, and definitions of every class supported and its members.

Page 5: Security Center SDK 5.5 Frequently Asked Questions · PDF fileas C#, VB.NET, Managed C++, etc. The Web SDK can be used in the language of your choice. ... Security Center 5.5 SDK |

5 genetec.com | Security Center 5.5 SDK | FAQ

1.6 What is included in the samples?

The SDK Basic package includes samples projects that cover many different aspects of the SDK, such as:

o Using the SDK engine to connect and interact with the Security Center server. o Retrieving Security Center entities and modifying them. o Running queries and reports. o Configuring user privileges o Creating, configuring and adding custom objects to Maps. o Developing a macro. o Developing a custom task to integrate with Security Desk. o Integrating within a Security Desk tile. o Using the Web SDK.

The SDK Advanced package includes samples covering the usage of Media components: o Playing live and playback video with the MediaPlayer WPF component. o Receiving YUV and RGB frames with the VideoSourceFilter object. o Taking snapshots. o Using digital zoom. o Controlling PTZ cameras o Exporting video and converting it from G64 to ASF. o Encrypting video files. o Defining video overlay.

1.7 What is the SDK forum?

The SDK forum is an online forum where members can ask and/or answer questions about the SDK. It has a friendly and active community of clients and Genetec employees. This can also serve as a knowledge base because members can search the forum for previously posted issues.

1.8 What are the programming languages available when using the SDK?

The Security Center SDK is based on .NET 4.5.1. Therefore, you can use .NET languages such as C#, VB.NET, Managed C++, etc. The Web SDK can be used in the language of your choice.

1.9 Is the SDK backward compatible?

Genetec maintains backward compatibility for the Security Center SDK. This means that method and property signatures aren't modified with the release of a new version (but obviously new methods/properties/classes are released with a new version of the software!).

Page 6: Security Center SDK 5.5 Frequently Asked Questions · PDF fileas C#, VB.NET, Managed C++, etc. The Web SDK can be used in the language of your choice. ... Security Center 5.5 SDK |

6 genetec.com | Security Center 5.5 SDK | FAQ

Architecture

2.1 How does the SDK application connect to the Security Center server?

The SDK uses a Genetec-provided certificate to authenticate against the Server. The communication is done over the TCP protocol. Video streaming using the SDK is done over RTSP and RTP.

2.2 What can I access once I'm logged in to the Security Center server?

To put it simply, the SDK gives you access to the pillars of Genetec's Security Center product:

The platform

Access Control

Video

License Plate Recognition

Page 7: Security Center SDK 5.5 Frequently Asked Questions · PDF fileas C#, VB.NET, Managed C++, etc. The Web SDK can be used in the language of your choice. ... Security Center 5.5 SDK |

7 genetec.com | Security Center 5.5 SDK | FAQ

2.3 Do I need to modify my Security Center license?

The Security Center server must have the proper certificates in the license to allow a specific

SDK integration.

Each application developed with the Security Center SDK is uniquely identified by an SDK

Certificate. The certificate is a simple XML file that must be copied alongside the application

using the Security Center SDK.

Usage of Media SDK requires the Media SDK license option.

2.4 Who is responsible for updating my client's license when I am ready to deploy my integration?

You are responsible for letting your client know which part number he needs to add to his

license. At that point, your client will contact Genetec to have their license upgraded with your

integration's certificate. It is important to note that this part number is associated with a per-

certificate cost.

2.5 What can cause my connection attempt to fail?

The Security Center Directory Server will only accept the SDK connections request if:

1. The ApplicationID contained in the certificate is present in the Security Center License key.

2. The number of connected SDK applications is below or equal to the number of allowed connections for this Certificate.

Page 8: Security Center SDK 5.5 Frequently Asked Questions · PDF fileas C#, VB.NET, Managed C++, etc. The Web SDK can be used in the language of your choice. ... Security Center 5.5 SDK |

8 genetec.com | Security Center 5.5 SDK | FAQ

Platform - Alarms, Events and Custom Fields

3.1 Can I create my own custom events in Security Center?

Yes, custom events can be created through the SDK and can then be linked to actions in the Config Tool. Basic event-to-action can also be configured via the SDK.

3.2 Can I create/acknowledge/monitor alarms using the SDK?

Yes, all this is possible using the SDK. You can also receive other alarm data, such as what triggered the alarm.

3.3 Can I filter which events my application receives?

In order to make sure your application is scalable, the SDK provides a mechanism to whitelist which events you're interested in receiving. This way, your application will not be bogged down by events that it isn't interested in.

3.4 What are my options for interacting with Custom Fields?

You can create, query, and modify Custom Fields using the Security Center SDK.

3.5 How can I relay alarms from my third party system to Security Center?

It is highly recommended to trigger custom events in Security Center when you need to relay alarms from a third party system. Triggering custom events should be prioritized over the use of Security Center alarms as it is much more scalable and also provides the end users the ability to link different actions to the event. The SDK can be used to define the custom events, which are a combination of a unique identifier and textual description. In Config Tool, actions can be configured on these custom events, such as triggering an alarm.

3.6 Can we create bookmarks using the SDK?

Yes, you can bookmark video using the SDK. You can also run queries on your bookmarks.

Page 9: Security Center SDK 5.5 Frequently Asked Questions · PDF fileas C#, VB.NET, Managed C++, etc. The Web SDK can be used in the language of your choice. ... Security Center 5.5 SDK |

9 genetec.com | Security Center 5.5 SDK | FAQ

Access Control Integrations

4.1 Can I monitor door and area events using the SDK?

Yes, you can monitor events such as 'Access Granted', 'Access Denied' and 'Door manually unlocked'. The SDK also allow querying for these events.

4.2 Can I query for access control events using the SDK?

Yes, you can query for door, cardholder and credential events.

4.3 Can I modify the cardholders of an access rule?

You can modify the members of an access rule, which means that you can add (or remove) a cardholder or cardholder group to an access rule.

4.4 Can I enroll new cardholders and credentials?

Yes, you can create both cardholders and credentials using the SDK. For cardholders, you can assign them all their relevant properties, including their picture.

4.5 Can I use the SDK to enter custom card formats?

Yes, the SDK can be used to create and store custom card formats.

4.6 Can I use the SDK to manage visitors?

Yes, the SDK can be used to create, check in and check out visitors. You can also use the SDK to easily assign them a new credential.

4.7 Can I use the SDK to lock and unlock doors? What about setting my door to maintenance mode?

You can use the SDK to unlock a door, but you cannot lock the door. It is possible however to enable and disable maintenance mode on the door.

Page 10: Security Center SDK 5.5 Frequently Asked Questions · PDF fileas C#, VB.NET, Managed C++, etc. The Web SDK can be used in the language of your choice. ... Security Center 5.5 SDK |

10 genetec.com | Security Center 5.5 SDK | FAQ

Integrating with Security Desk and Config Tool

5.1 What are my options when integrating with Security Desk or the Config Tool?

When integrating in Security Desk or Config Tool, it's important to give clients a pleasant, consistent user experience. This is why the Genetec SDK provides all the tools necessary for you to create your own Custom Tasks and to display these tasks front and center in the home screen. It's also worth noting that you can add your own icon to the notification bar in the top right corner, and you can create client-side services that constantly run as well. You can also add contextual menus.

5.2 Can we integrate into any existing tasks?

Currently, only the Monitoring task is available for integration. This can be done by using the TileView class, allowing you to display a WPF control in a canvas tile.

Page 11: Security Center SDK 5.5 Frequently Asked Questions · PDF fileas C#, VB.NET, Managed C++, etc. The Web SDK can be used in the language of your choice. ... Security Center 5.5 SDK |

11 genetec.com | Security Center 5.5 SDK | FAQ

Macros

6.1 What is a macro when compared to the rest of the SDK?

A macro is a small piece of C# code that leverages the SDK to execute commands in the system. Generally, macros are set to run on a timer or when a specific event occurs. They do not require a certificate, but they require the 'Macros' license option. A macro provides full access to the SDK functionality, though they run without any user interface, as you may expect.

6.2 How do I deploy a macro?

Macros run on the Directory role, therefore making them very easy to deploy. You do not need to deploy macros on every workstation, they simply run on the Directory Server.

Web-based SDK

7.1 Why use the Web SDK when the .NET SDK is available?

The web SDK is a REST-inspired API that allows developers on non-Windows platforms to leverage the power of the Security Center SDK. This means you can integrate your iOS, Android or Linux application without an intermediate .NET server application.

7.2 How to enable the Web SDK?

The corresponding “Web SDK” license option is required. The administrator creates a Web SDK role. The system is ready to receive Web SDK requests.

Page 12: Security Center SDK 5.5 Frequently Asked Questions · PDF fileas C#, VB.NET, Managed C++, etc. The Web SDK can be used in the language of your choice. ... Security Center 5.5 SDK |

12 genetec.com | Security Center 5.5 SDK | FAQ

7.3 What functionality is available using the Web SDK?

The Web SDK has most of the .NET SDK functionality. This includes receiving alarms and events, creating reports, entity and cardholder management, etc. However, due to its nature, we cannot expose Media functionality through this SDK, as shown in the diagram below.

7.4 How are the requests sent?

All requests are sent through HTTP and authentication is done using Basic HTTP Authentication with a native Security Center user. Therefore, we urge you to setup SSL in order to secure the communication.

Page 13: Security Center SDK 5.5 Frequently Asked Questions · PDF fileas C#, VB.NET, Managed C++, etc. The Web SDK can be used in the language of your choice. ... Security Center 5.5 SDK |

13 genetec.com | Security Center 5.5 SDK | FAQ

SDK Advanced - Media SDK

The Media SDK is available in the SDK Advanced package.

8.1 How can I retrieve video using the SDK?

The Media SDK provides two objects to retrieve video. The first object is the MediaPlayer and the second object is the VideoSourceFilter. The main difference between the two objects is that the MediaPlayer does the rendering operation (it is a WPF UserControl).

8.2 Which object should I use for video analytics?

If you only need to access the video data to save an image or pass it to a video analytic system, the VideoSourceFilter is the recommended object to use (since rendering can be a CPU / memory intensive operation).

8.3 Which control should I use to display video in my application?

If you need to display video in your application, we recommend using the MediaPlayer control.

Page 14: Security Center SDK 5.5 Frequently Asked Questions · PDF fileas C#, VB.NET, Managed C++, etc. The Web SDK can be used in the language of your choice. ... Security Center 5.5 SDK |

14 genetec.com | Security Center 5.5 SDK | FAQ

8.4 In terms of raw video, what do I have access to when using the SDK?

The .Net SDK gives you access to decoded frame data, from either live cameras or archived video. The available formats are RGB32, YUV420 and YUV422. With every frame, you'll also have its timestamp, height and width.

8.5 Can we do audio analytics using the Security Center SDK?

The Security Center SDK does not directly support audio analytics at this time, though 2 options are available. First, you can export the video file, and then run your analytics on the resulting file. Alternatively, you could play the video through the MediaPlayer object, which would output the sound.

8.6 Can we overlay data onto the video stream using the SDK?

You can use the Security Center SDK to add textual and graphical overlays on displayed video. For instance, you can add an image or a logo with transparency as a watermark over a video image or draw shapes on the video image as part of a video analytics integration. An option in the Security Desk allows the users to enable or disable the overlays.

Page 15: Security Center SDK 5.5 Frequently Asked Questions · PDF fileas C#, VB.NET, Managed C++, etc. The Web SDK can be used in the language of your choice. ... Security Center 5.5 SDK |

15 genetec.com | Security Center 5.5 SDK | FAQ

The RTSP Media Gateway

9.1 Can we receive video feeds via RTSP requests?

You can use the RTSP Media Gateway role to access video streams through Security Center. Because the video streams are available through Security Center, you can take advantage of the routing and redirection capabilities offered by the RTSP Media Gateway coupled with the flexibility of raw video received directly from the camera. In addition, you can display the video using any standard viewer that supports the camera's specific encoding. You could then use such a viewer to display video in a web page for example.

9.2 Which license options are required for RTSP Media Gateway?

To use this feature, you need a valid license that includes one or more RTSP connections. Refer to the Number of RTSP Streams option in the Security Center license. You need to know the Globally Unique Identifier (GUID) of the camera to formulate an RTSP request. You can get the camera GUID through the Security Center SDK Base package, for which you need a valid SDK license and a valid certificate.

9.3 What is streamed by the RTSP Media Gateway?

Live and playback video are supported but the RTSP Media Gateway does not support non-video steams such as audio, PTZ commands, overlays and metadata.

Certificates

10.1 Development Certificate

When partners receive the SDK package, all samples include a Generic Development Certificate and part number that can only be used on the SDK development system. These are NOT valid on a production system.

10.2 Production Certificate

The unique Production Part Number & Production Certificate specific to the partner integration is issued by Genetec to the partner once development is complete. This Certificate is to be embedded within the application by the partner. The part number is to be added to any new purchased production system that requires this SDK integration by Genetec.