EidoLib 1.0.1

dotnet add package EidoLib --version 1.0.1
                    
NuGet\Install-Package EidoLib -Version 1.0.1
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="EidoLib" Version="1.0.1" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="EidoLib" Version="1.0.1" />
                    
Directory.Packages.props
<PackageReference Include="EidoLib" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add EidoLib --version 1.0.1
                    
#r "nuget: EidoLib, 1.0.1"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package EidoLib@1.0.1
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=EidoLib&version=1.0.1
                    
Install as a Cake Addin
#tool nuget:?package=EidoLib&version=1.0.1
                    
Install as a Cake Tool

Introduction

The EidoLib class library project provides model classes for the Emergency Incident Data Object (EIDO) JSON schemas. The EIDO is a JSON schema used in NG9-1-1 applications to exchange information about an emergency call and/or incident. This is a .NET C# class library.

The following document specifies the data schemas of the EIDO.

NENA Standard for Emergency Incident Data Object (EIDO), National Emergency Number Association (NENA) Agency Systems Committee, EIDO JSON Working Group, NENA-STA-021.1a-2022, April 19, 2022.

The GitHub repository called NENA911/EIDO-JSON provides the YAML schema definitions for the EIDO.

The EidoLib class library also contains model classes for the WebSockets subscribe/notify method of EIDO conveyance specified in the following document.

NENA Standard for the Conveyance of Emergency Incident Data Objects (EIDOs) between Next Generation (NG9-1-1) Systems and Applications, National Emergency Number Association (NENA) 9-1-1 Core Services Committee, EIDO Conveyance Working Group, NENA-STA-024.1a-2023, January 15, 2023.

The GitHub repository called NENA911/WebSocket-Subscribe-Notify provides the YAML schema definitions for the WebSocket subscribe/notify interface.

The classes in this class library provide a C# implementation of the schemas defined in the NENA911/EIDO-JSON GitHub project. These classes can be used to de-serialize EIDO JSON documents into model classes and to serialize EIDO model classes into JSON documents.

External Dependancies

This class library uses the NewtonSoft.Json NuGet package for serialization and de-serialization.

Documentation

The documentation pages project for this project is called EidoLibDocumentation. The documentation web site includes class documentation and articles that explain usage of the classes in this library.

Installation

This class library is available on NuGet.

To install it from the .NET CLI type:

dotnet add package EidoLib --version 1.0.1

To install using the NuGET Package Manager Command window type:

NuGet\Install-Package EidoLib -Version 1.0.1

Or, you can install it from the Visual Studio GUI.

  1. Right click on the project
  2. Select Manage NuGet Packages
  3. Search for EidoLib
  4. Click on Install

Project Structure

ClassLibrary Directory

This directory contains the project files for the EidoLib project and the following subdirectories.

Directory Description
Eido Contains the model classes for the EIDO main JSON document.
NiemTypes Contains the model classes for all of the NIEM types used in an EIDO JSON document.
WebSockets Contains the model classes for the WebSocket subscribe/notify functionality specified in Section 2.1 of NENA-STA-024.1a-2023.

Testing

This directory contains the following subdirectories.

Directory Description
EidoUnitTests xUnit unit test project for the EidoLib class library
Product Compatible and additional computed target framework versions.
.NET net7.0 is compatible.  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. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (1)

Showing the top 1 NuGet packages that depend on EidoLib:

Package Downloads
Ng911CadIfLib

A .NET cross-platform class library that implements the EIDO Conveyance Web Sockets server interface between a PSAP CHFE and CAD systems

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
1.0.1 312 6/29/2023
1.0.0 229 4/24/2023

1.0.1 -- Added the SubNotMsgTypes class to the WebSocketSubNot namespace