Git Product home page Git Product logo

roswww's Introduction

roswww's People

Contributors

130s avatar furushchev avatar jihoonl avatar k-okada avatar knorth55 avatar otl avatar tilt-silvie avatar yoneken avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

roswww's Issues

Use package export to configure package web root

The current implementation forces to use www as a package web root. If we utilise package export, each package can have different web page root. It would give users freedom to choose web root directory.

For example, roswww uses www directory as a web page root whereas my_webapp_package uses apps directory as a page root.

# package.xml in roswww
<export>
  <roswww_root>www</roswww_root>
</export>

# package.xml in my_webapp_package
<export>
  <roswww_root>apps</roswww_root>
</export>

Other usecases(rocon_app) reference,

Questions about this package... sample code? only for static pages?

I don't know where the community for this package lives, so I am asking here even though this is not an issue. I am looking to host a simple web server on my Ros robot. Basically responding to HTTP GETs returning status html pages, or to HTTP POSTs to tell the robot to do something. This will allow me to create a non-ROS client on a mobile or just a web browser.

  • I am not clear whether this library only serves up static html pages or can respond with custom code to any http request, executing ROS code as a result.

  • Can you point me to a sample where this package is used so I can see how to do various things?

Noetic version

Is a version for ROS noetic planned? I created a pull request with the necessary changes for compatibility with python3 #49

Browser keeps trying to connect

Continued from #13 (comment)
Confirmed with de2d9e0 on Indigo, Trusty

Error description updated:

$ rosrun roswww webserver.py then accessing http://localhost:8000 doesn't return (web browser keeps trying on and on). When I kill webserver.py's process, browser immediately shows "server not found", so I assume the browser is able to connect to the webserver (webserver log file might help here..).

Rename back the repository to roswww

I regret this proposal wasn't that right for the following reasons:

  • Another package in this repository (roswww_pack) doesn't seem to be used, at least within roswww so that roswww can be released by itself.
  • Single package can be released w/o metapkg.

Actually I've already modified the repository name to roswww.

rename the branches

Just curios. If not how about renaming branch as something general? like develop in rosbridge_suite?

Proposal: Single page applications

Single page applications do client side routing, but the application only have a singe page doing all the work. I'm proposing to add a flag to make this possible by serving the default page index.html for all 404 Not Found requests. Flag: --single-page-app (debatable)

I would also propose another option to only serve the content from a single package at the root of this server. This is useful for serving control interface applications for a specific system. Flag: --single-pkg=mypackage (debatable)

My use case is that I have a single page application that I am using as the control interface for my robot application that I would like to bundle and serve with the rest of my control software. I do not need to serve files from more than this single package.

I'm opening this issue to discuss if these are wanted functionality and if so, the API. I'm willing to submit a PR if you are interested.

update dependency

roswww should depend on rosbridge_tools rather than rosbridge_server.

tornado is soon to be in rosbridge_tools package. #146 #147 #149

Propose to update roswww as webserver without ros_comm dependency

I was looking into roswww implementation to utilise as webserver which does not bring any ros_comm related dependencies.

The following was requiring ros dependency in roswww

  • Logger(rospy.loginfo,logwarn...)
  • rosparam for port parameterization
  • rospack shell command
  • tornado

I would like to propose changes to keep ROS dependency minimal in roswww

  • Logger - It would not necessary to ros logger since it is webserver. Rather to use stdio or python logger
  • rosparam - replaceable with command line argument.
  • rospack shell command - It is necessary. rospack dependency should not be a problem. It is pure C++ module which does not bring ros_comm
  • tornado - I have proposed to separated out tornado from rosbridge_server. RobotWebTools/rosbridge_suite#147

Then roswww package will only depend on

  • rosbridge_tools : for tornado
  • rospack : for package crawl script

ros2 adaption

Continued from a discussion.

For those who are interested in making this happen, please voice up here.

(As one of the maintainers, personally I'm not planning to spend any of my time on this in the forseeable future.)

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.