marvingrieger/ioBroker.haassohn

Please add you adapter to our repository

Closed this issue · 3 comments

We saw your adapter and if it is ready please request that it is added to the repository. With this it becomes available for all users. Please consult https://github.com/ioBroker/ioBroker.repositories#add-a-new-adapter-to-the-latest-repository and the following sections for more details.
If you need help, contact us in the forum https://forum.iobroker.net/ or in the developer chat https://github.com/iobroker-community-adapters/info .

Thank you for your support.

  • Your github repository must have name "ioBroker.". B is capital in "ioBroker", but in the package.json the name must be low case, because npm does not allow upper case letters. Your repository must have "topics". Add these with Manage topics.
  • Do not use in the title the words "ioBroker" or "Adapter". It is clear anyway, that it is adapter for ioBroker.
  • title in io-package.json (common) is simple short name of adapter in english. titleLang is object that consist short names in many languages. Lang ist not german Länge, but english LANGuages.
  • Adapter needs to have a README.md with description, detail information and changelog. English is mandatory. Other languages are welcome. See Example of README.md.
  • In README.md, there must be a link to the device or the manufacturer's website. Devices must have a photo. Services do not require a photo, but are still welcome.
  • Adapter must have a predefined license.
  • Please remove www, widgets and docs directories (admin/tab_m.html, admin/custom_m.html) if not used.
  • Adapter needs to have at least Adapter basic testing (installing, running) using Travis-CI (optionally and Appveyor). More information in Forum from apollon77 (Just take from other adapters the samples)
  • Define one of the types in io-package.json.
  • Define one of the connection types (if applied) in io-package.json.
  • All states must have according valid roles (and not just "state")
  • Include "author" in io-package.json and "authors" in io-package.json. See here.
  • Adapter needs to be available as package on npm. See How to publish on npm
  • iobroker organisation must be added as owner to npm package. Why and how to do that.
  • Add your adapter into the list (first latest and after that into stable, when tested). Examples of entries you can find here.
  • No new adapters will be accepted to repo without admin3 Configuration dialog. Admin2 dialog is optional!
  • Check and Follow the Coding best practices listed below
  • Forum thread with question to test the adapter.
  • Some feedback on forum.
  • Important Discovery function! If device can be found automatically (USB, IP) it must be implemented in discovery adapter.

Has to be fixed

Should be fixed

  • I would recommend you to migrate testing from travis/appveyor to GH actions, which is a lot faster and of course integrated

  • adapter startup unit test is now deprecated, so you can remove https://github.com/marvingrieger/ioBroker.haassohn/blob/master/test/unit.js and

    "test:unit": "mocha test/unit --exit",
    except you will define your own unit tests in the near future

  • You should really avoid using var like

    var deviceStates = []; // Used to internally buffer the retrieved states before writing them to the adapter
    and everywhere else in your code. Modern javascript has const and let, for such patterns I can really recommend you the eslint module which takes care of this

  • module.parent is deprecated

    if (module && module.parent)
    , better check module === require.main

  • you have a very complex adapter disabling handling in your code, you can simply call adapter.terminate this will stop the execution without disabling the adapter, which is pretty much what you do in your code

Adapter is now added