How can I make my service deployed locally visible for a Google Home device app? - google-home

I've created my action on Google development project and I've deployed a self signed service locally(in the local network) which I've added for fulfilment on the Action settings. Now I see my app in the Google Assistant, under Add devices, but when I try to link accounts(the account linking was also set previously), the action.devices.SYNC is not triggered and I get the "Couldn't update the settings. Check your connection". My phone is also in the same network. What am i missing?

All Google Assistant Actions, including Smart Home Actions, go through Google's cloud. Even requests from your phone or Google Home device to the smart device on the same LAN go through Google's servers.
Google's servers need to be able to contact your local service, so it needs to have a globally accessible IP address/name.

Related

Not able to download certificate using intune company portal

I have company provided Samsung S20. I have successfully installed Microsoft's Intune Company Portal App.
Then I was also able to register company portal. However after connecting to company portal, it suppose to download certificate from the company portal. But its not downloading any certificate or i dont see any notifications that it is downloaded.
Once i have the certificate, i will use it to connect to Access Point. But that's next step after i have the certificate.
1>What could be the potential issue for not downloading certificate?
2>Where and how can i view the logs?
3>In Company Portal App, Under settings i see Diagnostic Data-> Copy logs. Which says Copy logs to SD card. Where does it actually copies logs.
4>I am connecting from home. Is there any settings i need to do on router.
Note that, I also have company provided iPhone. and I was able to install and configure everything without any issue.
1>What could be the potential issue for not downloading certificate?
It depends on what you need the certificate for. How are you issuing the certificate to the device? via configuration policy?
2>Where and how can i view the logs?
Plug the device into a computer and allow USB to transfer data and files. Should be under Android\Com.microsoftintunecompanyportal\data
3>In Company Portal App, Under settings i see Diagnostic Data-> Copy logs. Which says Copy logs to SD card. Where does it actually copies logs.
refer to previous answer
4>I am connecting from home. Is there any settings i need to do on router.
Sounds like you're trying to get a trust certificate on the device but I would need to understand more about what you're trying to do. RIght now I'm working on a wifi profile for android devices and am using SCEP certificates to do that. But you're welcome to read this to try to gain a better understanding.
https://learn.microsoft.com/en-us/mem/intune/protect/certificates-configure

Is it possible to create a custom app for Microsoft Teams that dosn't use a central service provider?

I am working on adding support for our cloud storage solution to MS Teams but there is no central server you can send http messages to and get meaningful relies back from. I have no experience with creating Teams apps so I was hoping someone with Teams apps experience could tell me if this is even possible. At this point I only need my app to work on Windows and OS X.
This is how I would like my Teams App to work:
Each member of the team already has our cloud storage app running locally on their machine which provides access to the files.
Within MS Teams the user adds a file reference to a message via a message extension that would result in a link unfurl creating a card that contains an 'Open' button. The URL in the card would be one generated by our locally running cloud storage app. Other members of the team could then open this file by clicking the 'Open' button. The action of the open button would be to send the URL to our cloud storage app that would then open the local copy of the file on that team members machine.
Is it possible to do something like this within a Teams app? The communication between the Teams app and our cloud storage app would be done over our own protocol.
If it weren't for the fact that all bot communication must be done over https rather than http the local cloud storage app could act as the server.
All the communication in Teams with 3P apps needs to happen over https public endpoint. You could use ngrok to tunnel to local.

Do I have to publish my project in order for it to work with any enterprise (Google Apps for work) accounts?

I am implementing an integration with Google Drive, which is to show a user's Drive files on our own website (after a 3-legged OAuth2 authorization).
So it is not a webapp that you will connect to the Google Drive UI, and thus I don't see the need to publish it in Apps Marketplace.
My project is created with my personal (free) account on console.developers.google.com,
and I'd like to confirm here: if not published, will it still work with any types of accounts, especially with enterprise accounts(e.g. Google Apps for Work)?
It does not need to be published as long as the domain administrator has not disabled Drive Apps. If a domain admin has disabled Drive Apps, I believe publishing to the Google Apps Marketplace is required so that the domain admin can install the App for all domain users.

Invoke CNA on iOS8 device

I am working on a network controller based on Raspberry Pi 2. I have nicely working WiFi AP, DHCP server, captive portal (via DNSmasq) and a web server. The unit is fully offline, no internet access is available.
My only problem now is that users need to initiate interaction by running their browser and typing in a random domain so they are served my content.
I was searching the internet for a way to make my iPhone initiate captive network assistant, but couldn't find a way to do so on iOS 8.
Given that my network is offline with no access to the internet it is clear to me that my iPhone detected a captive portal as it presumably pings many websites in order to determine it's online status. Why doesn't it display my login screen automatically?

Can a Windows Azure Mobile Service accept GET requests from any domain?

I have a PhoneGap App running on WP7 that I would like to connect to a Windows Azure Mobile Service. However, in order for this to work in my testing using JSFiddle.net I had to add the JSFiddle domain to the CORS settings in the Windows Azure Mobile Service.
Why do I need to add domains to the CORS setting on the server when doing a simple GET?
Since the Mobile Service requires a key from the JavaScript code I don't see why I cannot open up this web service to any request that supplies the correct key but adding . does not seem to work. If this worked I could move on to testing the scenario on the Phone.
Am I missing something architecturally here or is this just a feature that no-one else is looking for?!
If you want to allow any domain to access your mobile service, you can add the * in the list of cross-origin resource sharing hostnames under the configure tab.
Notice that the application key is not secure. From the 'How to use an HTML/JavaScript client for Windows Azure Mobile Services' tutorial (emphasis mine):
Application key: A unique value that is generated by Mobile Services, distributed with your app, and presented in client-generated requests. While useful for limiting access to your mobile service from random clients, this key is not secure and should not be used to authenticate users of your app.
The takeaway is that you should not count on that key to secure your service.

Resources