Alternative live video URL
  • Hi Ben,

    Is there an alternative URL or way to view live video that doesn't involve the use of the plus symbols please?

    e.g.
    http://192.168.1.10:8000/++video?cameraNum=1&width=1280&height=800&quality=50&req_fps=10

    I ask because it appears there's a bug with Fully Kiosk Browser that converts my URL encoded '+' symbols to spaces. I sent an email to them at the end of April and haven't had any response yet, so I'm hoping to explore alternative options.

    I have a rooted Fire tablet by the door that I was using to show video when motion was detected at the front of the house (when I was using RPi Web Cam), so I'm just trying to do the same with SecuritySpy now.

    If not then no worries, I'll just keep nagging Fully Kiosk to fix their bug. :)

    Thanks,
    Paul.


    The following is FYI...

    I am sending the following URL encoded text to Fully Kiosk via curl:

    http%3A//192.168.1.10%3A8000/%2B%2Bvideo%3FcameraNum%3D1%26width%3D1280%26height%3D800%26quality%3D50%26req_fps%3D10

    curl "http://192.168.1.15:2323/?cmd=loadURL&url=http://192.168.1.10:8000/++video?cameraNum=1&width=1280&height=800&quality=50&req_fps=10&password=mypass

    However it keeps saying “404 File not found” because when I look at the remote admin URL it was trying to use, it shows up as the following where it changes the %2B (+) to %20 which is a space:

    http://192.168.1.10:8000/ video?cameraNum=1&width=1280&height=800&quality=50&req_fps=10

    The same problem also happens if I use the “Load other url” from the web admin interface. I see a green success message to say it’s loading the URL (the normal one with ++), but the “Current page” field shows the url with %20%20 again.

    If I manually change the start url within “Web Content Settings” to the following, it loads the page fine as it doesn’t do any url conversion.

    http://192.168.1.10:8000/++video?cameraNum=1&width=1280&height=800&quality=50&req_fps=10
  • This is a bug in the client - URL encoding only applies to the query component of the URL (i.e. everything after the "?" character). In the path section (the bit after the address and before the query), plus characters are perfectly legal and URL encoding doesn't apply to them.

    The original reason for us using the "++" prefix was to denote a dynamically-generated resource, as opposed to a file in SecuritySpy's Web folders on disk, in order to avoid naming collisions between the two. However, this distinction can be made in other ways (e.g presence of a file extension), and we have wanted to move away from this scheme for some time (because it's unnecessary, ugly, and causes problems for some badly-written clients).

    To this end, the latest beta version of SecuritySpy (currently 5.2.3b16) doesn't require the ++ prefix for these dynamically-generated resources. So please try this without the plus characters and let me know if this resolves your problem.
  • Wow, thank you very much Ben!! I really wasn't expecting there to be a solution so I appreciate the change that you have made! I'll try this out when I return from work this evening and report back.
  • I can confirm the change you made has worked, thank you very much!!

    Just in case it helps others, I'm sending the following URL to Fully Kiosk so that it changes the displayed webpage to a live camera view using a Home Assistant automation:

    curl "http://192.168.1.15:2323/?cmd=loadURL&url=http://192.168.1.10:8000/video?cameraNum=_cameraNumber_&width=1280&height=800&quality=50&req_fps=10&auth%3_auth-string_=&password=_fully-kiosk-pass_"

    Replace the following:
    _fully-kiosk-pass_ = the kiosk password
    _auth-string_ = base64 encoded username and password
    _cameraNumber_ = e.g. 1

    Thanks,
    Paul.
  • Hang on, I've just noticed that the curl command from my previous post wasn't URL encoded, yet I'm sure I pasted in the right version. I wonder if this forum converts it back to normal...

    Edit, yes it does! If you hover over the link you can see the full URL encoded text, so make sure you copy the link shortcut if replicating this.

    curl "http://192.168.1.15:2323/?cmd=loadURL&url=http://192.168.1.10:8000/video?cameraNum=_cameraNumber_&width=1280&height=800&quality=50&req_fps=10&auth%3_auth-string_=&password=_fully-kiosk-pass_"

    Edit 2 - I made it display properly by adding a space after the ? below, so just make sure you remove the space after copying.

    curl "http://192.168.1.15:2323/? cmd=loadURL&url=http%3A//192.168.1.10%3A8000/video%3FcameraNum%3D_cameraNumber_%26width%3D1280%26height%3D800%26quality%3D50%26req_fps%3D10%26auth%3_auth-string_%3D&password=_fully-kiosk-pass_"
  • Great to hear this is now working.

    I think it's actually the web browser interpreting the HTML entities and it's not easy to prevent this. But if you right-click on your above link and choose "Copy Link" or "Copy Link Address" (depending on your browser) then you should get your original link as entered.

Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!