• Articles
  • Api Documentation
Search Results for

    Show / Hide Table of Contents
    • Ng911CadIfLib
      • CadIfConnectionStateDelegate
      • CadIfLoggingSettings
      • CadIfSubscriptionStateDelegate
      • CadIfWebSocketClient
      • EidoReceivedDelegateType
      • EidoRequestReceivedDelegate
      • EidoResponseSentDelegate
      • EidoRetrievalCallbackDelegate
      • MutualAuthenticationDelegate
      • NewSubscriptionDelegate
      • Ng911CadIfServer
      • SubscriptionEndedDelegate
      • WssConectionEndedDelegate
      • WssConnectionAcceptedDelegate
      • WssMessageReceivedDelegate
      • WssMessageSentDelegate

    Class Ng911CadIfServer

    Class that provides a EIDO conveyance interface between the PSAP CHFE and one or more CAD systems. See NENA-STA-024.1a-2023.

    Inheritance
    object
    Ng911CadIfServer
    Inherited Members
    object.Equals(object)
    object.Equals(object, object)
    object.GetHashCode()
    object.GetType()
    object.MemberwiseClone()
    object.ReferenceEquals(object, object)
    object.ToString()
    Namespace: Ng911CadIfLib
    Assembly: Ng911CadIfLib.dll
    Syntax
    public class Ng911CadIfServer

    Constructors

    | Edit this page View Source

    Ng911CadIfServer(X509Certificate2, IPEndPoint, string, string, I3LogEventClientMgr, CadIfLoggingSettings, MutualAuthenticationDelegate, EidoRetrievalCallbackDelegate)

    Constructor

    Declaration
    public Ng911CadIfServer(X509Certificate2 ServerCert, IPEndPoint ServerEndPoint, string WsPath, string HttpsEidoPath, I3LogEventClientMgr LoggingInterface, CadIfLoggingSettings LoggingSettings, MutualAuthenticationDelegate MutualAuthCallback, EidoRetrievalCallbackDelegate RetrievalCallback)
    Parameters
    Type Name Description
    X509Certificate2 ServerCert

    X.509 certificate to use for the HTTPS/WSS web socket listener. The certificate must contain a private key. Required

    IPEndPoint ServerEndPoint

    Specifies the IP address and port number that the Ng911CadIfServer will listen on. The IP address may be IPAddress.Any, IPAddress.IPv6Any, an IPv4 address or an IPv6 address. Required.

    string WsPath

    Specifies the path that clients will use to connect to the Ng911CadIfServer's Web Socket server. Required. For example: /IncidentData/Ent

    string HttpsEidoPath

    Specifies the path that clients will use to access the EIDO Retrieval service. Required.For example: /incidents/eidos.

    I3LogEventClientMgr LoggingInterface

    Specifies the I3LogEventClientMgr object to use for sending NG9-1-1 log events. If this parameter is null then the Ng911CadIfServer object will not send NG9-1-1 log events. If non-null, then the I3LogEventClientMgr object must be configured and running.

    CadIfLoggingSettings LoggingSettings

    Configuration settings for logging I3V3 NG9-1-1 log events. This parameter is required if the LoggingInterface parameter is not null.

    MutualAuthenticationDelegate MutualAuthCallback

    Callback delegate that allows the caller to perform custom authentication of the WebSocket client.

    EidoRetrievalCallbackDelegate RetrievalCallback

    Specifies a callback for a function that the Ng911CadIfServer object will call to retrieve an EIDO from the application (PSAP CHFE) when a functional element (i.e. another PSAP system) attempts to retrieve an EIDO using the EIDO Retrieval Service interface of the Ng911CadIfServer object.

    Methods

    | Edit this page View Source

    SendEido(EidoType)

    Sends a single EIDO document to all subscribers. This method queues the EIDO for transmission and returns immediately. This method should be called when a new EIDO is created or an existing EIDO is updated.

    Declaration
    public void SendEido(EidoType Eido)
    Parameters
    Type Name Description
    EidoType Eido

    EIDO to send

    | Edit this page View Source

    SendEidosToSubscriber(string, List<EidoType>)

    Sends a list of all EIDOs for active incidents to send to a specific subscriber. This method queues the EIDOs and returns immediately.

    Declaration
    public void SendEidosToSubscriber(string strSubscriptionId, List<EidoType> Eidos)
    Parameters
    Type Name Description
    string strSubscriptionId

    Subscription ID of the subscriber.

    List<EidoType> Eidos

    List of EIDOs to send.

    | Edit this page View Source

    Shutdown()

    Performs a graceful shutdown by terminating all subscriptions and stopping the Web Socket listener.

    WARNING: This method attempts to shut down the WebApplication object synchronously. Under certain conditions this can cause this method to block indefinitely. Use the ShutdownAsync() method instead and await its completion instead of using this method.

    Declaration
    public void Shutdown()
    | Edit this page View Source

    ShutdownAsync()

    Performs a graceful shutdown by terminating all subscriptions and stopping the Web Socket listener. Shuts down the WebApplication asynchronously.

    Declaration
    public Task ShutdownAsync()
    Returns
    Type Description
    Task

    Returns an awaitable Task object.

    | Edit this page View Source

    Start()

    Causes the Ng911CadIfServer object to start its HTTPS server listening for Web Socket requests and HTTPS EIDO Retrieval Service requests.

    Declaration
    public void Start()

    Events

    | Edit this page View Source

    EidoRequestReceived

    The Ng911CadIfServer class fires this event when it receives an HTTPS GET request for an EIDO. This event is for testing only. The application is not expected to handle this event.

    Declaration
    public event EidoRequestReceivedDelegate EidoRequestReceived
    Event Type
    Type Description
    EidoRequestReceivedDelegate

    This delegate receives the remote endpoint of the client, the request path and the client's X.509 certificate (if provided).

    | Edit this page View Source

    EidoResponseSent

    The Ng911CadIfServer class fires this event when it sends a response to an HTTPS GET request for an EIDO. This event is for testing only. The application is not expected to handle this event.

    Declaration
    public event EidoResponseSentDelegate EidoResponseSent
    Event Type
    Type Description
    EidoResponseSentDelegate

    This delegate receives the remote endpoint of the client that the EIDO was sent to, the HTTP response code that was sent to the client and the EidoType object that was sent to the client.

    | Edit this page View Source

    NewSubscription

    Fired when a new subscription request is accepted.

    Declaration
    public event NewSubscriptionDelegate NewSubscription
    Event Type
    Type Description
    NewSubscriptionDelegate

    This delegate receives information about the subscriber including its remote endpoint and information from the subscriber's X.509 certificate.

    | Edit this page View Source

    SubscriptionEnded

    Fired when a subscription expires, the subscriber unsubscribes or if the Web Socket connection was terminated abnormally.

    Declaration
    public event SubscriptionEndedDelegate SubscriptionEnded
    Event Type
    Type Description
    SubscriptionEndedDelegate

    This delegate receives information about the subscriber including the reason that the subscription, its remote endpoint and information from the subscriber's X.509 certificate.

    | Edit this page View Source

    WssConnectionAccepted

    The Ng911CadIfServer class fires this event when it accepts a Web Socket connection. This event is for testing only. The application is not expected to handle this event.

    Declaration
    public event WssConnectionAcceptedDelegate WssConnectionAccepted
    Event Type
    Type Description
    WssConnectionAcceptedDelegate

    This delegate receives information about the client including its remote endpoint, the Web Socket sub-protocol and the client's X.509 certificate if available.

    | Edit this page View Source

    WssConnectionEnded

    The Ng911CadIfServer class fires this event when a Web Socket connection has ended. This event is for testing only. The application is not expected to handle this event.

    Declaration
    public event WssConectionEndedDelegate WssConnectionEnded
    Event Type
    Type Description
    WssConectionEndedDelegate

    This delegate receives the remote endpoint of the client.

    | Edit this page View Source

    WssMessageReceived

    The Ng911CadIfServer class fires this event when it receives an EIDO conveyance protocol message. This event is for testing only. The application is not expected to handle this event.

    Declaration
    public event WssMessageReceivedDelegate WssMessageReceived
    Event Type
    Type Description
    WssMessageReceivedDelegate

    This delegate receives the remote endpoint of the client that sent the message to the Ng911CadIfServer object and a string containing the JSON message.

    | Edit this page View Source

    WssMessageSent

    The Ng911CadIfServer class fires this event when it sends an EIDO conveyance protocol message. This event is for testing only. The application is not expected to handle this event.

    Declaration
    public event WssMessageSentDelegate WssMessageSent
    Event Type
    Type Description
    WssMessageSentDelegate

    This delegate receives the remote endpoint of the client that the message was sent to and a string containing the JSON message.

    • Edit this page
    • View Source
    In this article
    Back to top Generated by DocFX