{"action":"closed","issue":{"url":"https://api.github.com/repos/JdeRobot/JdeRobot/issues/526","repository_url":"https://api.github.com/repos/JdeRobot/JdeRobot","labels_url":"https://api.github.com/repos/JdeRobot/JdeRobot/issues/526/labels{/name}","comments_url":"https://api.github.com/repos/JdeRobot/JdeRobot/issues/526/comments","events_url":"https://api.github.com/repos/JdeRobot/JdeRobot/issues/526/events","html_url":"https://github.com/JdeRobot/JdeRobot/issues/526","id":166935555,"number":526,"title":"[libs] ROS Compatibility Library for sensors","user":{"login":"fqez","id":8070644,"avatar_url":"https://avatars.githubusercontent.com/u/8070644?v=3","gravatar_id":"","url":"https://api.github.com/users/fqez","html_url":"https://github.com/fqez","followers_url":"https://api.github.com/users/fqez/followers","following_url":"https://api.github.com/users/fqez/following{/other_user}","gists_url":"https://api.github.com/users/fqez/gists{/gist_id}","starred_url":"https://api.github.com/users/fqez/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/fqez/subscriptions","organizations_url":"https://api.github.com/users/fqez/orgs","repos_url":"https://api.github.com/users/fqez/repos","events_url":"https://api.github.com/users/fqez/events{/privacy}","received_events_url":"https://api.github.com/users/fqez/received_events","type":"User","site_admin":false},"labels":[{"id":299867651,"url":"https://api.github.com/repos/JdeRobot/JdeRobot/labels/feature","name":"feature","color":"207de5","default":false},{"id":299867772,"url":"https://api.github.com/repos/JdeRobot/JdeRobot/labels/task","name":"task","color":"c7def8","default":false}],"state":"closed","locked":false,"assignee":{"login":"fqez","id":8070644,"avatar_url":"https://avatars.githubusercontent.com/u/8070644?v=3","gravatar_id":"","url":"https://api.github.com/users/fqez","html_url":"https://github.com/fqez","followers_url":"https://api.github.com/users/fqez/followers","following_url":"https://api.github.com/users/fqez/following{/other_user}","gists_url":"https://api.github.com/users/fqez/gists{/gist_id}","starred_url":"https://api.github.com/users/fqez/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/fqez/subscriptions","organizations_url":"https://api.github.com/users/fqez/orgs","repos_url":"https://api.github.com/users/fqez/repos","events_url":"https://api.github.com/users/fqez/events{/privacy}","received_events_url":"https://api.github.com/users/fqez/received_events","type":"User","site_admin":false},"assignees":[{"login":"fqez","id":8070644,"avatar_url":"https://avatars.githubusercontent.com/u/8070644?v=3","gravatar_id":"","url":"https://api.github.com/users/fqez","html_url":"https://github.com/fqez","followers_url":"https://api.github.com/users/fqez/followers","following_url":"https://api.github.com/users/fqez/following{/other_user}","gists_url":"https://api.github.com/users/fqez/gists{/gist_id}","starred_url":"https://api.github.com/users/fqez/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/fqez/subscriptions","organizations_url":"https://api.github.com/users/fqez/orgs","repos_url":"https://api.github.com/users/fqez/repos","events_url":"https://api.github.com/users/fqez/events{/privacy}","received_events_url":"https://api.github.com/users/fqez/received_events","type":"User","site_admin":false}],"milestone":{"url":"https://api.github.com/repos/JdeRobot/JdeRobot/milestones/2","html_url":"https://github.com/JdeRobot/JdeRobot/milestone/2","labels_url":"https://api.github.com/repos/JdeRobot/JdeRobot/milestones/2/labels","id":1512052,"number":2,"title":"5.4","description":"5.3.2","creator":{"login":"rocapal","id":158031,"avatar_url":"https://avatars.githubusercontent.com/u/158031?v=3","gravatar_id":"","url":"https://api.github.com/users/rocapal","html_url":"https://github.com/rocapal","followers_url":"https://api.github.com/users/rocapal/followers","following_url":"https://api.github.com/users/rocapal/following{/other_user}","gists_url":"https://api.github.com/users/rocapal/gists{/gist_id}","starred_url":"https://api.github.com/users/rocapal/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rocapal/subscriptions","organizations_url":"https://api.github.com/users/rocapal/orgs","repos_url":"https://api.github.com/users/rocapal/repos","events_url":"https://api.github.com/users/rocapal/events{/privacy}","received_events_url":"https://api.github.com/users/rocapal/received_events","type":"User","site_admin":false},"open_issues":30,"closed_issues":62,"state":"open","created_at":"2016-01-18T09:36:45Z","updated_at":"2016-12-20T11:06:58Z","due_on":null,"closed_at":null},"comments":2,"created_at":"2016-07-21T22:50:24Z","updated_at":"2016-12-20T11:06:58Z","closed_at":"2016-12-20T11:06:58Z","body":"There's already a concept proof (ready to be integrated into the JdeRobot project) made [here](https://github.com/fqez/sandbox/tree/master/ROS/concept/functional_test/src).\n\nThe architecture of this concept consist on a library that understand ROS communications protocol (ROS messages) and \"talks\" with ROS nodes. The library also includes some translators which receive ROS messages and translate them to the local API of JdeRobot, so JdeRobot tools can read information from those messages.\nClient side (tools) have to link with the library and create an instance of the library listener (which manage comunnication with ROS nodes - consumer and suscribers- ) and create an independent thread to ask for data. This is an Asynchronous communication, so the client ask for images whenever it wants to and it's not forced to receive images every time they arrive (this allow to reduce the work load of the application).\n\nThe next step is work on actuators part, so ROS Compatibility library can also send messages to ROS nodes and not only receive information from them.\n\nSoon there will be a pull request proposing the integration of this library!\n"}}
{"actor":{"display_login":"fqez"}}