TrafficCom.V3
1.0.0
dotnet add package TrafficCom.V3 --version 1.0.0
NuGet\Install-Package TrafficCom.V3 -Version 1.0.0
<PackageReference Include="TrafficCom.V3" Version="1.0.0" />
paket add TrafficCom.V3 --version 1.0.0
#r "nuget: TrafficCom.V3, 1.0.0"
// Install TrafficCom.V3 as a Cake Addin
#addin nuget:?package=TrafficCom.V3&version=1.0.0
// Install TrafficCom.V3 as a Cake Tool
#tool nuget:?package=TrafficCom.V3&version=1.0.0
TrafficCom.V3
Taiwanese urban traffic communication protocol V3 .NetCore Implementation (都市交通控制通訊協定)
Only the variable message sign control is implemented.
Usage
The service can be accessed through both V3Client or MonitorClient interface.
MonitorClient provides a clean simple control interface for updating/querying variable message sign. Not all functionalities are supported.
using var v3Client = new V3Client(ip, port, timeout);
var monitorClient = new MonitorClient(v3Client);
await monitorClient.SendSingleText(new MonitorTextEntry
{
Id = 1,
Text = "Test",
Show = true,
TextColor = MonitorColor.Red,
BackgroundColor = MonitorColor.Green,
BlinkInterval = MonitorBlinkInterval.S0P5,
HBound = 0,
VBound = 0,
HSpace = 0,
VSpace = 0,
});
V3Client provides a direct messaging interface, the user is expected to understand the content of each messages.
All messages for variable message sign control is available and named after the command code. For instance the message class for command AFH+10H will be V3RequestXAFX10.
using var v3Client = new V3Client(ip, port, timeout);
v3Client.OnMessageReceived += async (sender, con, request) => {
...Handle request
//Reply success update
await sender.SendAsync(new V3RequestX0FX80());
}
// Send clear current display and wait for success update response
await _client.SendAndWaitForReplyAsync<V3RequestX0FX80>(new V3RequestXAFX14());
// Send clear current display and ignore response, response will go to OnMessageReceived
await _client.SendAsync(new V3RequestXAFX14());
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | 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 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. |
-
net6.0
- No dependencies.
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.0 | 97 | 1/24/2024 |