mpostol on 6.5.5.39885
Whenever it makes sense, use th… (compare)
mpostol on master
Regenerate models using UA-Mode… Regenerate models using UA-Mode… Merge pull request #664 from mp… (compare)
ReferenceApplication
containing ready to use binaries. Unzip and run exe file to get started. Nuget package will be created after getting more feedback from MQTT and AMQP testing, which are in progress.
Not sure if I have got the question. Filtering is implemented in the library, so you should not care about it. Filtering and data content is setup in the configuration.
You should use the couple (RepositoryGroup, ProcessValueName) to find where the value must be written. If your HMI interface need additional configuration the provided configuration should be expanded. For example:
RepositoryGroup = Boiler.1
ProcessValueName = PipeIn_Presure
You can use the simulator to display generated values on selected picture or place on the screen - don't touch the MessageHandlers configuration to make sure you are getting everything form the producer.
master
. It needs harmonization of any derived libraries as the result of some minor architecture changes. The work on Rel 4 is underway so I cannot guarantee that the API will not change in future, but once more it is to be more stable for now.
repositoryGroup
, and while it works locally (on single machine) I ran into issues with receiving this data on mobile device in local network I'll try to debug it now. I tried enabling events on EventSource
of UDP message handler but I didn't receive any... I wonder whether it has to do with Mono's implementation of these.
Thanks for update. The critical point for logging the network traffic is application configuration, there is the switch:
<add name="System.Net.Sockets" value="Information" />
<!-- value: Required String attribute. Sets the verbosity of the output.
Legitimate values are Critical, Error, Verbose, Warning, and Information.
-->
<!-- maxdatasize: Optional Int32 attribute. Sets the maximum number of bytes of network data included in each line trace.
The default value is 1024.
-->
<!-- tracemode Optional String attribute. Set to includehex to show protocol traces in hexadecimal and text format.
Set to protocolonly to show only text. The default value is includehex.
-->
</switches>
change Information
to All
UDPMessageHandlerSemanticEventSource
and while in WPF application it works, on mono it doesn't. I'm also not sure how I'm suppposed to obtain its instance since Log
property is internal. For now I've been using reflection to test (but it wasn't very helpful)..xml
config files sufficient? I'm now adding one more DataSetConfiguration
with only AssociationName
and RepositoryGroup
changed. Additionaly I'm adding ProducerAssociationConfiguration
entry with updated AssociationName
to match the ones defined in DataSetConfiguration
IEncodingFactory
is implemented by the code-base as .NET Standards so you can use it instead of implementing it. I don't see any reasons to rework this lib , or maybe I am not following you.
Wireshark
. Let's think about a piece of software converting the producer configuration to consumer configuration - for example as a unit test. Yes .xml file consist all details for selected producer or consumer. In a few days I should have the configuration generator for the simulator I am working on. Maybe it helps. Lets think about conf call or F2F meeting - details we exchange by separate conversation by email.
IEncodingFactory
is that it forces repositoryGroup
which is undesirable, I just made my own without this check.IEncodingFactory
is required in case you need to provide a data converted.The
/// <summary>
/// Updates the value converter.
/// </summary>
/// <param name="binding">An object responsible to transfer the value between the message and ultimate destination in the repository.</param>
/// <param name="repositoryGroup">The repository group.</param>
/// <param name="sourceEncoding">The source encoding.</param>
/// <exception cref="ArgumentOutOfRangeException">
/// repositoryGroup
/// or
/// binding
/// </exception>
void IEncodingFactory.UpdateValueConverter(IBinding binding, string repositoryGroup, UATypeInfo sourceEncoding)
is the pace where you can assign to the Converter
property used by the library to handle additional type conversion if needed.
IBinding
definition.