Remote Desktop in browser through Nodejs - javascript

My requirement is to develop a web page which shows the remote desktop I am connected to. The computer I am trying to connect is on the OpenStack cloud which has a static I.P(public I.P) and can be accessed by providing login credentials.
I don't mind if there is a need to add a plugin to my browser. Is there a tool or API to support this? Glad if there is a Node js solution for this.

Have you tried the remote-control-server package?. It enables you to control your PC from your web browser on your other PC or mobile device remotely. It also supports mouse movements, scrolling, clicking and keyboard input.
You can check it out here.
https://www.npmjs.com/package/remote-control-server
Hope this helps!

Related

Screenshare browser (android <-> PC)

Im looking for an screen-capture or screen-sharing API, which i can implement into my webapp.
Goal:
I render a webapp with flask on a raspberry and access it with an android tablet (chrome browser).
Now want to share my tablets screen (webpage) via internet, and view it in the browser of the pc.
i tried this example https://github.com/di/screenshare , but its working only locally i guess.
Or is this adaptable to share my browser of the tablet with the www?
Somebody an idea how to this?
As of today WebRTC's Screen_Capture_API is not available for mobile, though you can receive screenshares from desktop.
Browser compatability for Screen_Capture_API:-
The Screen Capture API is what you would need to use to capture a screen shot from a Web browser. It is available in Chrome.

Is it possible to access phone camera in system / pc browser

Recently we worked on reading a QR code in our website, with manual focus camera in the System browser (Chrome) and the same is tested with Mobile browser (chrome) with mobile camera. We succeed in doing it but, according to the end user feed back its actually taking time to read/scan with manual focus camera and its easy with mobile camera. But as per our requirement we need to implement it on PC browser with manual focus camera.
Is there any way that we can use Mobile device camera to integrate with the PC browser. Currently we are working with few JAVA based mobiles which allow mobile camera to use as web cam. Any help would be appreciated to crack this.
what I have used is cordova has many plugins that can consume using Javascript or if you use angularjs there is a version called ng-cordova.
Cordova https://cordova.apache.org/
Ng-cordova: http://ngcordova.com/
I hope that will help.
You Can Use Mobile Camera With PC Browser But It Is Difficult
Step:
Write An Application To Capture Picture From Phone And Send It To Browser .
Phone And PC Should Be At Same Network And Phone Accessed From Browser with It Local IP address To Get Pictures .
Users Most Install Your Application On They Phones And Set Static IP Adderss For Phones Example 192.168.1.100
In Website You Most Get Picture From 192.168.1.100 And Show It.

How can I access to USB stick from website?

I'm planning to make a login system by USB, so if you put in a USB-drive and open a specific webpage, the website asks the USB-drive for the code (e.g. by a JavaScript file, a redirect or something like that).
The problem is, because of sandboxing, you can't load or redirect to local files. I don't know a solution for this problem. Can you guys help me? I don't need specific code, just an example or something in that way.
Maybe you can read up on USB-HID. Wikipedia:
The USB human interface device class (USB HID class) is a part of the USB specification for computer peripherals: it specifies a device class (a type of computer hardware) for human interface devices such as keyboards, mice, game controllers and alphanumeric display devices.
Here are some references:
USB HID (Human Interface Device)
node-hid - Access USB HID devices from node.js
DepthJS: 'Allows any web page to interact with the Microsoft Kinect using Javascript'.
A related Stackoverflow question:
Write data to USB HID using Javascript, HTML5, or any cross platform language (supports Android)
One other possibility is to check out the Chrome HID (Human Interface Device) APIs:
Interacting with USB HID devices from web apps – via Chrome Apps, see below
Relevant Chrome API docs
Please note that for the time being, you cannot interact directly with the USB device (i.e. you cannot access any WebAPI offering that kind of fine-grained control).
Building a Chrome App (different from a Chrome Extension) may help; This article may point you in the right direction, since it also provides sample code.
The only way I can think of is putting a html file on the usb stick that essentially generates some sort of login token and gives you a link or a form to a login processor. You can then access the webpage by opening the local file first which will redirect you to the actual webpage.
This local script may include a javascript from the server to get some challenge-response-data which it hashes somehow (perhaps in combination with a password) and puts it into the form data.
Web PKI authentication from Modern Browsers may be achieved by using Browser Extension. One such extension is Signer.Digital browser extension. Use below Javascript promises from the APIs provided by Signer.Digital extension.
SignerDigital.getSelectedCertificate() to register user's certificate
SignerDigital.signHash(hash) to sign token at browser and verify at server
For all Javascript APIs refer to SO Answer https://stackoverflow.com/a/63173083/9659885
Disclaimer : I work for a company supporting the application below
Hello, you may try to use Nexu open-source application for communication with smartcards or USB tokens. It also support PKCS 12 keystores.
For example, the application is connected to the DSS webpage on the website of European Commission : see the link.

How to create web app shortcut on user's desktop programmatically?

For enterprise intranet web application, is there any way to create a desktop shortcut of web application on user's desktop? I'm looking for functionality similar to Google Gears, but without installing Google Gears. I'm looking to give user's a link on web application that says "Click here to install desktop shortcut", when they click on it, a desktop shortcut is installed with the custom icon for our application. Is there a way to do it using javascript or any other client side technologies? I don't want to run any exe on user's machines. Even though it's intranet, I have to jump through lot of corporate hoops, compliance approvals, etc to run exe on their machine. We are trying to avoid that, due to time constraints. User machines are windows XP with IE6 installed. They may all upgrade within next year's time to Windows 7 with IE8. Intranet web application in question is developed using asp.net 3.5, c#.
If this is really a corporate environment then just go talk to the network operations team.
It should be trivial for them to add something to the login script to push this link to the people's desktops.
More Info:
http://www.petri.co.il/forums/showthread.php?t=6154
http://social.technet.microsoft.com/Forums/en/winserverGP/thread/02a7bfbb-180f-40eb-82e3-2343b2bf31eb
Alright, at first I thought that this was an impossible task, until I realized that it's not.
A shortcut is just a file, and we all know you can download files from links.
I'm not sure how well windows shortcuts can be transferred from computer to computer, but I would assume that a shortcut with a location like http://www.google.com/ is not tied to any specific windows machine.
You could zip the shortcut, and point the link to the location of the zip file. Tell the users to unzip the file and place the shortcut. You may be able to just serve the shortcut, but you'd have to give the right headers, and probably specify application/octet-stream or something like it.
Alternatively you can tell them to right click, go to new -> shortcut, and copy-pasta the url into the location box.
Alternatively you could write a batch file for the users to download that opens a url in the default browser.
I know it's not quite as direct as click-button -> receive bacon but it will work.
Try looking at SaveAs
document.execCommand("SaveAs", false, "url to desktop");
The user will still have to click save and it only saves a HTML page. You would have to open a hidden IFrame containing a web application and call .execCommand on the iframe's document.`
You can create a shortcut (.lnk) file in a directory in your site and put it as the Url for a hyperlink so the users right click and save as they download the .lnk file. Your server will need the mime-type .lnk application/x-ms-shortcut adding.
The icon can be done by putting it on a network location and using the "Change icon" function to refer to this network location. This works on Windows. I suppose it could be adapted for each OS required?

Is it possible to cache a whole website including start html page and startup with no internet connection?

Our website is an AJAX website that makes no page requests after the initial start up of our website. Information is communicated with the server through XMLHttpRequests.
Our website allows users to work online and offline without a connection during a user session. When a connection is detected our website "synchronizes" with the server.
Our problem is that if the internet browser running our website crashes while the user has no internet connection the user cant begin working with our website until she/he gets an internet connection back.
Is it possible to have the browser cache the initial startup page (index.html) along with the other website resources and have the browser use the cached version of the startup page when there is no internet connection present?
(Google)Gears is exactly about this.
Today: use a service worker.
The 2009 answer: Not with any technology built into common web browsers.
You can achieve this using (the defunct in 2020) Google Gears, but that requires the user to install a plugin and grant permission to your website to use it. Google Docs and Wordpress are examples of web applications that use this.
This really isn't feasible. You could look at Smart client technology if you truly need to work offline. That'll be a lot of work though depending on the size of your application.
Technically it is possible. Google Gears does it. So Google can now save your entire gmail app on your local machine and operate without an internet connection.
You can use HTML5 databases, check the iPhone version of gmail for offline functionality without a plugin.

Categories