Giter Club home page Giter Club logo

Comments (3)

fh1ch avatar fh1ch commented on July 28, 2024

Hi @goliatone

Also a big thanks for your input on this issue.

Yes, the error handling is not really existent at this point. However, I'm not really sure how to tackle this, but letting the developer handle it is certainly the right way.

On the other hand, I don't think that closing the server on error is helpful in this regard, as we have to differentiate between transactional errors (failure when sending a message) and initialization errors.

server.on('error', function(err) {
  server.close();
});

Cheers

from node-bacstack.

goliatone avatar goliatone commented on July 28, 2024

@fh1ch I forked the project with the idea of making a fix I could use and then make a PR with the implementation as an idea for you. I faced two unrelated issues that prevented me from doing so:

  • the code base is structured in a way that would make implementing error handling property more involved than ideal
  • the library, ultimately, did not work.

I ran the whoIs function and that returned the expected results. Later when trying to read/write properties the library/connection would timeout. I honestly did not spend any cycles looking into this. I tried another library that wraps a C library, it worked, so I went with node-bacnet . I think it might be a segmentation related issue.

It's a bit of a shame since I had started using this library as the basis of a node-red package. I moved it to use the other node-bacnet

All in all, thanks for your work.

from node-bacstack.

fh1ch avatar fh1ch commented on July 28, 2024

Hi @goliatone

Thank you very much for the feedback and again, sorry for the delayed reaction here...

As the implementation of this project started with a strong personal need for having readPropertyMultiple in place, all the other function came a bit short and due to missing test coverage of them, would break sometimes. That's also one of the reason, why the version number is still beta.

However, a lot has changed and the encoding part is now more or less feature complete and the test coverage increased to almost 80%. This means that this library will reach a stable state in the next couple of weeks.

Anyway, errors on the transport layer are now passed to the client so each project can decide what to to (e.g. unload the client using the new client.close() function). I will therefore close this issue.

from node-bacstack.

Related Issues (20)

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.