Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
15 changes: 8 additions & 7 deletions src/ThingSet.Client/ThingSetClient.cs
Original file line number Diff line number Diff line change
Expand Up @@ -36,25 +36,26 @@ public class ThingSetClient : IThingSetClient
{
}

public ThingSetClient(IClientTransport transport, ulong? targetNodeId) : this(transport, new DefaultThingSetSchemaProvider(), targetNodeId)
public ThingSetClient(IClientTransport transport, ulong? targetEui) : this(transport, new DefaultThingSetSchemaProvider(), targetEui)
{
}

public ThingSetClient(IClientTransport transport, IThingSetSchemaProvider schemaProvider) : this(transport, schemaProvider, null)
{
}

public ThingSetClient(IClientTransport transport, IThingSetSchemaProvider schemaProvider, ulong? targetNodeId)
public ThingSetClient(IClientTransport transport, IThingSetSchemaProvider schemaProvider, ulong? targetEui)
{
_transport = transport;
_schemaProvider = schemaProvider;
TargetNodeID = targetNodeId;
TargetEui = targetEui;
}

/// <summary>
/// The target node if this client is forwarding requests to another node.
/// The EUI of the target device if this client is sending requests to a gateway which will
/// forward them to another device.
/// </summary>
public ulong? TargetNodeID { get; }
public ulong? TargetEui { get; }

/// <summary>
/// Connects to the ThingSet device.
Expand Down Expand Up @@ -166,12 +167,12 @@ public IEnumerable<ThingSetNode> GetNodes(ThingSetNodeEnumerationOptions options
byte[] buffer = new byte[4095];
Span<byte> span = buffer;
int length = 0;
if (TargetNodeID.HasValue)
if (TargetEui.HasValue)
{
// prefix the request with node to forward to
span[0] = (byte)ThingSetRequest.Forward;
CborWriter w = new CborWriter(CborConformanceMode.Lax);
w.WriteTextString($"{TargetNodeID.Value:x}");
w.WriteTextString($"{TargetEui.Value:x}");
w.Encode(span.Slice(1));
span = span.Slice(1 + w.BytesWritten);
length = 1 + w.BytesWritten;
Expand Down
2 changes: 1 addition & 1 deletion src/ThingSet.Client/ThingSetClientExtensions.cs
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ public static class ThingSetClientExtensions
{
private const uint NodeID = 0x1d;

public static bool TryGetNodeId(this IThingSetClient thingSetClient, [NotNullWhen(true)] out ulong? nodeId)
public static bool TryGetEui(this IThingSetClient thingSetClient, [NotNullWhen(true)] out ulong? nodeId)
{
object? result;
try
Expand Down
6 changes: 3 additions & 3 deletions src/ThingSet.Common.Transports.Can/AddressClaimEventArgs.cs
Original file line number Diff line number Diff line change
Expand Up @@ -7,13 +7,13 @@ namespace ThingSet.Common.Transports.Can;

public class AddressClaimEventArgs : AddressEventArgs
{
public AddressClaimEventArgs(byte nodeAddress, byte bridgeId, ulong nodeId)
public AddressClaimEventArgs(byte nodeAddress, byte bridgeId, ulong eui)
: base(nodeAddress)
{
BridgeId = bridgeId;
NodeId = nodeId;
Eui = eui;
}

public byte BridgeId { get; }
public ulong NodeId { get; }
public ulong Eui { get; }
}
4 changes: 2 additions & 2 deletions src/ThingSet.Common.Transports.Can/AddressClaimListener.cs
Original file line number Diff line number Diff line change
Expand Up @@ -82,8 +82,8 @@ private void RunPeerAddressesHandler()
{
byte bridgeId = CanID.GetBridge(readFrame.CanId);
ReadOnlySpan<byte> data = readFrame.Data;
ulong nodeId = BinaryPrimitives.ReadUInt64BigEndian(readFrame.Data);
AddressClaimed?.Invoke(this, new AddressClaimEventArgs(peerId, bridgeId, nodeId));
ulong eui = BinaryPrimitives.ReadUInt64BigEndian(readFrame.Data);
AddressClaimed?.Invoke(this, new AddressClaimEventArgs(peerId, bridgeId, eui));
}
}
}
Expand Down