Is it possible to test Meteor application on multiple mobile phones? - meteor

I am developing audio calling application in Meteor and I would like to test if I can call other logged in users, it doesn't matter if it is IOS or Android.
Is it feasible to do so? If not, are there any way I can go about to test the calling functionality?

I’d build production apps and distribute to friends with something like Testfairy. I could be one of your testers if it helps you.

You are clearly using webrtc technology so are your stun/turn servers configured correctly? I've read somewhere that a production build was required to access the device camera via the cordova plugin. That could very well be your problem.

Related

Is there a way for Expo applications with the managed workflow to be distributed to testers with an invite link?

It should be as simple as possible for the testers. Best case would be a link that they can click on that directly installs the app on iOS and Android devices (maybe through another app similar to testflight). As we're using Firebase in our application I looked at Firebase App distribution but it seems that it doesn't work with the managed workflow of Expo. We would need to eject our app to (possibly) make it work. As we have only a limited amount of time until the test I would like to avoid a lenghty evaluation process like the one testflight requires.
Thanks in advance for any recommendations!
Apps using Managed Workflow can be shared via Expo Go: https://docs.expo.dev/guides/sharing-preview-releases/
After some research I came across diawi.com which seems to offer what I'm searching for. It's really easy for the testers, they just have to scan a qr code or click on a link and the app actually appears as a standalone application.

How to build a desktop app from a web app whilst being able to capture the communication with the server?

I'm trying to transform a web application to a desktop one without rewriting the code. Two solutions I found that seem promising are Qt with WebEngine (WebView) and Electron. The thing is I would like to be able to capture the communication with server, for example database queries and stuff like that and treat it locally. Is that possible using either of that tools? If so do you have any tips on how to go about the issue?
Thanks in advance.
If you don't have enough time to build a desktop app, I recommend to build hybrid app. (Native App + Web). Use Cache, I am not sure about Web Database.
you can read these..
Web Cache
Web DB (it works on browser like Chrome, Safari, Android Browser...)
Just for future reference I decided on Electron and used onBeforeRequest function to capture the http requests.

Meteor mobile build vs having a phonegap browser

Why is the difference between using a simple phonegap browser app pointed at your site vs using meteor's mobile build options?
a simple phonegap browser app pointed at your site
Not sure exactly why you would be ready to use this option, compared to a simple shortcut / link to your site, or even an "installable" Web App.
Anyway, since you point at your site, it means you require an Internet connection whenever you open your app, and you are limited by what a website can access to on your device.
meteor's mobile build options
It becomes similar to a native app (it is actually called a "hybrid" app), so you can use it totally offline, and you can access more device functionalities (file system, notifications, etc.).
Nothing really specific to Meteor here, it is rather why using a hybrid app v.s. a shortcut.
In the end, you should base your decision on your requirements:
Do you need to access your app while offline?
Is your app primary functionality accessing "real time" content that makes no sense using your app while offline? (like news, forums, etc.)
Do you need to access specific device functionalities, that are not accessible by a normal website?
You should have plenty resources on that topic on the Internet.
Your question might rather be: what is the difference between a standard hybrid app (typically built through Cordova / Phonegap) and one built through Meteor?
In that case, you are asking what Meteor brings specifically? (as it uses Cordova under the hood to build the app)
First of all, you have all advantages of Meteor framework for normal website (minimongo, isomorphic methods, etc.)
You also have by default the Hot Code Push functionality. You can also set it up on your Cordova / Phonegap app, but you will have to configure it yourself, whereas Meteor does everything for you.
Finally, you might benefit from Meteor packages that bring Cordova plugin + client code + server code, something unique to Meteor as it is a full-stack framework.

Converting WordPress website to Progressive Web App

I am building a Progressive Web App but there is a very little documentation and support online so far. I am listing down all my questions in this email.
What is the current support of Service Worker API (Offline Mode) for
desktops? I wrote a small app which worked in offline mode for
mobile (Android-Chrome) but not for my Desktop (Chrome 42). We need
to configure development environment for this so we need to know
what will we be needing to test our apps. It doesn't work on
IOS-Safari/Chrome even.
The service work uses caches extensively and there is a very good
way to debug or unregistered service worker internals on Dekstop
Chrome; but if I run my application on Mobile how would I remove
service worker cache?
If I have a responsive application (A WordPress site) and need to
convert it into PWA; would I need to rewrite the application with
RestAPI for mobile version all again? (Read App Shell of PWA). In
PWA, application shell is separate from data however in CMS like
WordPress data is not separate from the UI.
I have been looking for these answers for very long and not being able to find any proper support.
What is the current support of Service Worker API (Offline Mode) for desktops? I wrote a small app which worked in offline mode for mobile (Android-Chrome) but not for my Desktop (Chrome 42). We need to configure development environment for this so we need to know what will we be needing to test our apps. It doesn't work on IOS-Safari/Chrome even.
Safari is not supporting service workers right now but it should work in Chrome 42 although you should consider to update your browser. Anyway, you can check the state of the art in a variety of places:
Service workers: https://platform-status.mozilla.org/#service-worker
Push API: https://platform-status.mozilla.org/#push
Background Sync: https://platform-status.mozilla.org/#background-sync
More about SW:
Is Service Worker Ready? https://jakearchibald.github.io/isserviceworkerready/
Can I Use? http://caniuse.com/#feat=serviceworkers
The service work uses caches extensively and there is a very good way to debug or unregistered service worker internals on Dekstop Chrome; but if I run my application on Mobile how would I remove service worker cache?
You need to debug Chrome for Android from Desktop Chrome.
Anyway, the URL chrome://serviceworkers-internals is available on Chrome for Android although there is no an easy way of clearing offline caches.
If I have a responsive application (A WordPress site) and need to convert it into PWA; would I need to rewrite the application with RestAPI for mobile version all again? (Read App Shell of PWA). In PWA, application shell is separate from data however in CMS like WordPress data is not separate from the UI.
No. Actually, WP has a very well architecture to decouple content from theme. The problem is that run on the server but you don't need your site running on the client to become a PWA. Mozilla is supporting a suite of WP plugins to help progressivizing your WordPress installations:
Offline Shell [github] identifies your shell assets (i.e. theme files) and cache them in an offline cache.
Offline Content [github] identifies your dynamic content and cache it as the user visit it.
Web Push [github] allows you to push real time notifications to your readers as soon as you publish new content.
Add To Home Screen [github] engages your readers by putting your WordPress in the Home Screen.
They are all very young plugins but you can track them on GitHub and contribute if you want!
A very nice and helpful answer is already added by #Salva, but I thought let me add few things which might be helpful.
For 3rd part, I have worked on an automatic progressive web app converter platform, https://www.escalatingweb.com. I think you can use this platform to convert your web app on WordPress into progressive web app. You can use it to convert your web app into pwa within minutes.
I have also written a very nice tutorial to use automatic pwa converter platform http://www.techromance.com/2017/07/22/automatic-pwa-converter-platform/.
For 2nd part,
Just to add to above answer, and for testing purpose, you can delete all the cache for a particular website from site settings, which will also clear service worker's cache.
For 1st part, nothing to add as such.
P.S. Please nobody be offended in case they find it as a cheap way promoting my platform. The intention is just to help the community, either by building the platform or making it aware to the needful audience.
Thank you #McNab for the suggestion. :)
I also using a Wordpress site and there is a plugin can solve your problem. Instead of installing lots of Mozilla's plugin, you can install Super Progressive Web Apps plugin (search for it in plugin install), it works perfectly. Tried both on Android phone and IOS
https://wordpress.org/plugins/super-progressive-web-apps/

Can i use Node.js in my Asp.net Web Application?

I have a Asp.net Application (forms). I want to add video chat feature using webrtc! this video chat application is working on node.js! how can i integrate this webrtc app to my asp.net application ?
Try WebSync, a realtime HTTP streaming (comet) server built for Microsoft stack (.net/iis) using the Bayeus protocol. Search "websync" part in this comment, for "just" an example!
You just need to download their samples; try a simple text-chat sample; and use it for signaling. Simple!
Note: Usually WebRTC developers use node.js for signaling purpose only; however a few people use it to keep sessions to detect presence of the users; if the app you referenced is using such kind of things; then WebSync is not easier because you've to change a lot many things on the server end. Then I'll suggest you try something like this. And obviously iisnode!

Resources