onboardapidotnet  9.10.0
onboardapidotnet Documentation

Installation

To use the dotnet wrapper of the onboardapi, download the nuget package.

Example

using System;
using System.Threading;
using onboardapidotnet;
namespace HelloWorldExample
{
class CallbacksDeviceService : M_Device_IService
{
public override void CmdEnableDevice(bool IsEnabled)
{
Console.WriteLine(@"Received CmdEnableDevice from client(s)");
}
public override void CmdIsDeviceAlive()
{
Console.WriteLine(@"Received CmdIsDeviceAlive from client(s)");
}
public override void CmdSetDeviceMode(M_Common_OperationModeType Mode)
{
Console.WriteLine(@"Received CmdSetDeviceMode from client(s)");
}
public override void CmdSetValue(string Id, M_Common_PropertyType Value)
{
Console.WriteLine(@"Received CmdSetValue from client(s)");
}
public override void CmdSetValueIncrementally(string Id, M_Common_PropertyType Value)
{
Console.WriteLine(@"Received CmdSetValueIncrementally from client(s) " + Id);
}
public override void CmdShutdownDevice() {
Console.WriteLine(@"Received CmdShutdownDevice from client(s)");
}
}
class CallbacksDeviceClient : M_Device_IClient
{
public override void ReportDeviceSettings(M_Device_DeviceSettingsType Settings)
{
Console.WriteLine(@"Received ReportDeviceSettings from the service");
}
public override void ReportDeviceStatus(M_Device_DeviceStatusType Status, bool IsRemoved)
{
Console.WriteLine(@"Received ReportDeviceStatus from the service");
}
public override void ReportValue(string KeyId, M_Common_PropertyType Value, bool IsRemoved)
{
Console.WriteLine(@"Received ReportValue from the service");
}
public override void ResponseValue(string Id, M_Common_PropertyType Value)
{
Console.WriteLine(@"Received ResponseValue from the service");
}
}
class Program {
static void Main(string[] args)
{
Console.WriteLine(@"start program");
string serviceName = "MyExampleServiceName";
int domainId = 6;
// Service
CallbacksDeviceService serviceCallbacks = new CallbacksDeviceService(); // or pass "this"
M_Device_Service deviceService = M_Device_Service.create(domainId, serviceName, serviceCallbacks);
// Client
CallbacksDeviceClient clientCallbacks = new CallbacksDeviceClient(); // or pass "this"
M_Device_Client deviceClient = M_Device_Client.create(domainId, serviceName, clientCallbacks);
while (true)
{
Thread.Sleep(1000);
// Service sends a message to its client(s).
M_Device_DeviceStatusType status = new M_Device_DeviceStatusType();
status.IsEnabled = true;
deviceService.send().ReportDeviceStatus(status, false);
// Client sends a message to the service.
M_Common_OperationModeType mode = new M_Common_OperationModeType();
mode.Name = "HelloWorld";
deviceClient.send().CmdSetDeviceMode(mode);
}
}
}
}