After fetched the user account as shown in user account , the user’s custom_id is not accessible as it is not a Public Field. Is there any reason why it is so? I can get the google / Steam / Facebook IDs, etc.but just not the customer ID? Is there a way round it?
Context: I am trying to broadcast the player’s custom_id during a matchJoin call.
as you noticed custom_id is available from the Account object. Your server-side MatchJoin call can get accounts for all new users using nk.accountGetId function.
Please note, that custom_id is private because it can be used to authenticate to Nakama, same as device_id . You might want to add additional checks in Before hook if you decide to broadcast custom_id to all participants.
Good point! I will definitely be adding additional checks in Before hook.
So because it is a private field, is it the expected behaviour that I cannot get the custom_id from the account object? var account: nkruntime.Account = nakama.accountGetId(presence.userId);
I can access the Steam ID via account.user.steamId
but the code would be rejected when trying to get the Custom ID via account.user.customId
Or is it just a matter of me not knowing the current name of the attribute? e.g. CustomId, customID, CustomID, custom_id, etc. ? ← I tried these already