Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Nintendo Switch Online API does not return Presence data #13

Closed
MCMi460 opened this issue Apr 29, 2022 · 7 comments
Closed

Nintendo Switch Online API does not return Presence data #13

MCMi460 opened this issue Apr 29, 2022 · 7 comments
Labels
bug Something isn't working help wanted Extra attention is needed

Comments

@MCMi460
Copy link
Owner

MCMi460 commented Apr 29, 2022

Effectively a repost of nxapi's issue - /v3/User/ShowSelf (and apparently /v3/Account/Login and /v3/Account/GetToken) are failing to return Presence object data.

@MCMi460 MCMi460 added bug Something isn't working help wanted Extra attention is needed labels Apr 29, 2022
This was referenced Apr 29, 2022
@MCMi460
Copy link
Owner Author

MCMi460 commented Apr 29, 2022

@samuelthomas2774 It appears that /v3/Account/Login does not return the user's Presence data on the official Nintendo Online Mobile app either (checked through mitmproxy)- it seems that Nintendo has changed something in their API to prevent the user from fetching their own Presence?

@MCMi460
Copy link
Owner Author

MCMi460 commented May 1, 2022

As @samuelthomas2774 stated above, it is unlikely that the original use of this app will be supported for a prolonged, or indefinite, period of time. Until then, I will start implementing an alternative method to displaying your status which will require more than the initial 'login and play' NSO-RPC was known for.


What will change?

Since Nintendo has dropped support of sharing a user's self status (possibly from noticed use of nxapi and this app?), we will have to resort to a secondary method of supplying a user their Presence: Receiving it as a friend's Presence. As one might note, the current version of the app still displays the user's friends as online, along with Presence data. As a backup solution, we could just require the user to login as a subservient Nintendo account already friended with the intended one for Presence data. Since /v3/Friend/List is unlikely to ever be compromised as the actual Nintendo Online Mobile app has a section with friends data, we can just fetch the intended user's Presence data with a friend account's Friend List.
This was actually my first method of achieving the user's Presence data before I knew you could retrieve it from /v3/Account/Login (and subsequently, /v3/User/ShowSelf).

When will this change be introduced?

Give me a week or so. Until then, the app will not work on its own for anything other than displaying friend's data. I'm sorry for the inconvenience.

This thread will be closed with the introduction of the new method.

MCMi460 added a commit that referenced this issue May 1, 2022
@MCMi460 MCMi460 mentioned this issue May 3, 2022
@MCMi460 MCMi460 pinned this issue May 8, 2022
@MCMi460
Copy link
Owner Author

MCMi460 commented Jun 7, 2022

I've recently pushed an update to the development branch.
Commit b8a272f should allow for re-targeting the focused user, meaning one can simply use a friend account to receive their status. This is a workaround to the drop of support Nintendo's API changes caused.
I'm sorry for taking this long to fix this.

I am going to keep this issue open until I am 100% certain there are no issues with the current build.
Thank you for your patience.

@MCMi460
Copy link
Owner Author

MCMi460 commented Jun 28, 2022

Release 1.3 has been published today, so I'm going to finally close this issue. Thank you all for waiting!

@RepressedNerd
Copy link

RepressedNerd commented Jul 24, 2022

Hii! I was wondering if this is still a common thing? It seems to be closed, but it's happening for me.
Do you have any workaround ideas? I was going to create another account to use for the app, and use my actual account in my friends list, but I then discovered I couldn't add myself as a friend, as I needed ANOTHER Switch to do that.
EDIT: Just reread the README file, and now I understand what that part meant. Okay, so, if doing this is what you're meant to do for this app, do you know how to send your main account a friend request with the secondary one?

@samuelthomas2774
Copy link

samuelthomas2774 commented Jul 24, 2022

Hii! I was wondering if this is still a common thing? It seems to be closed, but it's happening for me.

The issue is Nintendo removed the ability to get your own presence data from their API. This issue is closed because it's not something that can be 'fixed' by anyone else. (See samuelthomas2774/nxapi#1 for more information on this.)

Do you have any workaround ideas? I was going to create another account to use for the app, and use my actual account in my friends list, but I then discovered I couldn't add myself as a friend, as I needed ANOTHER Switch to do that.
EDIT: Just reread the README file, and now I understand what that part meant. Okay, so, if doing this is what you're meant to do for this app, do you know how to send your main account a friend request with the secondary one?

You don't need another console. You can just copy your main account's friend code (from your console, or Nintendo's app, nxapi or NSO-RPC), then go to the secondary account and send a friend request to your main account, then go back to that account and accept it, all from one console. You should be able to remove the secondary user from the console after that if you're not going to use it for anything else.

@MCMi460
Copy link
Owner Author

MCMi460 commented Jul 25, 2022

Thank you, @samuelthomas2774!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working help wanted Extra attention is needed
Projects
None yet
Development

No branches or pull requests

3 participants