NEWSS:SyncArrivedNotifications

NEWSS:SyncArrivedNotifications

Request #

Index WordDescription
0Header code [0x000F0000]

Response #

Index WordDescription
0Header code
1Resultcode

Description #

This manually syncs all pending notifications that are present on the sysmodule “boss savedata”. The news sysmodule queries the list of notifications with BOSS command 0x00100102 (GetNsDataIdList), then gets some NS data information for each data ID with command 0x002700C2 (GetNsDataHeaderInfo) type=5 and command 0x002D0040 (GetNsDataLastUpdate), and finally reads the notification data.

The sysmodule then extracts all the notification data from the BOSS notification and saves it to the savedata.

BOSS notification #

The BOSS notification data is a modified version of a regular notification. It combines a custom header, a fully allocated message (size: 0x1780 bytes) and an optional image, all appended in a single file.

Header structure #

OffsetSizeDescription
0x00x1u8 flag: 0 = invalid, 1 = valid (“notification exists” flag). Always 0x1
0x10x1u8 flag: 0 = read, 1 = unread. Always 0x1
0x20x1u8 flag: 0 = image data is not JPEG, 1 = image data is JPEG.
0x30x1u8 flag: 0 = non-SpotPass notification, 1 = SpotPass notification (zero for system notifications)
0x40x1u8 flag: 0 = opted in to this notification, 1 = opted out of this notification. Always 0x0
0x50x1u8 flag: 0 = message doesn’t have a browser link, 1 = message has a browser link
0x60x1u8 flag: unknown
0x70x1padding?
0x80x8u64 programID: notification source (zero for system notifications)
0x100x8u64 jumpParam: specified by source app and later retrieved via APT to identify which notification, if any, it was launched from
0x180x8padding?
0x200x40UTF-16 string for the notification title