Friend services: Difference between revisions
No edit summary |
No edit summary |
||
| (15 intermediate revisions by 3 users not shown) | |||
| Line 4: | Line 4: | ||
{| class="wikitable" border="1" | {| class="wikitable" border="1" | ||
|- | |- | ||
! Cmd || Name | ! Cmd || Name | ||
|- | |- | ||
| 0 || | | 0 || [[#CreateFriendService|CreateFriendService]] | ||
|- | |- | ||
| 1 || [2.0.0+] | | 1 || [2.0.0+] [[#CreateNotificationService|CreateNotificationService]] | ||
|- | |- | ||
| 2 || [4.0.0+] | | 2 || [4.0.0+] [[#CreateDaemonSuspendSessionService|CreateDaemonSuspendSessionService]] | ||
|} | |} | ||
== CreateFriendService == | |||
Returns an [[#IFriendService]]. | |||
== CreateNotificationService == | |||
Takes an input userID and returns [[#INotificationService]]. | |||
== CreateDaemonSuspendSessionService == | |||
Returns an [[#IDaemonSuspendSessionService]]. | |||
== IFriendService == | == IFriendService == | ||
| Line 31: | Line 40: | ||
|- | |- | ||
| 10110 || GetFriendProfileImage | | 10110 || GetFriendProfileImage | ||
|- | |||
| 10111 || [18.0.0+] GetFriendProfileImageWithImageSize | |||
|- | |||
| 10120 || [12.0.0+] CheckFriendListAvailability ([10.0.0-11.0.1] IsFriendListCacheAvailable) | |||
|- | |||
| 10121 || [10.0.0+] EnsureFriendListAvailable | |||
|- | |- | ||
| 10200 || SendFriendRequestForApplication | | 10200 || SendFriendRequestForApplication | ||
| Line 37: | Line 52: | ||
|- | |- | ||
| 10400 || GetBlockedUserListIds | | 10400 || GetBlockedUserListIds | ||
|- | |||
| 10420 || [12.0.0+] CheckBlockedUserListAvailability ([10.0.0-11.0.1] IsBlockedUserListCacheAvailable) | |||
|- | |||
| 10421 || [10.0.0+] EnsureBlockedUserListAvailable | |||
|- | |- | ||
| 10500 || GetProfileList | | 10500 || GetProfileList | ||
|- | |||
| 10501 || [18.0.0+] GetProfileListV2 | |||
|- | |- | ||
| 10600 || DeclareOpenOnlinePlaySession | | 10600 || DeclareOpenOnlinePlaySession | ||
| Line 53: | Line 74: | ||
|- | |- | ||
| 11000 || GetProfileImageUrl | | 11000 || GetProfileImageUrl | ||
|- | |||
| 11001 || [18.0.0+] GetProfileImageUrlV2 | |||
|- | |- | ||
| 20100 || GetFriendCount | | 20100 || GetFriendCount | ||
| Line 63: | Line 86: | ||
|- | |- | ||
| 20104 || RequestSyncFriendList | | 20104 || RequestSyncFriendList | ||
|- | |||
| 20105 || [19.0.0+] GetFriendListForViewer | |||
|- | |||
| 20106 || [19.0.0+] UpdateFriendInfoForViewer | |||
|- | |||
| 20107 || [20.0.0+] GetFriendDetailedInfoV2 | |||
|- | |- | ||
| 20110 || LoadFriendSetting | | 20110 || LoadFriendSetting | ||
| Line 68: | Line 97: | ||
| 20200 || GetReceivedFriendRequestCount | | 20200 || GetReceivedFriendRequestCount | ||
|- | |- | ||
| 20201 || GetFriendRequestList | | 20201 || [20.0.0+] GetFriendRequestListV1 ([1.0.0-19.0.1] GetFriendRequestList) | ||
|- | |||
| 20202 || [20.0.0+] GetFriendRequestListV2 | |||
|- | |- | ||
| 20300 || GetFriendCandidateList | | 20300 || GetFriendCandidateList | ||
| Line 74: | Line 105: | ||
| 20301 || [3.0.0+] GetNintendoNetworkIdInfo | | 20301 || [3.0.0+] GetNintendoNetworkIdInfo | ||
|- | |- | ||
| 20302 || [5.0.0 | | 20302 || [5.0.0-19.0.1] GetSnsAccountLinkage | ||
|- | |- | ||
| 20303 || [5.0.0 | | 20303 || [5.0.0-19.0.1] GetSnsAccountProfile | ||
|- | |- | ||
| 20304 || [5.0.0 | | 20304 || [5.0.0-19.0.1] GetSnsAccountFriendList | ||
|- | |- | ||
| 20400 || GetBlockedUserList | | 20400 || [20.0.0+] GetBlockedUserListV1 ([1.0.0-19.0.1] GetBlockedUserList) | ||
|- | |- | ||
| 20401 || SyncBlockedUserList | | 20401 || SyncBlockedUserList | ||
|- | |- | ||
| 20500 || GetProfileExtraList | | 20402 || [20.0.0+] GetBlockedUserListV2 | ||
|- | |||
| 20500 || [19.0.0+] GetProfileExtraListV1 ([1.0.0-18.1.0] GetProfileExtraList) | |||
|- | |- | ||
| 20501 || GetRelationship | | 20501 || GetRelationship | ||
|- | |- | ||
| | | 20502 || [19.0.0+] GetProfileExtraListV2 | ||
|- | |- | ||
| 20700 || GetPlayHistoryList | | 20600 || [19.0.0+] GetUserPresenceViewV1 ([1.0.0-18.1.0] GetUserPresenceView) | ||
|- | |||
| 20601 || [19.0.0+] GetUserPresenceViewV2 | |||
|- | |||
| 20700 || [19.0.0+] GetPlayHistoryListV1 ([1.0.0-18.1.0] GetPlayHistoryList) | |||
|- | |- | ||
| 20701 || GetPlayHistoryStatistics | | 20701 || GetPlayHistoryStatistics | ||
|- | |- | ||
| 20800 || LoadUserSetting | | 20702 || [19.0.0+] GetPlayHistoryListV2 | ||
|- | |||
| 20800 || [19.0.0+] LoadUserSettingV1 ([1.0.0-18.1.0] LoadUserSetting) | |||
|- | |- | ||
| 20801 || SyncUserSetting | | 20801 || SyncUserSetting | ||
|- | |||
| 20802 || [19.0.0+] LoadUserSettingV2 | |||
|- | |- | ||
| 20900 || RequestListSummaryOverlayNotification | | 20900 || RequestListSummaryOverlayNotification | ||
| Line 102: | Line 143: | ||
| 21000 || GetExternalApplicationCatalog | | 21000 || GetExternalApplicationCatalog | ||
|- | |- | ||
| 22000 || [9.0.0+] | | 22000 || [19.0.0+] GetReceivedFriendInvitationListV1 ([9.0.0-18.1.0] GetReceivedFriendInvitationList) | ||
|- | |||
| 22001 || [19.0.0+] GetReceivedFriendInvitationDetailedInfoV1 ([9.0.0-18.1.0] GetReceivedFriendInvitationDetailedInfo) | |||
|- | |||
| 22002 || [19.0.0+] GetReceivedFriendInvitationListV2 | |||
|- | |- | ||
| | | 22003 || [19.0.0+] GetReceivedFriendInvitationDetailedInfoV2 | ||
|- | |- | ||
| 22010 || [9.0.0+] GetReceivedFriendInvitationCountCache | | 22010 || [9.0.0+] GetReceivedFriendInvitationCountCache | ||
| Line 120: | Line 165: | ||
| 30200 || SendFriendRequest | | 30200 || SendFriendRequest | ||
|- | |- | ||
| 30201 || SendFriendRequestWithApplicationInfo | | 30201 || [20.0.0+] SendFriendRequestWithApplicationInfoV1 ([1.0.0-19.0.1] SendFriendRequestWithApplicationInfo) | ||
|- | |- | ||
| 30202 || CancelFriendRequest | | 30202 || CancelFriendRequest | ||
| Line 146: | Line 191: | ||
| 30217 || [3.0.0+] SendFriendRequestWithNintendoNetworkIdInfo | | 30217 || [3.0.0+] SendFriendRequestWithNintendoNetworkIdInfo | ||
|- | |- | ||
| | | 30218 || [20.0.0+] SendFriendRequestWithApplicationInfoV2 | ||
|- | |- | ||
| 30301 || [5.0.0 | | 30300 || [5.0.0-19.0.1] GetSnsAccountLinkPageUrl | ||
|- | |||
| 30301 || [5.0.0-19.0.1] UnlinkSnsAccount | |||
|- | |- | ||
| 30400 || BlockUser | | 30400 || BlockUser | ||
|- | |- | ||
| 30401 || BlockUserWithApplicationInfo | | 30401 || [20.0.0+] BlockUserWithApplicationInfoV1 ([1.0.0-19.0.1] BlockUserWithApplicationInfo) | ||
|- | |- | ||
| 30402 || UnblockUser | | 30402 || UnblockUser | ||
|- | |- | ||
| 30500 || GetProfileExtraFromFriendCode | | 30403 || [20.0.0+] BlockUserWithApplicationInfoV2 | ||
|- | |||
| 30500 || [19.0.0+] GetProfileExtraFromFriendCodeV1 ([1.0.0-18.1.0] GetProfileExtraFromFriendCode) | |||
|- | |||
| 30501 || [19.0.0+] GetProfileExtraFromFriendCodeV2 | |||
|- | |- | ||
| 30700 || DeletePlayHistory | | 30700 || DeletePlayHistory | ||
|- | |||
| 30701 || [19.0.0+] AddPlayHistoryWithApplication | |||
|- | |- | ||
| 30810 || ChangePresencePermission | | 30810 || ChangePresencePermission | ||
| Line 170: | Line 223: | ||
| 30830 || ClearPlayLog | | 30830 || ClearPlayLog | ||
|- | |- | ||
| 30900 || [9.0.0+] | | 30900 || [19.0.0+] SendFriendInvitationV1 ([9.0.0-18.1.0] SendFriendInvitation) | ||
|- | |||
| 30901 || [19.0.0+] SendFriendInvitationV2 | |||
|- | |- | ||
| 30910 || [9.0.0+] ReadFriendInvitation | | 30910 || [9.0.0+] ReadFriendInvitation | ||
|- | |||
| 30911 || [9.1.0+] ReadAllFriendInvitations | |||
|- | |||
| 31000 || [19.0.0+] OpenUser | |||
|- | |||
| 40100 || [10.0.0+] DeleteFriendListCache | |||
|- | |||
| 40400 || [10.0.0+] DeleteBlockedUserListCache | |||
|- | |- | ||
| 49900 || DeleteNetworkServiceAccountCache | | 49900 || DeleteNetworkServiceAccountCache | ||
| Line 192: | Line 255: | ||
== IDaemonSuspendSessionService == | == IDaemonSuspendSessionService == | ||
This is "nn::friends::detail::ipc::IDaemonSuspendSessionService". | This is "nn::friends::detail::ipc::IDaemonSuspendSessionService". This was added with [4.0.0+]. | ||
This service has no commands. | |||
= nd:app = | = nd:app = | ||
| Line 320: | Line 370: | ||
This is "nn::friends::InAppScreenName". This is a 0x48-byte struct. | This is "nn::friends::InAppScreenName". This is a 0x48-byte struct. | ||
= FriendInvitationGameModeDescription = | |||
This is "nn::friends::FriendInvitationGameModeDescription". This is a 0xC00-byte struct. | |||
= FriendInvitationId = | |||
This is "nn::friends::FriendInvitationId". This is 8-bytes. | |||
= FriendInvitationGroupId = | |||
This is "nn::friends::FriendInvitationGroupId". This is 8-bytes. | |||
[[Category:Services]] | [[Category:Services]] | ||
Latest revision as of 00:11, 1 May 2025
friend:u, friend:v, friend:m, friend:s, friend:a
This is "nn::friends::detail::ipc::IServiceCreator".
| Cmd | Name |
|---|---|
| 0 | CreateFriendService |
| 1 | [2.0.0+] CreateNotificationService |
| 2 | [4.0.0+] CreateDaemonSuspendSessionService |
CreateFriendService
Returns an #IFriendService.
CreateNotificationService
Takes an input userID and returns #INotificationService.
CreateDaemonSuspendSessionService
Returns an #IDaemonSuspendSessionService.
IFriendService
This is "nn::friends::detail::ipc::IFriendService".
| Cmd | Name |
|---|---|
| 0 | GetCompletionEvent |
| 1 | Cancel |
| 10100 | GetFriendListIds |
| 10101 | GetFriendList |
| 10102 | UpdateFriendInfo |
| 10110 | GetFriendProfileImage |
| 10111 | [18.0.0+] GetFriendProfileImageWithImageSize |
| 10120 | [12.0.0+] CheckFriendListAvailability ([10.0.0-11.0.1] IsFriendListCacheAvailable) |
| 10121 | [10.0.0+] EnsureFriendListAvailable |
| 10200 | SendFriendRequestForApplication |
| 10211 | AddFacedFriendRequestForApplication |
| 10400 | GetBlockedUserListIds |
| 10420 | [12.0.0+] CheckBlockedUserListAvailability ([10.0.0-11.0.1] IsBlockedUserListCacheAvailable) |
| 10421 | [10.0.0+] EnsureBlockedUserListAvailable |
| 10500 | GetProfileList |
| 10501 | [18.0.0+] GetProfileListV2 |
| 10600 | DeclareOpenOnlinePlaySession |
| 10601 | DeclareCloseOnlinePlaySession |
| 10610 | UpdateUserPresence |
| 10700 | GetPlayHistoryRegistrationKey |
| 10701 | GetPlayHistoryRegistrationKeyWithNetworkServiceAccountId |
| 10702 | AddPlayHistory |
| 11000 | GetProfileImageUrl |
| 11001 | [18.0.0+] GetProfileImageUrlV2 |
| 20100 | GetFriendCount |
| 20101 | GetNewlyFriendCount |
| 20102 | GetFriendDetailedInfo |
| 20103 | SyncFriendList |
| 20104 | RequestSyncFriendList |
| 20105 | [19.0.0+] GetFriendListForViewer |
| 20106 | [19.0.0+] UpdateFriendInfoForViewer |
| 20107 | [20.0.0+] GetFriendDetailedInfoV2 |
| 20110 | LoadFriendSetting |
| 20200 | GetReceivedFriendRequestCount |
| 20201 | [20.0.0+] GetFriendRequestListV1 ([1.0.0-19.0.1] GetFriendRequestList) |
| 20202 | [20.0.0+] GetFriendRequestListV2 |
| 20300 | GetFriendCandidateList |
| 20301 | [3.0.0+] GetNintendoNetworkIdInfo |
| 20302 | [5.0.0-19.0.1] GetSnsAccountLinkage |
| 20303 | [5.0.0-19.0.1] GetSnsAccountProfile |
| 20304 | [5.0.0-19.0.1] GetSnsAccountFriendList |
| 20400 | [20.0.0+] GetBlockedUserListV1 ([1.0.0-19.0.1] GetBlockedUserList) |
| 20401 | SyncBlockedUserList |
| 20402 | [20.0.0+] GetBlockedUserListV2 |
| 20500 | [19.0.0+] GetProfileExtraListV1 ([1.0.0-18.1.0] GetProfileExtraList) |
| 20501 | GetRelationship |
| 20502 | [19.0.0+] GetProfileExtraListV2 |
| 20600 | [19.0.0+] GetUserPresenceViewV1 ([1.0.0-18.1.0] GetUserPresenceView) |
| 20601 | [19.0.0+] GetUserPresenceViewV2 |
| 20700 | [19.0.0+] GetPlayHistoryListV1 ([1.0.0-18.1.0] GetPlayHistoryList) |
| 20701 | GetPlayHistoryStatistics |
| 20702 | [19.0.0+] GetPlayHistoryListV2 |
| 20800 | [19.0.0+] LoadUserSettingV1 ([1.0.0-18.1.0] LoadUserSetting) |
| 20801 | SyncUserSetting |
| 20802 | [19.0.0+] LoadUserSettingV2 |
| 20900 | RequestListSummaryOverlayNotification |
| 21000 | GetExternalApplicationCatalog |
| 22000 | [19.0.0+] GetReceivedFriendInvitationListV1 ([9.0.0-18.1.0] GetReceivedFriendInvitationList) |
| 22001 | [19.0.0+] GetReceivedFriendInvitationDetailedInfoV1 ([9.0.0-18.1.0] GetReceivedFriendInvitationDetailedInfo) |
| 22002 | [19.0.0+] GetReceivedFriendInvitationListV2 |
| 22003 | [19.0.0+] GetReceivedFriendInvitationDetailedInfoV2 |
| 22010 | [9.0.0+] GetReceivedFriendInvitationCountCache |
| 30100 | DropFriendNewlyFlags |
| 30101 | DeleteFriend |
| 30110 | DropFriendNewlyFlag |
| 30120 | ChangeFriendFavoriteFlag |
| 30121 | ChangeFriendOnlineNotificationFlag |
| 30200 | SendFriendRequest |
| 30201 | [20.0.0+] SendFriendRequestWithApplicationInfoV1 ([1.0.0-19.0.1] SendFriendRequestWithApplicationInfo) |
| 30202 | CancelFriendRequest |
| 30203 | AcceptFriendRequest |
| 30204 | RejectFriendRequest |
| 30205 | ReadFriendRequest |
| 30210 | GetFacedFriendRequestRegistrationKey |
| 30211 | AddFacedFriendRequest |
| 30212 | CancelFacedFriendRequest |
| 30213 | GetFacedFriendRequestProfileImage |
| 30214 | GetFacedFriendRequestProfileImageFromPath |
| 30215 | SendFriendRequestWithExternalApplicationCatalogId |
| 30216 | ResendFacedFriendRequest |
| 30217 | [3.0.0+] SendFriendRequestWithNintendoNetworkIdInfo |
| 30218 | [20.0.0+] SendFriendRequestWithApplicationInfoV2 |
| 30300 | [5.0.0-19.0.1] GetSnsAccountLinkPageUrl |
| 30301 | [5.0.0-19.0.1] UnlinkSnsAccount |
| 30400 | BlockUser |
| 30401 | [20.0.0+] BlockUserWithApplicationInfoV1 ([1.0.0-19.0.1] BlockUserWithApplicationInfo) |
| 30402 | UnblockUser |
| 30403 | [20.0.0+] BlockUserWithApplicationInfoV2 |
| 30500 | [19.0.0+] GetProfileExtraFromFriendCodeV1 ([1.0.0-18.1.0] GetProfileExtraFromFriendCode) |
| 30501 | [19.0.0+] GetProfileExtraFromFriendCodeV2 |
| 30700 | DeletePlayHistory |
| 30701 | [19.0.0+] AddPlayHistoryWithApplication |
| 30810 | ChangePresencePermission |
| 30811 | ChangeFriendRequestReception |
| 30812 | ChangePlayLogPermission |
| 30820 | IssueFriendCode |
| 30830 | ClearPlayLog |
| 30900 | [19.0.0+] SendFriendInvitationV1 ([9.0.0-18.1.0] SendFriendInvitation) |
| 30901 | [19.0.0+] SendFriendInvitationV2 |
| 30910 | [9.0.0+] ReadFriendInvitation |
| 30911 | [9.1.0+] ReadAllFriendInvitations |
| 31000 | [19.0.0+] OpenUser |
| 40100 | [10.0.0+] DeleteFriendListCache |
| 40400 | [10.0.0+] DeleteBlockedUserListCache |
| 49900 | DeleteNetworkServiceAccountCache |
INotificationService
This is "nn::friends::detail::ipc::INotificationService".
| Cmd | Name | Notes |
|---|---|---|
| 0 | [2.0.0+] GetEvent | Returns an output event handle |
| 1 | [2.0.0+] Clear | |
| 2 | [2.0.0+] Pop |
IDaemonSuspendSessionService
This is "nn::friends::detail::ipc::IDaemonSuspendSessionService". This was added with [4.0.0+].
This service has no commands.
nd:app
This is "nn::nd::detail::IServiceForApplication".
This was added with [5.0.0] and removed with [6.0.0].
| Cmd | Name |
|---|---|
| 0 | GetReceivableNeighborInfoCountMax |
| 10 | IsNeighborDetectionEnabled |
nd:sys
This is "nn::nd::detail::IServiceForSystem".
This was added with [5.0.0] and removed with [6.0.0].
| Cmd | Name |
|---|---|
| 0 | GetReceivableNeighborInfoCountMax |
| 10 | IsNeighborDetectionEnabled |
| 200 | SetSystemData |
| 201 | ClearSystemData |
| 203 | GetReceivableNeighborInfoCountForSystem |
| 204 | ReceiveNeighborInfoForSystem |
| 205 | SetSender |
| 206 | GetSender |
| 207 | CreateScannerForSystem |
| 208 | CreateReceiveEventHolderForSystem |
| 223 | EnableNeighborDetection |
| 224 | DisableNeighborDetection |
| 226 | EnablePowerSave |
| 227 | DisablePowerSave |
| 228 | IsPowerSaveEnabled |
| 232 | ClearBlockedUsers |
| 233 | GetBlockedUserCount |
| 234 | BlockUserByLocalUserId |
| 235 | BlockUserByNetworkUserId |
| 236 | UnblockUserByLocalUserId |
| 237 | UnblockUserByNetworkUserId |
| 240 | DeleteApplication |
| 250 | InitializeApplicationInfo |
| 260 | CreateAccountSystemSaveDataAccessSuppressor |
| 300 | AddReceivedNeighborInfoForSystemForDebug |
| 301 | GetSendDataForDebug |
| 302 | ClearReceiveCounterForDebug |
| 303 | GetNextReceiveCounterForDebug |
| 304 | ListBlockedUsersForDebug |
| 305 | RefreshSendDataIdForDebug |
| 306 | ReloadFwdbgSettingsForDebug |
| 307 | EnableApplicationForDebug |
| 308 | GetNextReceiveCountersForDebug |
| 309 | ListApplicationInfoForDebug |
| 310 | SetApplicationDataForDebug |
| 400 | GetNetworkUserId |
| 401 | DeleteNetworkUserId |
InAppScreenName
| Offset | Size | Description |
|---|---|---|
| 0x0 | 0x40 | UTF-8 string, NUL-terminated. |
| 0x40 | 0x8 | LanguageCode |
This is "nn::friends::InAppScreenName". This is a 0x48-byte struct.
FriendInvitationGameModeDescription
This is "nn::friends::FriendInvitationGameModeDescription". This is a 0xC00-byte struct.
FriendInvitationId
This is "nn::friends::FriendInvitationId". This is 8-bytes.
FriendInvitationGroupId
This is "nn::friends::FriendInvitationGroupId". This is 8-bytes.