Household API not returning my household on my friends phone - sonos

I'd like to write an app that lets friends, who visit my place, control my devices using the Sonos API.
My friend is connected to my Sonos home (connect to the same wifi, open Sonos app, select "Connect to an existing system").
The household API only returns my friend's existing household, but not mine. This means that he can't query the groups or perform any playback/start/pause operation using the Sonos API.
Is there any way my friend would be able to control my devices using the Sonos APIs?
Thanks!

When a user authorizes an app to access their Sonos account, only that user's household(s) are visible to that app. The fact that the user is on another Sonos owner's LAN is not relevant, as all communication goes through the cloud.
The only way for user A to access user B's household is for user B to login to user A's app themselves.

Related

Sonos 3rd Party App on different Wifi than Household

In the Sonos API reference documentation there is an example for how to allow the user to select a household in case multiple households are associated with the connected user account
https://developer.sonos.com/build/seg/discover/
In the Sample Screenshot at the bottom, the text says "Make sure that this device and the Sonos system are on the same WiFi network."
Am I correct to assume this is only a recommendation and not a requirement?
The Sonos API is cloud based, so I would assume it does not matter if the device and the Sonos system are connected to the same Wifi Network?
Also, using the Sonos API, would there even be a way to determine to which WiFi network the Sonos System is connected?
Does the Household ID contain any information about the WiFi SSID?
Thank you for the help
Am I correct to assume this is only a recommendation and not a requirement?
This is correct, this is a recommendation, with regards to discovery. More broadly, however, if you want to have a Sonos speaker interact with a specific Sonos system, it has to be on the same network. For instance, all speakers in a single household should be on the same network.
The Sonos API is cloud based, so I would assume it does not matter if the device and the Sonos system are connected to the same Wifi Network?
Your assumption is correct; since the Sonos API is cloud-based, you can access and control the Sonos system regardless of what network you are on.
Also, using the Sonos API, would there even be a way to determine to which WiFi network the Sonos System is connected?
Does the Household ID contain any information about the WiFi SSID?
No, there currently is not any way to get information regarding the WiFi SSID using the Sonos API nor Household ID.
For more on Discovery, see https://developer.sonos.com/build/direct-control/discover/.

Linkedin APIs for authentication, connection invitations and user search

I wrote this same question to #Linkedin support service and I was redirected to this link where they indicate to ask questions in Stackoverflow.
We are developing a mobile App for the Polytechnic University of Madrid and we plan to expand to other Universities in the future. This aplication will need in a first instance OAuth via Linkedin. It will also need to allow the authenticated user to send connection invitations to other users contained in a list. For creating that list of users, it will be useful if the admin of the system could search in a bar similar to the one which Linkedin has, write a user name and select it, retrieving its user ID or what is needed to identify the invitation destination.
Summing up, the App needs:
OAuth API
Connection request API
User search API
I have read on the web that some of Linkedin's APIs suffered some modifications in which most of them where limited to allowed users or apps. So the aim of this post is knowing:
Do the APIs my mobile application needs exist?
What do I need to do to obtain the access to those APIs in case they exist?
User search API
For this feature you could use something like Algolia Instant Search
LinkedIn has changed many things related to user data. If you need access to its data then you must follow the given guidelines.
Basically you have to create a LinkedIn App and then the users have to grant permissions to your app by installing it in their device(s) and then only you can collect their data.

Google Play Games - How to ask the user to create a gamerId account when signin in

When a user signs in my web based game with Google SignIn through a web browser, access is granted. However, when the app makes a call to the Games Services API, it returns the following error:
User registration incomplete
If the user goes then to the Android Play Games app and creates a Gamer ID account, it works.
So, is there any way to tell the user to create a Gamer ID account when she signs in if she wants to proceed? Or, better, can Google redirect her to a page for that, complete the process and then come back to the app?
The Gamer account (also sometimes informally referred to as Games lite account) can only be created on Android devices. Once it is created it can be accessed from other platforms.

Check if google account has been verified by phone

I want to make login with google in my android application but I want to let do this only using google accounts that has been verified by phone (via voice or sms)
https://support.google.com/accounts/answer/63950?hl=en
Is there any way to check through API if google account has been verified by phone?
No, that isn't possible. If you're concerned about account creation abuse, Google has top notch abuse team that is on top of spammers, fake accounts and other abuse related account creations. That is one of the reasons to use a social auth provider like Google in that you don't have to provide that abuse checking on your own.

Does C2DM registration id change when a different user logs in?

From the documents it appears that there should be a valid Google-account on the phone before an application signs up and gets its registration id.
What happens when the user signs out of that application, and some new user signs in. Does Google issue a new registration id?
To push messages to a device you need the registartion id from the device.
You have to generate this id in your app via registration intent.
This registration id is an ID generated from the app, your device and your google account.
Once you have the ID and you are registered for C2DM you can push messages on the device with this id.
You will call an URL from google and post the register id through the url. Google then sends the push to the device (Google knows you because you are logged in in your google account on your device).
If you change the Google account you won't get any pushes, because the registration id is also generated with your Google ID.
You have to call for a new registration ID.
Here is a nice tutorial for push.
hope this helps