Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add a new protocol #46

Open
gabiSRC opened this issue Apr 10, 2018 · 3 comments
Open

Add a new protocol #46

gabiSRC opened this issue Apr 10, 2018 · 3 comments

Comments

@gabiSRC
Copy link

gabiSRC commented Apr 10, 2018

Hello there!

I am currently creating a new protocol and I have an issue.

I added the protocol to the docker-compose file and it's building and being run correctly.

The issue I have is that the protocol is not displayed along the Dummy and BLE protocol in the device manager's settings.
Another weird thing is that I removed the BLE protocol from my docker-compose file but it is still displayed.

In the devices page, I got the device found by the protocol but I cannot register it to anything thing while I can register the dummy device to the Dummy type.

How the protocols are generated and how can I register my device from my protocol to a device type?

I based my protocol on the dummy protocol: I use the following constants:
AGILE_<my-protocol-name>PROTOCOL_BUS_NAME = "org.eclipse.agail.protocol.<MY-PROTOCOL-NAME>";
AGILE
<my-protocol-name>_PROTOCOL_BUS_PATH = "/org/eclipse/agail/protocol/<MY-PROTOCOL-NAME>";
AGILE_NEW_DEVICE_SIGNAL_PATH = "/org/eclipse/agail/NewDevice";
AGILE_NEW_RECORD_SIGNAL_PATH = "/org/eclipse/agail/NewRecord";

Thank you.

@dpap
Copy link

dpap commented Apr 10, 2018

There are two issues:
The first issue concerns deleting protocols in agile-core
eclipse-agail/agile-core#75
There is an issue in protocol manager and I have a workaround which I am currently testing

The second issue is that when protocols are added/removed they disappear from device manager
Agile-IoT/agile-ui#73

Is this similar to what you are seeing?

@gabiSRC
Copy link
Author

gabiSRC commented Apr 11, 2018

@dpap It is not really similar to what I am seeing.

I added a new protocol and I removed the BLE protocol. I was expecting my protocol to appear and the BLE to disappear in the device settings page (the one you showed in Agile-IoT/agile-ui#73) but nothing changed.

And I was expecting, in the devices discovered by my protocol, the possibility to select the device type in order to get the data. By the way, I am also wondering how the device type list is done, in fact, I would like to be able to say that the device is of one type or another type in the protocol but I am not sure it is possible.

Maybe the agile-dummy and agile-BLE are registered somewhere but I thought it was done automatically when adding it in the docker-compose. If the protocol are to be registered somewhere else, I could not find where.

Edit: I looked into the protocolmanager (https://github.com/Agile-IoT/agile-core/blob/master/org.eclipse.agail.ProtocolManager/src/main/java/org/eclipse/agail/protocolmanager/ProtocolManagerImp.java) and it happens that the protocol supported are hard-coded in it so I do not thing that the adding of a new protocol is dynamic

@Dogmans
Copy link

Dogmans commented Dec 20, 2018

This is what I do for my protocol:

https://github.com/Agile-IoT/agile-rfm69/blob/master/run_server.py

If you use protocol manager to add it then it should appear; the calls I use are over DBus but you can use other APIs as well I think.

Protocols can implement discovery itself to return devices to the rest of the services, although mine does not do this.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants