Giter VIP home page Giter VIP logo

mtconnect-agent's People

Contributors

andrewshatnyy avatar bcampbell-ts avatar dskurbatov avatar micheletedeschi avatar rosmirehman avatar russwaddell avatar shakthimaan avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

mtconnect-agent's Issues

List of available and missing features

Hi,

I would like to work on the JS Agent and improve as required (with Pull request!).
Would it be possible to define how many features are implemented and how many are remaining in agent?

Thanks

License.txt

Verify license is appropriate. C++ Agent is licensed under Apache; is there a standard license for Node.js whether it is Apache or something else? I don’t think MTConnect Implementer license was intended for this use.

npm ERR! Failed at the [email protected] install script.

npm ERR! Failed at the [email protected] install script.

Anyone else seen this when installing on a Window's machine? I need a solution? Thanks.

Log..

..\fs-ext.cc(195): error C3861: 'fcntl': identifier not found [C:\Users\MURPHYJ\Documents\GitHub\mtconnect-agent\node_modules\fs-ext\build\fs-ext.vcxproj]
..\fs-ext.cc(374): error C3861: 'fcntl': identifier not found [C:\Users\MURPHYJ\Documents\GitHub\mtconnect-agent\node_modules\fs-ext\build\fs-ext.vcxproj]
gyp ERR! build error
gyp ERR! stack Error: C:\Program Files (x86)\MSBuild\14.0\bin\msbuild.exe failed with exit code: 1
gyp ERR! stack at ChildProcess.onExit (C:\Users\MURPHYJ\AppData\Roaming\npm\node_modules\npm\node_modules\node-gyp\lib\build.js:258:23)
gyp ERR! stack at emitTwo (events.js:106:13)
gyp ERR! stack at ChildProcess.emit (events.js:191:7)
gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:215:12)
gyp ERR! System Windows_NT 6.1.7601
gyp ERR! command "C:\Program Files\nodejs\node.exe" "C:\Users\MURPHYJ\AppData\Roaming\npm\node_modules\npm\node_modules\node-gyp\bin\node-gyp.js" "configure" "build"
gyp ERR! cwd C:\Users\MURPHYJ\Documents\GitHub\mtconnect-agent\node_modules\fs-ext
gyp ERR! node -v v6.10.2
gyp ERR! node-gyp -v v3.6.2
gyp ERR! not ok
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! [email protected] install: node-gyp configure build
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the [email protected] install script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR! C:\Users\MURPHYJ\AppData\Roaming\npm-cache_logs\2018-02-08T14_09_08_813Z-debug.log

Agent makes HTTP connection to adapter

The connectToDevice function contains the following:

  const response = request(`http://${ip}:${port}`)
  response.pipe(processSHDR(uuid))

This is connecting to the adapter using an HTTP client. While this could work, it appears it doesn't since most adapters don't send any HTTP headers.

The agent generates the following error:

{ Error: Parse Error
    at Error (native)
    at Socket.socketOnData (_http_client.js:363:20)
    at emitOne (events.js:96:13)
    at Socket.emit (events.js:188:7)
    at readableAddChunk (_stream_readable.js:176:18)
    at Socket.Readable.push (_stream_readable.js:134:10)
    at TCP.onread (net.js:547:20) bytesParsed: 0, code: 'HPE_INVALID_CONSTANT' }

HPE_INVALID_CONSTANT meaning HTTP Parse Error

handle escape character for SHDR "|"

Hi,
I would like to request to support passing "|" as a character to agent from adapter.
The current format in C++ Agent will detect it as a separator and it will not send it as part of the string to agent.

Thanks

Data Item type names with more than 1 underscore are truncated

For example:
From Devices.xml

<DataItem category="SAMPLE" id="z_pulse_code_temperature" name="z_pulse_code_temperature" type="x:Z_PULSE_CODE_TEMPERATURE" />

View in agent /probe

<dataItem category="SAMPLE" id="MJo2ow0SP5" name="z_pulse_code_temperature" type="x:Z_PULSE_CODE_TEMPERATURE"/>

View in agent /current or /sample

 <ZPulse dataItemId="MJo2ow0SP5" timestamp="2017-11-08T14:30:42.755Z" sequence="801" name="z_pulse_code_temperature">32</ZPulse>

x:Z_PULSE_CODE_TEMPERATURE became ZPulse instead of expected ZPulseCodeTemperature

The problem is in pascalCase function which is hard coded to handle a single underscore.
I'll submit a PR to fix.

Test with new asset types for version 1.5 to support SPEC-OPS

There are some new asset types that will need to be supported. They will also need to follow the new asset device association, where the asset ID for instances will be specific to a device and the assets will support the new target specification.

In the new asset API (yet to be defined) we will need to allow for filtering by the following:

  • Asset type
  • Asset archetype
  • All archetypes
  • All Instances for an archetype
  • All Instances for a device
  • Assets whose source is a device
  • Assets targeted to a device
  • Assets by type (CuttingTool, Part, Process, etc...)

These additional parameters will need to be provided to the asset request. This needs to be prototyped. The priority is to store instances by device and allow for requesting the assets by type and device (source).

Current agent buffer size is 2^17, should be similar size

We need to make the buffer size at least 32k by default to allow for adequate space in the circular buffer. We need to test the amount of memory this takes for initial configuration.

The current default size of 10 is far too small.

Processing of SSDP search responses is malformed

  1. A response to M-SEARCH will always have a USN component. The USN component will always start with the text uuid: (per UPnP Device Architecture 1.0 Document Revision Date 15 October 2008). The parseHeaders function improperly does not account for the leading uuid:

  2. A response to M-SEARCH also has a LOCATION component which contains a URL to the UPnP description of the root device. The parseHeaders function does not allow the URL to contain the protocol, as it should. It is only looking for ip:port and will not function correctly if given http://ip:port

Simulator input files missing

Commit 45bc869 updated the simulator files, but neglected to include the new input files.
Missing are:
./adapters/simulator2/public/Mazak03.log
./adapters/simulator/public/Mazak01.log

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.