Z9.Protobuf.Community
1.0.18
dotnet add package Z9.Protobuf.Community --version 1.0.18
NuGet\Install-Package Z9.Protobuf.Community -Version 1.0.18
<PackageReference Include="Z9.Protobuf.Community" Version="1.0.18" />
<PackageVersion Include="Z9.Protobuf.Community" Version="1.0.18" />
<PackageReference Include="Z9.Protobuf.Community" />
paket add Z9.Protobuf.Community --version 1.0.18
#r "nuget: Z9.Protobuf.Community, 1.0.18"
#:package Z9.Protobuf.Community@1.0.18
#addin nuget:?package=Z9.Protobuf.Community&version=1.0.18
#tool nuget:?package=Z9.Protobuf.Community&version=1.0.18
Z9/Open Community Profile
This repository contains the Google Protobuf specification for the Z9/Open binary protocol - Community Profile.
Overview
The Community Profile is a profile of Z9 Security's Z9/Open protocol, designed to be an efficient, binary socket communications between an access control panel and a host.
See Also
- Z9/Flex Community Profile - OpenAPI specification for the Z9/Flex JSON/REST API Community Profile
Z9/Flex and Z9/Open
For more information about the commercial version of Z9/Flex, visit z9flex.com.
For more information about the commercial version of Z9/Open, visit z9open.com.
Z9/FL=X is a registered trademark of Z9 Security. z9/op=n is a registered certification mark of Z9 Security.
License
Apache 2.0 - see LICENSE for details.
Files
SpCoreProto.proto- Top-level protocol messages (identification, events, database changes, device actions)SpCoreProtoData.proto- Data model definitions (credentials, devices, schedules, etc.)SpCoreProtoElements.proto- Common element definitionsSpCoreProtoEnums.proto- Enumeration definitions
Usage
The .proto files can be used with Google Protobuf tools (protoc) to:
- Generate serialization/deserialization code in various languages, for either side of the communications (host, panel)
.NET SDK
The dotnet/ folder contains a C# SDK for Z9/Open Community Profile:
Z9.Protobuf.Community- .NET Standard 2.0 library with protobuf-generated classes, host-side connection management, and controller-sideSpCoreHostConnectionZ9.Protobuf.Community.Test- Unit tests
Controller-Side Connection
SpCoreHostConnection provides controller-side TCP/TLS connection, identification, ping, message dispatch, and reconnection with exponential backoff (5s to 160s, resets after successful identification). Implement ISpCoreHostConnectionObserver (or extend SpCoreHostConnectionObserverBase) to receive callbacks.
Logging
The library logs internally via log4net. The consuming application must configure log4net — without configuration, library log output is silently discarded.
Publishing to NuGet
Pushing a version tag triggers the CI pipeline to build, test, and publish the Z9.Protobuf.Community package to nuget.org:
Find the latest version and tag the next:
git tag --sort=-v:refname | head -1
git tag v1.0.2
git push origin v1.0.2
Note: This requires a NUGET_API_KEY secret configured in the repository's GitHub Actions settings.
Verify the package is published:
curl -s https://api.nuget.org/v3-flatcontainer/z9.protobuf.community/index.json
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
| .NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
| .NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
| .NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
| MonoAndroid | monoandroid was computed. |
| MonoMac | monomac was computed. |
| MonoTouch | monotouch was computed. |
| Tizen | tizen40 was computed. tizen60 was computed. |
| Xamarin.iOS | xamarinios was computed. |
| Xamarin.Mac | xamarinmac was computed. |
| Xamarin.TVOS | xamarintvos was computed. |
| Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.0
- BouncyCastle.Cryptography (>= 2.5.1)
- Google.Protobuf (>= 3.29.3)
- log4net (>= 3.0.4)
- Microsoft.CSharp (>= 4.7.0)
- Microsoft.Win32.Registry (>= 5.0.0)
- Newtonsoft.Json (>= 13.0.3)
- RestSharp (>= 112.1.0)
- System.Text.Json (>= 8.0.5)
- TimeZoneConverter (>= 7.0.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 1.0.18 | 121 | 3/20/2026 |
| 1.0.17 | 98 | 3/20/2026 |
| 1.0.16 | 96 | 3/20/2026 |
| 1.0.15 | 106 | 3/20/2026 |
| 1.0.14 | 102 | 3/20/2026 |
| 1.0.13 | 115 | 2/10/2026 |
| 1.0.9 | 115 | 2/8/2026 |
| 1.0.7 | 112 | 2/6/2026 |
| 1.0.6 | 116 | 2/6/2026 |
| 1.0.5 | 113 | 2/6/2026 |
| 1.0.4 | 113 | 2/6/2026 |
| 1.0.3 | 115 | 2/5/2026 |
| 1.0.2 | 111 | 2/5/2026 |
| 1.0.1 | 110 | 2/5/2026 |
| 1.0.0 | 115 | 2/5/2026 |