An advice on development and more

This chapter describes a possible way of handling the integration with the agrirouter. It is not the only way of doing it, of course. For a valid and well communicated agrirouter integration, you should follow a mixture of business and development decisions:

  1. Get basic knowledge: First, read the basic concepts of agrirouter architecture and ecosystem; described in this documentation.

  2. Decide what you want to implement:

    1. Read the several non-agrirouter-relevant technical message types (e.g. TaskData, Images, Telemetry) as a general overview of possible capabilities.

    2. Decide which messages are relevant for you and which information you could consume or provide. This way, you could e.g. forward the requirement for a TaskController Integration or a Camera attachment possibility at a CU to the relevant departments and it’s more common that it will be there in time.

    3. Synchronize your plans: Depending on your role in the company make sure, management, marketing, sales and developers have the same idea of the upcoming product

  3. Decide, how to implement: Once you made these decisions, let’s not care about the messages for a while and work out a possible architecture:

    1. Read about the onion principle of communication and the command flow.

    2. Check the general concepts around agrirouter like Protobuf, MQTT, REST and EFDI

    3. Check for libraries and frameworks e.g. at the DKE GitHub.

    4. Decide, how to build your architecture to make your system compatible for agrirouter or to build an interface service.

  4. Create an application in agrirouter, to receive applicationID and CertificationVersionID

  5. Start Development:

    1. Build your application and read about the several messages in detail to implement them

  6. Do pre-release work

    1. Pre-create Solution-Finder entry: Even though your app is not yet tested, prepare the Solution-Finder form for the release of your product. Should ideally be done by a sales or management person.

    2. Check the Solution-Finder entry: Should be done by a developer: Read the Solution-Finder entry and make sure, you support all the described functionality as described in the Solution-Finder entry and in the integration guide or linked documents.

  7. Test your app: agrirouter provides the possibility to select test users for a not yet certified app. Select some customers or your internal staff to check if your app runs smooth with agrirouter and with common other endpoints. For a farming software, a corresponding Communication Unit could be such an endpoint

  8. Certify your app: Select your desired certification company and let your app be certified for public release.

  9. Deploy productive app: Setup your application in the productive environment and adjust all settings relevant to contact the productive environment.

  10. Test productive: Using a test account make sure that your application works on the productive environment as supposed

  11. Release to public: Remove the "coming soon" badge from your Solution-Finder entry and let people know that your app is up and running.