MTConnect.NET-AgentModule-HttpServer 6.3.1-beta

This is a prerelease version of MTConnect.NET-AgentModule-HttpServer.
dotnet add package MTConnect.NET-AgentModule-HttpServer --version 6.3.1-beta
NuGet\Install-Package MTConnect.NET-AgentModule-HttpServer -Version 6.3.1-beta
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="MTConnect.NET-AgentModule-HttpServer" Version="6.3.1-beta" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add MTConnect.NET-AgentModule-HttpServer --version 6.3.1-beta
#r "nuget: MTConnect.NET-AgentModule-HttpServer, 6.3.1-beta"
#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.
// Install MTConnect.NET-AgentModule-HttpServer as a Cake Addin
#addin nuget:?package=MTConnect.NET-AgentModule-HttpServer&version=6.3.1-beta&prerelease

// Install MTConnect.NET-AgentModule-HttpServer as a Cake Tool
#tool nuget:?package=MTConnect.NET-AgentModule-HttpServer&version=6.3.1-beta&prerelease

MTConnect.NET Logo

MTConnect HTTP Server Agent Module

This Agent Module implements a MTConnect REST Protocol Http server

Configuration

 - http-server:
    hostname: localhost
    port: 5000
    allowPut: true
    indentOutput: true
    documentFormat: xml
    accept:
      text/xml: xml
      application/json: json-cppagent
    responseCompression:
    - gzip
    - br
    files:
    - path: schemas
      location: schemas
    - path: styles
      location: styles
    - path: styles/favicon.ico
      location: favicon.ico
  • hostname - The server IP Address or Hostname to bind to.

  • port - The port number the agent binds to for requests.

  • accept - Maps HTTP Accept Headers to the corresponding Document Format ID

  • responseCompression - Sets the List of Encodings (ex. gzip, br, deflate) to pass to the Accept-Encoding HTTP Header

  • version - Sets the MTConnect Version to use for the response document. This can be used to request a document using an older version for legacy clients

  • allowPut - Allow HTTP PUT or POST of data item values or assets.

  • allowPutFrom - Allow HTTP PUT or POST from a specific host or list of hosts.

  • indentOutput - Sets the indentation of the response document. True = Indent. False = Do not Indent

  • outputComments - Sets the default response document comments output. Comments contain descriptions from the MTConnect standard

  • outputValidationLevel - Sets the default response document validation level. 0 = Ignore, 1 = Warning, 2 = Strict

  • files - Sets the configuration for Static Files that can be served from the Http Server.

    • path - The location of the files on the server (where the Agent is running)
    • location - The path to match in the requested URL
  • tls - Sets the TLS settings

    • pfx - The PFX certificate settings

      • certificatePath - The path to the (.pfx) file
      • certificatePassword - The certificate password
    • pem - The PEM certificate settings

      • certificatePath - The path to the (.pem) file
      • privateKeyPath - The path to the key containing the private key
      • privateKeyPassword - The certificate password
      • certificateAuthority - The path to the (.pem) file containing the Certificate Authority
    • verifyClientCertificate - Toggles whether Client Certificate chains are verified ("true" or "false")

Example 1

Use defualt configuration

 - http-server:

Example 2

Specify the port

 - http-server:
    port: 5001

Example 3

Specify the port and hostname to an IP Address

 - http-server:
    hostname: 192.168.1.145
    port: 5001

Example 4

Specify the port and hostname

 - http-server:
    hostname: DESKTOP-HV74M4N
    port: 5001

Example 4

Specify the port and hostname with TLS (PFX Certificate)

 - http-server:
    hostname: DESKTOP-HV74M4N
    port: 5001
    tls:
      pfx:
        certificatePath: c:\certs\mtconnect-testing.pfx
        certificatePassword: mtconnect

Example 5

Specify the port and hostname with TLS (PEM Certificate)

 - http-server:
    hostname: DESKTOP-HV74M4N
    port: 5001
    tls:
      pem:
        certificateAuthority: c:\certs\rootCA.crt
        certificatePath: c:\certs\mtconnect-testing.crt
        privateKeyPath: c:\certs\mtconnect-testing.key
        privateKeyPassword: mtconnect

Example 6

Specify with custom Accept headers

 - http-server:
    accept:
      text/xml: xml
      application/json: json-cppagent

Contribution / Feedback

  • Please use the Issues tab to create issues for specific problems that you may encounter
  • Please feel free to use the Pull Requests tab for any suggested improvements to the source code
  • For any other questions or feedback, please contact TrakHound directly at info@trakhound.com.

License

This application and it's source code is licensed under the MIT License and is free to use.

Product Compatible and additional computed target framework versions.
.NET net5.0 was computed.  net5.0-windows was computed.  net6.0 is compatible.  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 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 is compatible.  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. 
.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 is compatible.  net462 is compatible.  net463 was computed.  net47 is compatible.  net471 is compatible.  net472 is compatible.  net48 is compatible.  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. 
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 MTConnect.NET-AgentModule-HttpServer:

Package Downloads
MTConnect.NET-Applications-Agents

MTConnect.NET-Applications-Agents contains classes to fully implement an MTConnect Agent application. Supports MTConnect Versions up to 2.3. Supports .NET Framework 4.6.1 up to .NET 8

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
6.3.1-beta 50 4/24/2024
6.3.0-beta 73 4/17/2024
6.2.2-beta 59 4/5/2024
6.2.1-beta 59 4/3/2024
6.2.0-beta 51 3/27/2024
6.1.3-beta 59 3/15/2024
6.1.2-beta 62 3/15/2024
6.0.11-beta 77 2/2/2024
6.0.10-beta 62 1/26/2024
6.0.9-beta 93 12/28/2023
6.0.8-beta 67 12/27/2023
6.0.7-beta 91 12/19/2023
6.0.5-beta 85 12/14/2023
6.0.3-beta 93 12/12/2023
6.0.1-beta 80 12/7/2023
6.0.0-beta 81 12/7/2023