Asked — Edited

Http Custom Server Questions - Very Impressed

This is cool!

I've been playing with the custom server with an HTML editor, and find it to be really cool to be able to customize the web page with the video and the controls.

Questions in regards to the HTTP Custom Server and related items are:

  1. Can we turn on the "Connect" for connection to the controller from this page? In essence, does the "Connect" button have to already be pushed (turned on) from the ARC Windows program in order for the servos to work from the Custom Server page?

  2. Followup questions to above question in regards to the ARC Windows software: Can we automatically turn on the "Connect" and start the "HTTP Custom Server" when launching the the Windows ARC program? If so, how do we do this? I've experimented with different scripts on the ARC program side, and can not get these items to come on automatically with a script.

  3. What other items can be placed in the custom server pages? For example, I see we can now have video (resizing and different refresh rates for the video), servo control and speech (adding a custom text line to be said out-loud) by clicking on the button. What else can we do?

  4. Can we have scripts in this page? If so, how do we implement it from the page?

  5. Is there a list of commands and HTML syntax for the HTTP Custom Server?

  6. Is there more detailed information published in regards to the HTTP Custom Server on the EZ-Robot website? If so, please provide the linked page.

Bottom line is, I am very impressed with the custom server page, and this is exactly what I was looking for with some of my previous postings.

Thank you EZ-Robot. You guys are on the cutting edge.

Jim W.


ARC Pro

Upgrade to ARC Pro

Subscribe to ARC Pro, and your robot will become a canvas for your imagination, limited only by your creativity.

United Kingdom
#1  
  1. Yes. Use a ControlCommand to operate the connect button, however this becomes redundant with question 2 (but keep the option in case of disconnects).

For board 0 the script command is

ControlCommand("Connection", Connect0)

Change the Connect0 to suit other boards.

  1. Yes. Use the shortcut maker to make the shortcut. Have an init script with the connection ControlCommand() above in it. In the shortcut maker specify the init script to run on load. To start the HTTP Server use the command
ControlCommand("HTTP Custom Server", ScriptStart)
  1. You can do whatever you want to do. What do you want to do? It would take a very long time to list what can be done.

4, 5 & 6. All ask the same thing really. Check this topic and this topic plus the examples in ARC.

Enjoy :)

#2  

Okay, I got the custom webserver working remotely over the LAN and the Internet (Cool stuff) with some port forwarding set up on the router. This took some playing around with to figure out what was going on. Now I have additional questions. First off, here are a few observations and questions to go along with them.

Observation number 1 and question 1. The talk command does not actually cause EZ-B to talk on the website, but causes the ARC software to talk on the host computer. I thought this would make the screen talk to the operator. What am I missing on this aspect of the talk button? Is the viewed web page supposed to talk or hear the talking?

Observation number 2 and question 2. The display screen sometimes does not always update quickly when viewing it on the LAN or from the Internet on the WLAN. Sometimes at the bottom of the video display there is a bar that makes it look like it is not updating as quickly as it should. I tried playing with the data interval number a bit (shorter seems to work better but not completely). Is this an indication of the speed of the computer (older computer 32 bit, Pentium 4, 2.53GHz, 3GB memory being used with Windows 7) and/or the upload speed to the Internet? Personally I think it is more indicative of the computer not processing quickly enough. What do you think?

Question Number 3. How can I password protect the web page from being viewed using the ARC software? Right now, it appears as though the custom webserver is wide open. Maybe the following item is also related to the password web page question. How is the user setup with password protection? I see you can assign users, but I don't see where you can assign passwords. What am I missing?

Question Number 4. Do I have to run both a webserver and a custom webserver from the ARC software at the same time? It does not appear as that is the case, but I just wanted to know what happens when I do that. Can they both be run at the same time, and simply select which one I want to use at a given moment by turning one on and then switch that one off and then the other on?

Question Number 5. What happens to the custom server if I am running 2 to 5 connections to the same number of EZ-B controllers from the one instance of ARC Windows software? In essence, will each EZ-B controller have its own custom webserver? If not, how can I control each EZ-B separately from a seperate Local IP address?

Question Number 6. When a Custom Server is added to the ARC desktop area, an IP address is assigned automatically. Is it possible to set this as a static IP address on the network? Is this IP address going to ever change when launching ARC? A followup question is, is it possible to assign a static IP address to the EZ-B controller?

Question Number 7. ARC assigns both the Custom Webserver and regular Webserver the same IP address. Is there any way to have different IP addresses for each of these items?

I know there are a number of questions here. I am looking for a bit more in-depth followup to figuring out the details.

Thank you very much in advance.

Jim W.

#3  

Maybe D.J. or someone from EZ Robot has some additional insight in this area and the other questions also.

Note that I also noticed the camera in the custom webserver is actually a JPG image written in the page code. Is there anyway to actually stream the same video that you see on the ARC software, which seems to be a lot smoother video display? I think part of the choppiness of the video in the custom server is due to each image of the camera having to be written to the webpage.

PRO
Synthiam
#4  

Observation number 1 and question 1. The talk command does not actually cause EZ-B to talk on the website, but causes the ARC software to talk on the host computer. I thought this would make the screen talk to the operator. What am I missing on this aspect of the talk button? Is the viewed web page supposed to talk or hear the talking?

That is correct. Webpages do not have the ability to talk or play music. The command you are sending is to the robot

Observation number 2 and question 2. The display screen sometimes does not always update quickly when viewing it on the LAN or from the Internet on the WLAN. Sometimes at the bottom of the video display there is a bar that makes it look like it is not updating as quickly as it should. I tried playing with the data interval number a bit (shorter seems to work better but not completely). Is this an indication of the speed of the computer (older computer 32 bit, Pentium 4, 2.53GHz, 3GB memory being used with Windows 7) and/or the upload speed to the Internet? Personally I think it is more indicative of the computer not processing quickly enough. What do you think?

You may contact the manufacturer of your web browser (ie Microsoft, google or Mozilla, etc) to understand what their features are.

Question Number 3. How can I password protect the web page from being viewed using the ARC software? Right now, it appears as though the custom webserver is wide open. Maybe the following item is also related to the password web page question. How is the user setup with password protection? I see you can assign users, but I don't see where you can assign passwords. What am I missing?

Only the regular HTTP Server allows passwords at the moment. The custom server does not have a password protection.

Question Number 4. Do I have to run both a webserver and a custom webserver from the ARC software at the same time? It does not appear as that is the case, but I just wanted to know what happens when I do that. Can they both be run at the same time, and simply select which one I want to use at a given moment by turning one on and then switch that one off and then the other on?

You can only run one of those per port. They are different controls. You can press the ? (question mark) on every control to read about that control.

Question Number 5. What happens to the custom server if I am running 2 to 5 connections to the same number of EZ-B controllers from the one instance of ARC Windows software? In essence, will each EZ-B controller have its own custom webserver? If not, how can I control each EZ-B separately from a seperate Local IP address?

Every ez-b is controlled by every connection that is specified. If your code is controlling ezb index 0, than it is controlling ezb index 0. It is up to you to determine what ezb the code is controlling. This has nothing to do with an IP Address

Question Number 6. When a Custom Server is added to the ARC desktop area, an IP address is assigned automatically. Is it possible to set this as a static IP address on the network? Is this IP address going to ever change when launching ARC? A followup question is, is it possible to assign a static IP address to the EZ-B controller?

You can change the ip address of your PC in the Control Panel under Network. However, you might want to read up a little more before changing the ip addresses of your hardware. Otherwise, if you start messing around with your ip addresses, you may no longer have a network:)

Question Number 7. ARC assigns both the Custom Webserver and regular Webserver the same IP address. Is there any way to have different IP addresses for each of these items?

Again, see the previous response.

Due to the nature of your questions, I'm impressed that you are tackling the web server technology. However, it appears there is a great amount of education to understand the web server, how web servers work, what http is, what an ip address is, etc... I do not have the resources to teach you that - however, maybe someone else here does, but it wont' be ezrobot. ezrobot will support our hardware, but we can't teach you how to drive :)