BCAT services: Difference between revisions
(20 intermediate revisions by 6 users not shown) | |||
Line 3: | Line 3: | ||
= bcat:a, bcat:m, bcat:u, bcat:s = | = bcat:a, bcat:m, bcat:u, bcat:s = | ||
These are "nn::bcat::detail::ipc::IServiceCreator". | These are "nn::bcat::detail::ipc::IServiceCreator". | ||
These were added with [2.0.0+]. | |||
{| class="wikitable" border="1" | {| class="wikitable" border="1" | ||
|- | |- | ||
! Cmd || Name | ! Cmd || Name || Notes | ||
|- | |||
| 0 || CreateBcatService || Takes an input u64 ProcessId, returns an [[#IBcatService]] | |||
|- | |||
| 1 || CreateDeliveryCacheStorageService || Takes an input u64 ProcessId, returns an [[#IDeliveryCacheStorageService]] | |||
|- | |- | ||
| | | 2 || CreateDeliveryCacheStorageServiceWithApplicationId || Takes an input u64 TitleId, returns an [[#IDeliveryCacheStorageService]] | ||
|- | |- | ||
| | | [2.0.0-2.3.0] 3 || CreateDeliveryCacheProgressService || Takes an input u64 ProcessId, returns an [[#IDeliveryCacheProgressService]] | ||
|- | |- | ||
| 2 || | | [2.0.0-2.3.0] 4 || CreateDeliveryCacheProgressServiceWithApplicationId || Takes an input u64 TitleId, returns an [[#IDeliveryCacheProgressService]] | ||
|} | |} | ||
Line 19: | Line 25: | ||
== IBcatService == | == IBcatService == | ||
This is "nn::bcat::detail::ipc::IBcatService". | This is "nn::bcat::detail::ipc::IBcatService". | ||
This was added with [2.0.0+]. | |||
{| class="wikitable" border="1" | {| class="wikitable" border="1" | ||
Line 24: | Line 32: | ||
! Cmd || Name | ! Cmd || Name | ||
|- | |- | ||
| 10100 || RequestSyncDeliveryCache | | 10100 || [[#RequestSyncDeliveryCache]] | ||
|- | |- | ||
| 10101 || [5.0.0+] RequestSyncDeliveryCacheWithDirectoryName | | 10101 || [5.0.0+] RequestSyncDeliveryCacheWithDirectoryName | ||
Line 30: | Line 38: | ||
| 10200 || [5.0.0+] CancelSyncDeliveryCacheRequest | | 10200 || [5.0.0+] CancelSyncDeliveryCacheRequest | ||
|- | |- | ||
| 20100 || RequestSyncDeliveryCacheWithApplicationId | | 20100 || [[#RequestSyncDeliveryCacheWithApplicationId]] | ||
|- | |- | ||
| 20101 || [5.0.0+] RequestSyncDeliveryCacheWithApplicationIdAndDirectoryName | | 20101 || [5.0.0+] RequestSyncDeliveryCacheWithApplicationIdAndDirectoryName | ||
|- | |||
| 20300 || [8.0.0+] [[#GetDeliveryCacheStorageUpdateNotifier]] | |||
|- | |||
| 20301 || [8.0.0+] [[#RequestSuspendDeliveryTask]] | |||
|- | |||
| 20400 || [9.0.0+] [[#RegisterSystemApplicationDeliveryTask]] | |||
|- | |||
| 20401 || [9.0.0+] [[#UnregisterSystemApplicationDeliveryTask]] | |||
|- | |- | ||
| 30100 || SetPassphrase | | 30100 || SetPassphrase | ||
|- | |- | ||
| 30200 || | | 30101 || [2.0.0-2.3.0] | ||
|- | |||
| 30102 || [2.0.0-2.3.0] | |||
|- | |||
| 30200 || [3.0.0+] RegisterDeliveryTask | |||
|- | |||
| 30201 || [3.0.0+] UnregisterDeliveryTask | |||
|- | |||
| 30202 || [3.0.0+] BlockDeliveryTask | |||
|- | |- | ||
| | | 30203 || [3.0.0+] UnblockDeliveryTask | ||
|- | |- | ||
| | | 30300 || [8.0.0+] RegisterSystemApplicationDeliveryTasks | ||
|- | |- | ||
| | | 90100 || GetDeliveryTaskList | ||
|- | |- | ||
| | | 90200 || [[#GetDeliveryList]] | ||
|- | |- | ||
| | | 90201 || [3.0.0+] ClearDeliveryCacheStorage | ||
|- | |- | ||
| | | 90202 || [8.0.0+] ClearDeliveryTaskSubscriptionStatus | ||
|- | |- | ||
| 90300 || GetPushNotificationLog | | 90300 || [3.0.0+] GetPushNotificationLog | ||
|} | |} | ||
=== RequestSyncDeliveryCache === | |||
No input/output. | |||
[3.0.0+] Now returns an [[#IDeliveryCacheProgressService]]. | |||
=== RequestSyncDeliveryCacheWithApplicationId === | |||
Takes a total of 8-bytes of input, no output. | |||
[3.0.0+] Now takes an additional 8-bytes of input, and returns an [[#IDeliveryCacheProgressService]]. | |||
=== GetDeliveryCacheStorageUpdateNotifier === | |||
Takes a total of 8-bytes of input, returns an [[#INotifierService]]. | |||
=== RequestSuspendDeliveryTask === | |||
Takes a total of 8-bytes of input, returns an [[#IDeliveryTaskSuspensionService]]. | |||
== RegisterSystemApplicationDeliveryTask == | |||
Takes an input u64 <code>nn::ApplicationId</code>, no output. | |||
== UnregisterSystemApplicationDeliveryTask == | |||
Takes an input u64 <code>nn::ApplicationId</code>, no output. | |||
=== GetDeliveryList === | |||
Takes a type-0x6 output buffer, returns a total of 4-bytes of output. | |||
[3.0.0+] Now takes a total of 8-bytes of input, and returns an additional 4-bytes of output. | |||
=== IDeliveryCacheProgressService === | === IDeliveryCacheProgressService === | ||
This is "nn::bcat::detail::ipc::IDeliveryCacheProgressService". | This is "nn::bcat::detail::ipc::IDeliveryCacheProgressService". | ||
This was added with [2.0.0+]. | |||
{| class="wikitable" border="1" | {| class="wikitable" border="1" | ||
Line 67: | Line 120: | ||
== IDeliveryCacheStorageService == | == IDeliveryCacheStorageService == | ||
This is "nn::bcat::detail::ipc::IDeliveryCacheStorageService". | This is "nn::bcat::detail::ipc::IDeliveryCacheStorageService". | ||
This was added with [2.0.0+]. | |||
{| class="wikitable" border="1" | {| class="wikitable" border="1" | ||
Line 81: | Line 136: | ||
=== IDeliveryCacheFileService === | === IDeliveryCacheFileService === | ||
This is "nn::bcat::detail::ipc::IDeliveryCacheFileService". | This is "nn::bcat::detail::ipc::IDeliveryCacheFileService". | ||
This was added with [2.0.0+]. | |||
{| class="wikitable" border="1" | {| class="wikitable" border="1" | ||
Line 97: | Line 154: | ||
=== IDeliveryCacheDirectoryService === | === IDeliveryCacheDirectoryService === | ||
This is "nn::bcat::detail::ipc::IDeliveryCacheDirectoryService". | This is "nn::bcat::detail::ipc::IDeliveryCacheDirectoryService". | ||
This was added with [2.0.0+]. | |||
{| class="wikitable" border="1" | {| class="wikitable" border="1" | ||
Line 107: | Line 166: | ||
|- | |- | ||
| 2 || GetCount | | 2 || GetCount | ||
|} | |||
=== INotifierService === | |||
This is "nn::bcat::detail::ipc::INotifierService". | |||
Added with [8.0.0+]. | |||
{| class="wikitable" border="1" | |||
|- | |||
! Cmd || Name || Notes | |||
|- | |||
| 0 || GetEvent || | |||
|} | |||
=== IDeliveryTaskSuspensionService === | |||
This is "nn::bcat::detail::ipc::IDeliveryTaskSuspensionService". | |||
Added with [8.0.0+]. | |||
{| class="wikitable" border="1" | |||
|- | |||
! Cmd || Name || Notes | |||
|- | |||
| 0 || GetEvent || | |||
|} | |} | ||
= <nowiki>news:a, news:c, news:m, news:p, news:v</nowiki> = | = <nowiki>news:a, news:c, news:m, news:p, news:v</nowiki> = | ||
These are <nowiki>"nn::news::detail::ipc::IServiceCreator"</nowiki>. | These are <nowiki>"nn::news::detail::ipc::IServiceCreator"</nowiki>. | ||
On [1.0.0] these are <nowiki>"nn::news::detail::ipc::INewsService"</nowiki>, see [[#INewsService]]. | |||
{| class="wikitable" border="1" | |||
|- | |||
! Cmd || Name || Notes | |||
|- | |||
| 0 || CreateNewsService || No input, returns an [[#INewsService]]. | |||
|- | |||
| 1 || CreateNewlyArrivedEventHolder || No input, returns an [[#INewlyArrivedEventHolder]]. | |||
|- | |||
| 2 || CreateNewsDataService || No input, returns an [[#INewsDataService]]. | |||
|- | |||
| 3 || CreateNewsDatabaseService || No input, returns an [[#INewsDatabaseService]]. | |||
|- | |||
| 4 || CreateOverwriteEventHolder || No input, returns an [[#IOverwriteEventHolder]]. | |||
|} | |||
== INewsService == | |||
This is <nowiki>"nn::news::detail::ipc::INewsService"</nowiki>. | |||
{| class="wikitable" border="1" | |||
|- | |||
! Cmd || Name | |||
|- | |||
| 10100 || PostLocalNews | |||
|- | |||
| 20100 || SetPassphrase | |||
|- | |||
| 30100 || GetSubscriptionStatus | |||
|- | |||
| 30101 || [3.0.0+] GetTopicList | |||
|- | |||
| 30110 || [6.0.0+] | |||
|- | |||
| 30200 || IsSystemUpdateRequired | |||
|- | |||
| 30201 || [8.0.0+] | |||
|- | |||
| 30300 || RequestImmediateReception | |||
|- | |||
| 30400 || [3.0.0+] DecodeArchiveFile | |||
|- | |||
| 30500 || [8.0.0+] ? (Takes a total of 8-bytes of input, a handle, and a type-0x9 input buffer, returns an [[#IUnknown2]]) | |||
|- | |||
| [1.0.0] 30900 || (No input, returns an [[#INewlyArrivedEventHolder]]) | |||
|- | |||
| [1.0.0] 30901 || (No input, returns an [[#INewsDataService]]) | |||
|- | |||
| [1.0.0] 30902 || (No input, returns an [[#INewsDatabaseService]]) | |||
|- | |||
| 40100 || SetSubscriptionStatus | |||
|- | |||
| 40101 || [3.0.0+] RequestAutoSubscription | |||
|- | |||
| 40200 || ClearStorage | |||
|- | |||
| 40201 || ClearSubscriptionStatusAll | |||
|- | |||
| 90100 || GetNewsDatabaseDump | |||
|} | |||
== INewlyArrivedEventHolder == | |||
This is <nowiki>"nn::news::detail::ipc::INewlyArrivedEventHolder"</nowiki>. | |||
{| class="wikitable" border="1" | |||
|- | |||
! Cmd || Name | |||
|- | |||
| 0 || Get | |||
|} | |||
== INewsDataService == | |||
This is <nowiki>"nn::news::detail::ipc::INewsDataService"</nowiki>. | |||
{| class="wikitable" border="1" | |||
|- | |||
! Cmd || Name | |||
|- | |||
| 0 || Open | |||
|- | |||
| 1 || OpenWithNewsRecordV1 | |||
|- | |||
| 2 || Read | |||
|- | |||
| 3 || GetSize | |||
|- | |||
| 1001 || [6.0.0+] OpenWithNewsRecord | |||
|} | |||
== INewsDatabaseService == | |||
This is <nowiki>"nn::news::detail::ipc::INewsDatabaseService"</nowiki>. | |||
{| class="wikitable" border="1" | |||
|- | |||
! Cmd || Name | |||
|- | |||
| 0 || GetListV1 | |||
|- | |||
| 1 || Count | |||
|- | |||
| 2 || CountWithKey | |||
|- | |||
| 3 || UpdateIntegerValue | |||
|- | |||
| 4 || UpdateIntegerValueWithAddition | |||
|- | |||
| 5 || UpdateStringValue | |||
|- | |||
| 1000 || [6.0.0+] GetList | |||
|} | |||
== IOverwriteEventHolder == | |||
This is <nowiki>"nn::news::detail::ipc::IOverwriteEventHolder"</nowiki>. | |||
{| class="wikitable" border="1" | |||
|- | |||
! Cmd || Name | |||
|- | |||
| 0 || Get | |||
|} | |||
== IUnknown2 == | |||
This was added with [8.0.0+]. | |||
{| class="wikitable" border="1" | {| class="wikitable" border="1" | ||
Line 123: | Line 330: | ||
|- | |- | ||
| 3 || | | 3 || | ||
|} | |} | ||
= prepo:a, prepo:m, prepo:u, prepo:s = | = prepo:a, prepo:a2, prepo:m, prepo:u, prepo:s = | ||
These are "nn::prepo::detail::ipc::IPrepoService". | These are "nn::prepo::detail::ipc::IPrepoService". | ||
Line 145: | Line 350: | ||
|- | |- | ||
| 10300 || GetTransmissionStatus | | 10300 || GetTransmissionStatus | ||
|- | |||
| 10400 || [9.0.0+] GetSystemSessionId | |||
|- | |- | ||
| 20100 || SaveSystemReport | | 20100 || SaveSystemReport | ||
Line 158: | Line 365: | ||
| 30300 || [6.0.0+] GetStorageUsage | | 30300 || [6.0.0+] GetStorageUsage | ||
|- | |- | ||
| 30400 || [ | | 30400 || [6.0.0+] GetStatistics | ||
|- | |- | ||
| 30401 || [ | | 30401 || [6.0.0+] GetThroughputHistory | ||
|- | |- | ||
| 30500 || [ | | 30500 || [6.0.0+] GetLastUploadError | ||
|- | |- | ||
| 40100 || IsUserAgreementCheckEnabled | | 40100 || [2.0.0+] IsUserAgreementCheckEnabled | ||
|- | |- | ||
| 40101 || SetUserAgreementCheckEnabled | | 40101 || [2.0.0+] SetUserAgreementCheckEnabled | ||
|- | |- | ||
| 90100 || [6.0.0+] ReadAllReportFiles ([1.0.0-5.1.0] GetStorageUsage) | | 90100 || [6.0.0+] ReadAllReportFiles ([1.0.0-5.1.0] GetStorageUsage) | ||
|- | |||
| 90101 || [1.0.0] | |||
|- | |||
| 90102 || [1.0.0] | |||
|- | |||
| [5.0.0-5.1.0] 90200 || GetStatistics | |||
|- | |||
| [5.0.0-5.1.0] 90201 || GetThroughputHistory | |||
|- | |||
| [5.0.0-5.1.0] 90300 || GetLastUploadError | |||
|} | |} | ||