I was trying to link multiple devices to a single (facebook enabled) user account (which was indeed the first intent for this question), but I came up with this weird behaviour when I was gathering evidence.
This is what I did:
1. Remove all documents from the player collection
Where is the displayName of the player that just authenticated?
And finally... is it possible to link further devices to my user?
Thanks in advance!
Best Answer
C
Customer Support
said
over 6 years ago
Hi Guys,
When authenticating with an external social account you need to set doNotLinkToCurrentPlayer to false to link the social account you are authenticating with to the current authenticated player. In Eduardos example above, he was not doing this, he was just sending the token in the FacebookConnectRequest that would result in a new player being created. Sanghoon if you are doing some tests and removing players from the system player collection in the NoSql explorer manually, you will also need to remove the matching document for the deleted player from the externalAuthentication collection. It should work fine then. System collections are read only you you can't write to them manually.
NoSQL "externalAuthentication" collection has information of previous connection of external services.
It seems restoring old user, not creating new user. But as player collection removed, it looks like it creates one new account.
Customer Support
said
over 6 years ago
Answer
Hi Guys,
When authenticating with an external social account you need to set doNotLinkToCurrentPlayer to false to link the social account you are authenticating with to the current authenticated player. In Eduardos example above, he was not doing this, he was just sending the token in the FacebookConnectRequest that would result in a new player being created. Sanghoon if you are doing some tests and removing players from the system player collection in the NoSql explorer manually, you will also need to remove the matching document for the deleted player from the externalAuthentication collection. It should work fine then. System collections are read only you you can't write to them manually.
Eduardo Casillas
I was trying to link multiple devices to a single (facebook enabled) user account (which was indeed the first intent for this question), but I came up with this weird behaviour when I was gathering evidence.
This is what I did:
1. Remove all documents from the player collection
2. Device authentication:
A player document is successfully created
3. Facebook authentication:
Result: I have the following two player documents:
So there are many questions here:
Hi Guys,
When authenticating with an external social account you need to set doNotLinkToCurrentPlayer to false to link the social account you are authenticating with to the current authenticated player. In Eduardos example above, he was not doing this, he was just sending the token in the FacebookConnectRequest that would result in a new player being created. Sanghoon if you are doing some tests and removing players from the system player collection in the NoSql explorer manually, you will also need to remove the matching document for the deleted player from the externalAuthentication collection. It should work fine then. System collections are read only you you can't write to them manually.
Thanks,
Liam
- Oldest First
- Popular
- Newest First
Sorted by Oldest FirstEduardo Casillas
Any answers about this?
I'm trying again today. Again: first device authentication, next Facebook authentication; the result now are two players created.
To reproduce:
1. Device Authentication
2. Facebook Authentication:
Result: Two players created:
Sanghoon Jeon
+1 this ticket.
As I'm trying to connect multiple social services to one account,
but it keep creating new player account per each social service.
Do I need to do something?
Such as modifying these in player collection manually with cloud code?
"externalAuthentications": { "FB": { "$oid": "554a4d4be4b0c1702a9bd644" } }, "externalIds": { "FB": "1388744301454096" },
Sanghoon Jeon
I found out.
NoSQL "externalAuthentication" collection has information of previous connection of external services.
It seems restoring old user, not creating new user. But as player collection removed, it looks like it creates one new account.
Customer Support
Hi Guys,
When authenticating with an external social account you need to set doNotLinkToCurrentPlayer to false to link the social account you are authenticating with to the current authenticated player. In Eduardos example above, he was not doing this, he was just sending the token in the FacebookConnectRequest that would result in a new player being created. Sanghoon if you are doing some tests and removing players from the system player collection in the NoSql explorer manually, you will also need to remove the matching document for the deleted player from the externalAuthentication collection. It should work fine then. System collections are read only you you can't write to them manually.
Thanks,
Liam
-
Documentation Notes
-
Design issues with user events
-
Using NoSQL
-
Runtime Collections vs Metadata Collections
-
Anonymous authentication from browser app
-
Modules
-
Movement With Unity
-
Problem with url parameters for downloadables
-
Querying NoSql GameSparks database
-
Challenge accesType
See all 2487 topics