Issues when sharing screen using Vidyo Screen Share Chrome extension on Vidyo.io - vidyo

I'm using vidyo.io as videoconference solution in our platform. I'm having an issue with Vidyo's Chrome extension for screen sharing that is easily reproducible using the very own Vidyo's samples:
If you download Vidyo's web sample from developer portal, open samples/VidyoConnector/js/VidyoConnector.html in Chrome, choose 'Join via the browser', and click the 'Window share' select list (there is no need to start a conference to reproduce the error), Chrome will open the Vidyo Screen Share extension page twice, even if you already have the plugin installed. For this to work you have to uninstall the extension and reinstall it again. It will work until the end of the current session.
In the other hand if you go to Vidyo.io developer portal, choose "Demo" from "Developers" menu and start a conference using the "Join via the browser" button, click the same 'Window share' select list the Vidyo Screen Share extension works as expected, allowing you to pick a window or a screen to share.
In our implementation we're having the same problem as the code from web sample listed above, but if an example of our code would be of any help to clarify the issue, here you have an excerpt (we're using Angular, and here you have some TypeScript code):
private vidyoConnector: VidyoClientLib.VidyoClient.VidyoConnector;
(...)
selectedWindowShare(share: VidyoClientLib.VidyoClient.VidyoLocalWindowShare) {
this.vidyoConnector.SelectLocalWindowShare({localWindowShare: share})
}
This issue happens only on Chrome. When we use Firefox it works seamlessly. I'm using Chrome 69 on OSX High Sierra.
Any suggestion on how to solve this will be much appreciated. Thanks in advance!

If I am not mistaken, you are either running the VidyoConnector.html directly in the browser or hosting the sample on non-secured hosting (HTTP).
For the Vidyo Screen Share Chrome extension to work correctly, you need to host it on a secured hosting (HTTPS).
You can verify this by using our hosted sample here:
https://static.vidyo.io/latest/connector/VidyoConnector.html
Hope this helps.

Related

heroku not displaying updates in chrome, but is in safari

I have been working on a simple portfolio for myself and have it deployed to an app on heroku. I have used the typical commands to add, commit, and push to GitHub and everything is updating normally there.
My issue is that when I open the app from Heroku in Chrome, it is not displaying the recent updates. When I open the link on my phone, it looks correct according to my HTML and CSS code. I have tried both automatic and manual deploy methods, but I still cannot get Chrome to display any of my updates.
Has anybody experienced this? I'm including screenshots below.
How it displays in Chrome
How it displays in Mobile Safari
Chrome sometime uses previously cache data of website to load website faster unlike safari, try using incognito mode or another pc or even a smartphone. There is also a service called browserling where you can test out on different browsers.

Close browser window and open PWA once PWA installed

I have Chrome installing my PWA on Android - once it's installed I'd like to automatically close the browser window it was installed from, and open the PWA (so the user doesn't continue in the browser window, thinking they're using the PWA) - is this possible?
i was looking for a similar solution and have not yet found a way to do that. I try to describe my findings so far:
CLOSING THE BROWSER WINDOW:
as described in this answer window.close() can only be called on windows/tabs that the script opened itself. Some possible workarounds are being discussed there.
OPENING THE PWA RIGHT AFTER INSTALLATION:
Google describes in their WebApk Fundamentals Article it as follows:
When a Progressive Web App is installed on Android, it will register a set of intent filters for all URLs within the scope of the app. When a user clicks on a link that is within the scope of the app, the app will be opened, rather than opening within a browser tab.
I was hoping that would work also right after the installation/Adding to homescreen from the still open browser window.
Based on testing with two Android devices it seems as if at the moment the user has to manually open the PWA from the homescreen once for chrome/android to interpret the scope of the web apps manifest.json as intend to open the page in standalone.
This is sad for even iOS seems to handle that different.
Maybe I am overlooking something in the Google Article? I also do not fully understand androids intent API - so maybe there is some way to still achieve that (?)
Based from this blog post:
When the PWA is installed, it will appear in the home screen, in the
app launcher, in Settings and as any other first-class citizen app in
the OS, including information on battery and space used in the system.
There's a tracking event when the user opens the app from the home screen. That means the user has clicked the app's icon or, on Android with WebAPK support, also clicked on a link pointing to the PWA scope and need to close the browser.
start_url: '/?utm_source=standalone&utm_medium=pwa'
Also, the following script leaves us a boolean stating if the user is currently in a browser (true) or a standalone app mode (false)
var isPWAinBrowser = true;
// replace standalone with fullscreen or minimal-ui according to your manifest
if (matchMedia('(display-mode: standalone)').matches) {
// Android and iOS 11.3+
isPWAinBrowser = false;
} else if ('standalone' in navigator) {
// useful for iOS < 11.3
isPWAinBrowser = !navigator.standalone;
}
I had this problem on Android with Chrome. The change that made the difference is adding "target='_blank'" to the link. It looks like:
window.addEventListener('appinstalled', function(event){
setTimeout(function(){
presentToUser("<a href='https://myhostname.com' target='_blank'>Go to App</a>")
}, 10000)}
});
The ten second timeout is to give Android the time to set up the App on the home page.
I had made that adjustment earlier; possibly I can remove it?
But setting the target was what made this work.
The App opens over the top of Chrome, obscuring it.
So closing the browser is not immediately required but is recommended.
In the new versions of chrome, after installation in android it associate all the links in the "scope" to the PWA application, if you try to open a link in your chrome browser it open directly in the application.
hope that will answer your question

Change Default Browser in Eclipse

I'm using Eclipse Luna and I have created an app using the Google App Engine SDK.
When I'm trying to deploy my app to GAE, Sign in to Google Services window open and when I give my Google credentials it show another window with Account Permissions. But I can't click Accept and Cancel buttons in this window, because this window display that page using Internet Explorer embedded window. Due to issues in IE, those buttons are disabled.
So I change my browser from Window => Preferences => General => Web Browser to Firefox. But still Sign in to Google Services window is open in IE embedded window.
How can I change this to open in Firefox embedded window?
I think answer is update your IE7 , 8 to IE9.. it will work fine.
It's not possible to change the embedded browser in Eclipse. There is a very old bug open to add this functionality, but it doesn't look promising. See also this answer.
For now the solution is to to use an external browser, as was suggested above.

Struggling to unleash the power of Chrome kiosk apps

Our company designs museum and visitor center exhibitory, and my main job is designing touch screen kiosk applications. Enamored by Vidya's introduction to Kiosk Apps using Chrome boxes, I quickly had my boss procure one for testing. I have since gained a firm grasp of Chrome App structure going though Google's tutorials (manifest files, MVC, etc) and have found the performance of our little HP Chromebox plus HTML5 development to be pretty impressive. I'm developing on my Macbook using Chrome Canary to run and test the apps.
I'm adding in this background information so you can better understand my goals. We of coarse need these apps to launch full screen upon power up. No login or user installation is desired. I prepare the boxes in my office, install them at the exhibit, the end. We certainly don't want our multimedia apps to be sitting up on the Chrome Web Store for others to download and install.
So, I've gotten to the point where I want to install a simple kiosk app on our HP Chromebox. Unfortunately Vidya did not go into detail on this part. The page from her article only touches upon adding kiosk_enabled" : true to the manifest file.
So here's what I've tried so far: I've moved my app folder onto an SD card and moved it from there onto our HP Chromebox into the "Downloads" folder (apparently the only folder). I sign into Chrome Browser on the box with my company account (do I have to do this?) and load up chrome:extensions. I click "load unpacked extension..." and select my app folder. The app installs and I am able to manually launch it by clicking "Launch". Next, I click the "Manage kiosk applications..." button and enter the app ID into the field. This is where I get stuck. Clicking "Add" produces an "Invalid Application" error.
Looking around the web I have found lots of confusing information:
I must "Wipe" the Chromebox in order to use a Ctrl+Alt+K key command to truly enable kiosk mode. (Google's instructions on how to do this stops with Samsung and Asus 'boxes, I have an HP, not to mention the "Manage Kiosk Applications" button is already visible to me).
I must upload my App to the Webstore as either public or unlisted, and then download and install it onto my Chromebox. Really? I don't want to sell my app or make it available to anyone. It is only meant to run in our exhibit. Our apps could be gigs of data with HD videos!
I must make my Chromebox "Managed" or "Enterprise" or "Enroll" it for Work and Education Administration. In most cases, we'll be installing one or two of the 'boxes to allow users to navigate though static HTML pages. I don't have a need to manage a fleet remotely (at least not yet). So, the aforementioned complications seem unnecessary, and expensive if I understand things correctly.
Can someone point me to the definitive process for achieving my goal of an auto starting, full screen kiosk application on my Chromebox?
I'm not an expert on this but kiosk apps are defined by "kiosk_enabled": true in manifest.json. What's important to know, though, is that from what I've seen they can work in three different modes:
If they are installed as an unpacked extension (for example, in development) they will be available as apps in your logged in environment and run but full screen mode. They're essentially "normal" apps except that they are full screen.
If they are installed using the "Manage kiosk applications..." button then they are available without logging in. On the log in screen at the bottom you'll be able to see the app and click to start it without logging in. However they won't start automatically. AFAIK you also can't load an unpacked extension in this way.
If you enable "kiosk mode" for Chrome OS then you can make kiosk apps auto start. At least on the Asus CB you do have to do the CTRL-ALT-K keystroke BEFORE you log in for the first time. This is for an unmanaged device. Now, when you load the app using "Manage kiosk applications..." in chrome://extensions and hover your mouse over it in the dialog you should seen a "enable auto-start" or similar button. You need to select this. Now, when you restart the system the app should automatically start. If you want to cancel this just as the app is loading you can press CTRL-ALT-S. A message indicates this on the screen, too.
Hope that helps,
Simon
Can't help you with anything related to kiosk, but you can generate a CRX file from the Extensions page on your development system, get that onto the Chromebox, put the Extensions page of the Chromebox into developer mode, and then drag the CRX to the Extensions page and drop it. You should see a dialog asking you if you want to install it. This is a completely different form of install than loading an unpacked extension and may get around whatever limitations you're seeing.
UPDATE: (1) Extensions page on Chromebox doesn't have to be in Developer Mode, (2) CRX to be dragged must be in the Downloads directory, not on Google Drive. Didn't test external device (SD card or USB drive).
In order to add your app from Manage Kiosk Applications, you will need to publish your app to the Chrome Web Store. If you don't want your app to be public you can publish it as Unlisted, which means that anyone with the link can install it. Unfortunately, if the app is published as Private you will not be able to add it as a kiosk app. [source]
Beyond that, the only thing you need to do to create a kiosk app is to include "kiosk_enabled": true in your manifest.json file.

Use desktop webinspector to clear cache in mobile safari?

Is it possible to clear mobile safari cache using the desktop web inspector in Safari?
I know I can go to the settings in the iphone, but it's a bit of a hazzle and since the phone already is teathered to the computer while debugging, it would be really nice if I could clear it thourgh the webinspector in safari.
You can use Cmd + Option + R while in the developer tools web inspector to force mobile safari to reload its cache.
I had another problem which was that Fiddler also has a cache. I also had to clear that as I was running the iPad through the fiddler proxy.
Once I cleared the fiddler cache, and then used Cmd + Option + R, I could see the iPad requesting and receiving the new files.
I came across this issue with safari 11.1, and the answer was really simple. There is actually a button on the right top corner of the network tab to disable caching when debugging. I thought about leaving this just in case someone else miss the button just like I did. ( the one in blue )
I'm using Safari 11.1 on a macbook, and using Web Inspector connected to an iPhone with iOs 11.2.6.
From the Web Inspector, if I use the key board short cut: OPTION + COMMAND + R, it both clears the cache and reloads the page.
Well, there is an option for this in the Develop menu - however it doesn't appear to work.
A simple way around this is to add a new parameter to your url
eg. http://domain.com/testing.html?refresh=1
(of course having the functionality working in Web Inspector would be better)
Old thread but if you have your iphone connected to your desktop developer tools, you can hit OPTION + CMD + E (shortcut for empty caches) while viewing the web inspector that is connected to the iphone. Then hit the refresh button in your iphone browser.
Make sure you are really connected (Develop > Your Phone Name > The Website being viewed on phone) It should show on your desktop developer tools dropdown menu.
Safari 11.1
High Sierra
ios 11.4
Try Cmd+alt+R when iPhone is connected and your inspecting with developer mode. It worked for me!
Nothing here worked for me on iOs 11.4.1. After digging around in the network tab I found Command + K which is "Clear Network Items". I hope this helps someone.
You can connect your iPhone to a MacBook via USB and use the Safari Web Inspector
Once you are connected, you can use Develop -> Empty Caches.