nn::boss NamespaceNamespace for the BOSS API.
SpotPass is a general term for BOSS (Background Online Service System) communication functions.
Applications can use BOSS to communicate in the background with data servers provided by Nintendo ("BOSS data servers"). Although data downloading is the only communication feature that is currently supported, support for data uploading is planned.
To use BOSS, an application must register a task (a set of information specific to the communication process) in BOSS, and then start the task. The task configuration includes such information as the execution interval and the number of executions remaining. BOSS executes the task periodically in the background, based on this information.
The application can learn when a task finishes downloading new data by polling the state of the task or event notifications. This data can also be read via BOSS. The following tasks are currently provided.
- Nintendo archive download task (NADL task)
This task is essentially run in the background, but once a task has been registered, the application can run it whenever it likes. In this case, the task's communication process will be run in the foreground.
Note: As of CTR-SDK 2.1, BOSS tasks will not operate on CTR systems that have no country settings. Configure your hardware with country settings if you will be doing BOSS development. You can configure the country setting using the initial startup sequence on the HOME Menu.
Result |
|
|---|---|
nn::boss::ResultInvalidPolicy
|
The policy information pointer is NULL. |
nn::boss::ResultInvalidAction
|
The task action pointer is NULL. |
nn::boss::ResultInvalidOption
|
The task option pointer is NULL, or the option code is invalid. |
nn::boss::ResultInvalidAppIdList
|
The pointer for getting the application list is NULL. |
nn::boss::ResultInvalidTaskIdList
|
The pointer for getting the task ID list is NULL. |
nn::boss::ResultInvalidStepIdList
|
The pointer for getting the step ID list is NULL. |
nn::boss::ResultInvalidNsDataIdList
|
The pointer to NS data list information is NULL. |
nn::boss::ResultInvalidTaskStatus
|
The task status pointer is NULL. |
nn::boss::ResultInvalidPropertyValue
|
The property value pointer is NULL. |
nn::boss::ResultInvalidNewArrivalEvent
|
The pointer to the new arrival event is NULL. |
nn::boss::ResultInvalidNewArrivalFlag
|
The pointer to the new arrival flag is NULL. |
nn::boss::ResultInvalidOptoutFlag
|
The pointer to the OPTOUT flag is NULL. |
nn::boss::ResultInvalidTaskError
|
The pointer to the task error information is NULL. |
nn::boss::ResultInvalidNsDataValue
|
The pointer to the region that stores NSDATA is NULL. |
nn::boss::ResultInvalidNsDataInfo
|
The pointer to the location that stores additional NSDATA information is NULL. |
nn::boss::ResultInvalidNsDataReadFlag
|
The pointer to the storage region for the NSDATA read flag is NULL. |
nn::boss::ResultInvalidNsDataTime
|
The pointer to the region used to store the NSDATA update time is NULL. |
nn::boss::ResultInvalidNextExecuteTime
|
The pointer to the location used to store the minutes value of the next execution time is NULL. |
nn::boss::ResultHttpRequestHeaderPointerNull
|
The HTTP request header pointer is NULL. |
nn::boss::ResultInvalidPolicyListAvailability
|
The pointer to information that can be used by the policy list is NULL. |
nn::boss::ResultInvalidTestModeAvailability
|
The pointer to information usable in test mode is NULL. |
nn::boss::ResultInvalidConfigParentalControl
|
The pointer to information on Parental Controls settings is NULL. |
nn::boss::ResultInvalidConfigEulaAgreement
|
The pointer to information about whether the user has agreed to the EULA is NULL. |
nn::boss::ResultInvalidPolicyListEnvId
|
The pointer to the policy list's environment ID is NULL. |
nn::boss::ResultInvalidPolicyListUrl
|
The pointer to the policy list's URL information is NULL. |
nn::boss::ResultInvalidTaskId
|
The task ID pointer is NULL or a zero-length string. |
nn::boss::ResultInvalidTaskStep
|
The current step ID was specified during task registration. |
nn::boss::ResultInvalidPropertyType
|
The property type is not supported. |
nn::boss::ResultInvalidUrl
|
The URL string pointer is NULL or a zero-length string. |
nn::boss::ResultInvalidFilePath
|
The file path string pointer is NULL or a zero-length string. |
nn::boss::ResultInvalidTaskPriority
|
The specified task priority is invalid. |
nn::boss::ResultInvalidTaskTargetDuration
|
The task duration is invalid. |
nn::boss::ResultActionCodeOutOfRange
|
The task action code is invalid. |
nn::boss::ResultInvalidNsDataSeekPosition
|
The NS data seek position exceeds the data size. |
nn::boss::ResultInvalidMaxHttpRequestHeader
|
The number of registered HTTP request headers exceeds the maximum. |
nn::boss::ResultInvalidMaxClientCert
|
The number of client certificates set exceeds the maximum. |
nn::boss::ResultInvalidMaxRootCa
|
The number of root CAs exceeds the maximum that can be set. |
nn::boss::ResultSchedulingPolicyOutOfRange
|
The scheduling policy is invalid. |
nn::boss::ResultApInfoTypeOutOfRange
|
The AP information type is invalid. |
nn::boss::ResultTaskPermissionOutOfRange
|
The task permission information is invalid. |
nn::boss::ResultWaitFinishTimeout
|
The WAITFINISH timeout. |
nn::boss::ResultWaitFinishTaskNotDone
|
The WAITFINISH task completed in a state other than DONE. |
nn::boss::ResultIpcNotSessionInitialized
|
The IPC session is not initialized. |
nn::boss::ResultIpcPropertySizeError
|
IPC property size error. |
nn::boss::ResultIpcTooManyRequests
|
Too many IPC requests. |
nn::boss::ResultAlreadyInitialized
|
Initialization complete. |
nn::boss::ResultOutOfMemory
|
Insufficient memory. |
nn::boss::ResultInvalidNumberOfNsd
|
Too many NS data files in NS archive. |
nn::boss::ResultNsDataInvalidFormat
|
The NS data format is invalid. |
nn::boss::ResultAppNotExist
|
The specified application ID was not found. |
nn::boss::ResultTaskNotExist
|
The specified task ID was not found. |
nn::boss::ResultTaskStepNotExist
|
Specified task step was not found. |
nn::boss::ResultApliIdAlreadyExist
|
Another application of the same name is already registered. |
nn::boss::ResultTaskIdAlreadyExist
|
Another task of the same name is already registered. |
nn::boss::ResultTaskStepAlreadyExist
|
Another task step of the same name is already registered. |
nn::boss::ResultInvalidSequence
|
Sequence error (such as starting a task that is already running). |
nn::boss::ResultDatabaseFull
|
No space in task database (the task database is full and there are no tasks for which information can be deleted). |
nn::boss::ResultCantUnregisterTask
|
The current task state does not permit UnregisterTask to be called. |
nn::boss::ResultTaskNotRegistered
|
The task has not been registered in the task database. |
nn::boss::ResultInvalidFileHandle
|
Invalid file handle. |
nn::boss::ResultInvalidTaskSchedulingPolicy
|
Invalid scheduling policy. |
nn::boss::ResultInvalidHttpRequestHeader
|
Error in an HTTP request header. |
nn::boss::ResultInvalidHeadType
|
Invalid head type. |
nn::boss::ResultStorageAccessPermission
|
No permission to access storage. |
nn::boss::ResultStorageInsufficiency
|
Insufficient storage capacity. |
nn::boss::ResultStorageNotFound
|
There is no storage for the specified APPID. |
nn::boss::ResultNsDataNotFound
|
There is no NS data. |
nn::boss::ResultInvalidNsDataGetHeadSize
|
Specified NS data SIZE parameter is invalid. |
nn::boss::ResultNsDataListSizeShortage
|
NsDataIdList size is insufficient (list not big enough to store all the NS data serial IDs). |
nn::boss::ResultNsDataListUpdated
|
The target NSD group for BOSS storage was updated since the last time a list was obtained. |
nn::boss::ResultNotConnectApWithLocation
|
Not connected to an access point. |
nn::boss::ResultNotConnectNetwork
|
Not connected to a network. |
nn::boss::ResultInvalidFriendcode
|
Invalid friend code error. |
nn::boss::ResultFileAccess
|
Failed to access a file. |
nn::boss::ResultTaskAlreadyPaused
|
Already paused. |
nn::boss::ResultTaskAlreadyResumed
|
Already resumed. |
nn::boss::ResultUnexpect
|
Unexpected error. |
nn::boss::ResultInvalidStorageParameter
|
An invalid value was set in the parameter specified for storage. |
nn::boss::ResultInvalidPointer
|
Invalid pointer. |
| Other | |
nn::boss::NsaDownloadAction
|
Class for representing NADL tasks. Use this to do such things as register NADL tasks. |
nn::boss::NsData
|
Class for representing NS data. Use for NS data operations (such as reading). |
nn::boss::NsDataIdList
|
Class for representing NS data ID lists. Use this to do such things as get a list of NS data to process. |
nn::boss::StepIdList
|
Class for representing lists of task step IDs. Use this to do such things as get a task's list of steps. (The task step feature is not currently supported.) |
nn::boss::Task
|
Class for representing tasks. Use this to do such things as register or unregister a task, or for task operations. |
nn::boss::TaskActionBase
|
Base class for task actions. There is no reason for an application to directly generate an instance of this class. |
nn::boss::TaskAction
|
Class for representing task actions. This is the base class for specific task action classes such as NADL tasks. You can also directly generate an instance and use it to get information about task actions for a specific task. |
nn::boss::TaskError
|
Class for representing task errors. Use this to get task error information. |
nn::boss::TaskIdList
|
Class for representing task ID lists. Use this to do such things as get a list of registered tasks. |
nn::boss::TaskOption
|
Class for representing task options. Use this to do such things as set the option information used when registering a task. (The task option feature is not currently supported.) |
nn::boss::TaskPolicy
|
Class for representing task policies. Use this to do such things as set the policy information used when registering a task. |
nn::boss::TaskStatus
|
Class for representing task statuses. Use this to do such things as get the status of a task. |
nn::boss::TaskPolicyConfig
|
Definition of an internal structure that maintains attribute information for the TaskPolicy class. |
|---|---|
nn::boss::TaskOptionConfig
|
Definition of an internal structure that maintains attribute information for the TaskOption class. |
nn::boss::TaskActionConfig
|
Definition of an internal structure that maintains attribute information for the TaskAction class. |
nn::boss::TaskConfig
|
Definition of an internal structure that maintains attribute information for the Task class. |
nn::boss::TaskStatusInfo
|
Definition of an internal structure that maintains attribute information for the TaskStatus class. |
nn::boss::TaskErrorInfo
|
Definition of an internal structure that maintains attribute information for the TaskError class. |
nn::boss::ApplicationIdInfoList
|
Definition of an internal structure that maintains attribute information for the ApplicationIdList class. |
nn::boss::TaskIdInfoList
|
Definition of an internal structure that maintains attribute information for the TaskIdList class. |
nn::boss::StepIdInfoList
|
Definition of an internal structure that maintains attribute information for the StepIdList class. |
nn::boss::NsDataIdInfoList
|
Definition of an internal structure that maintains attribute information for the NsDataIdList class. |
| nn::boss::NsDataHeaderInfo | Definition of the internal structure for storing NSD header information. |
PositionBase
|
Group of constants that indicate the position of file read/writes. | |
|---|---|---|
PropertyType
|
Constants specifying properties. | |
SchedulingPolicy
|
Constants specifying scheduling policies. | |
TaskPermission
|
Constants specifying task permissions. | |
TaskPriority
|
Constants specifying task priorities. | |
Action
|
Constants specifying task actions. | |
ExecOption
|
Constants specifying task execution options. | |
TaskStateCode
|
Constants specifying task state codes. | |
TaskResultCode
|
A task's exit state. You can use the TaskGetResult function to get these values after a task exits. |
|
TaskServiceStatus
|
Constants specifying task service statuses. | |
HeaderInfoType
|
Constants indicating the types of NSD header information obtained. | |
FileDescriptor
|
Constants specifying task action file paths. | |
ApInfoType
|
Constants indicating an access point's identifier type. | |
StorageType
|
Constants indicating types of BOSS storage. | |
ResultCode
|
Function result codes. Set as the description for bossResult, and used as the return value for boss functions. |
typedef Definitions
TaskPolicyConfig
|
Definition of an internal structure that maintains attribute information for the TaskPolicy class. |
|
|---|---|---|
TaskOptionConfig
|
Definition of an internal structure that maintains attribute information for the TaskOption class. |
|
TaskActionConfig
|
Definition of an internal structure that maintains attribute information for the TaskAction class. |
|
TaskActionUploadConfig
|
Definition of an internal structure that maintains attribute information for the TaskActionUpload class. (This is provided for future extensibility and cannot be used.) |
|
TaskActionDownloadConfig
|
Definition of an internal structure that maintains attribute information for the TaskActionDownload class. |
|
TaskActionSignalConfig
|
Definition of an internal structure that maintains attribute information for the TaskActionSignal class. (This is provided for future extensibility and cannot be used.) |
|
TaskActionNsaDownloadConfig
|
Definition of an internal structure that maintains attribute information for the TaskActionNsaDownload class. |
|
TaskConfig
|
Definition of an internal structure that maintains attribute information for the Task class. |
|
TaskStatusInfo
|
Definition of an internal structure that maintains attribute information for the TaskStatus class. |
|
TaskStepStatusInfo
|
Definition of the internal structure TaskStepStatusInfo. (This is used for internal processing.) |
|
TaskErrorInfo
|
Definition of an internal structure that maintains attribute information for the TaskError class. |
|
ApplicationIdInfoList
|
Definition of an internal structure that maintains attribute information for the ApplicationIdList class. |
|
TaskIdInfoList
|
Definition of an internal structure that maintains attribute information for the TaskIdList class. |
|
StepIdInfoList
|
Definition of an internal structure that maintains attribute information for the StepIdList class. |
|
NsDataIdInfoList
|
Definition of an internal structure that maintains attribute information for the NsDataIdList class. |
|
| NsDataHeaderInfo | Definition of the internal structure for storing NSD header information. |
| S |
DATA_TYPE_ALL
|
const bit32 |
NSD data type. |
|---|---|---|---|
| S |
DATA_TYPE_APPDATA
|
const bit32 |
Data type for applications. |
| S |
DATA_TYPE_NEWS
|
const bit32 |
Data type for Notification lists. (This data type is used on the system side. The data cannot be directly obtained from the application. ) |
| S |
DATA_TYPE_EXBANNER
|
const bit32 |
Download contextual banner type. |
| S |
MAX_FILEPATH_LENGTH
|
const u32 |
BOSS system constant. |
| S |
MAX_URL_LENGTH
|
const u32 |
The maximum length for a URL. |
| S |
MAX_HTTP_HEADER_LABEL
|
const u32 |
Maximum length of HTTP header labels. |
| S |
MAX_HTTP_HEADER_VALUE
|
const u32 |
Maximum length of HTTP header values. |
| S |
MAX_HTTP_HEADER
|
const u32 |
Maximum number of headers that can be registered. |
| S |
MAX_ROOT_CA
|
const u32 |
Maximum number of built-in root CA certificates that can be configured. |
| S |
MAX_CLIENT_CERT
|
const u32 |
Maximum number of built-in client certificates that can be configured. |
| S |
TASK_ID_LENGTH
|
const u32 |
The maximum number of characters in a task ID, including the zero terminator. |
| S |
MAX_ERROR_MESSAGE
|
const u32 |
Maximum number of characters in an error message. |
| S |
MAX_APPLICATION_ID
|
const u32 |
Maximum number of application IDs that can be registered. |
| S |
MAX_TASK_ID
|
const u32 |
Maximum number of task IDs that can be registered. |
| S |
MAX_STEP_ID
|
const u32 |
Maximum number of task steps that can be registered to one task. |
| S |
CURRENT_STEP_ID
|
const u32 |
ID of the currently running task step. |
| S |
DEFAULT_STEP_ID
|
const u32 |
Task step ID when step ID is not specified. |
| S |
U32_CANNOT_GET_DATA
|
const u32 |
Return value when a value cannot be obtained. Used by functions that return u32 values. |
| S |
MAX_LASTMODIFIED_LENGTH
|
const u32 |
Maximum number of characters in the HTTP communication at the time it was updated. |
| S |
UNLIMITED_COUNT
|
const u32 |
Specifies an unlimited remaining execution count. |
| S |
MAX_STORAGE_ENTRY_COUNT
|
const u32 |
Maximum file count in BOSS storage |
| S |
DEFAULT_STORAGE_ENTRY_COUNT
|
const u32 |
Default value for the file count in BOSS storage |
| S |
MAX_STORAGE_RECYCLE_COUNT
|
const u32 |
Maximum number of files that can be recycled in BOSS storage (the maximum value is the sum of the file count and resume count set in the storage options).) |
| Other | ||
|---|---|---|
Initialize
|
Initializes the BOSS library. Call this function once before using the BOSS library. | |
Finalize
|
Closes the BOSS library. Call this function once when you are finished using the BOSS library. | |
RegisterPrivateRootCa
|
Registers the independent root CA certificate in the BOSS library. They are used when using HTTPS communication as a connection when executing a task. There is no need to call this function if an independent root CA certificate is not used. |
|
RegisterPrivateClientCert
|
Registers the independent client certificate and private key in the BOSS library. They are used when using HTTPS communication for the connection when executing a task There is no need to call this function if an independent client certificate is not used. |
|
RegisterTask
|
Registers a task. | |
UnregisterTask
|
Deletes a registered task. | |
ReconfigureTask
|
The property settings for registered tasks can be changed. | |
GetTaskIdList
|
Gets a list of registered task IDs. | |
GetStepIdList
|
Gets a list of all steps for the specified registered task. | |
RegisterStorage
|
Registers BOSS storage. | |
UnregisterStorage
|
Unregisters registered BOSS storage. | |
GetStorageInfo
|
Gets the size of the registered BOSS storage region. Can also be used to check if the BOSS storage is registered. |
|
GetNewArrivalFlag
|
Checks if new NS data has been downloaded. However, the new arrival flag does not change if it is not set by the downloaded NS data. |
|
RegisterNewArrivalEvent
|
Registers an event to be signaled when new NS data is received. | |
GetNewArrivalEvent
|
This is the old (deprecated) name for nn::boss::RegisterNewArrivalEvent.Avoid using this: it only exists for compatibility. |
|
SetOptoutFlag
|
Sets the OptOut flag. | |
GetOptoutFlag
|
Gets the OptOut flag. | |
GetNsDataIdList
|
Specifies the data type and gets a list of NS data entries from the expanded save data region where the BOSS storage is registered. | |
GetOwnNsDataIdList
|
Excludes the shared NS data and gets the application's list of NS content from the expanded save data region where the BOSS storage is registered. | |
GetNewDataNsDataIdList
|
Specifies the data type and gets a list of newly arrived NS data from the expanded save data region where the BOSS storage is registered. | |
GetOwnNewDataNsDataIdList
|
Excludes the shared NS data and gets the application's list of NS content from the expanded save data region where the BOSS storage is registered. | |
GetErrorCode
|
The error code is acquired from the task result code (TaskResultCode). |
|
CONFIDENTIAL