NEWSS:AddNotification: Difference between revisions
Steveice10 (talk | contribs) Make it clear that there are 0x18 bytes between programID and datetime. |
Steveice10 (talk | contribs) Add to and clean up notification header info. |
||
Line 45: | Line 45: | ||
| 0x0 | | 0x0 | ||
| 0x1 | | 0x1 | ||
| u8 flag: 0 = | | u8 flag: 0 = invalid, 1 = valid ("notification exists" flag). | ||
|- | |- | ||
| 0x1 | | 0x1 | ||
| 0x1 | | 0x1 | ||
| u8 flag: | | u8 flag: 0 = read, 1 = unread | ||
|- | |- | ||
| 0x2 | | 0x2 | ||
| 0x1 | | 0x1 | ||
| u8 flag: 0 = | | u8 flag: 0 = image data is not JPEG, 1 = image data is JPEG. | ||
|- | |- | ||
| 0x3 | | 0x3 | ||
| 0x1 | | 0x1 | ||
| u8 flag: | | u8 flag: 0 = non-SpotPass notification, 1 = SpotPass notification. | ||
|- | |- | ||
| 0x4 | | 0x4 | ||
| 0x1 | | 0x1 | ||
| u8 flag | | u8 flag: 0 = opted in to this notification, 1 = opted out of this notification | ||
|- | |||
| 0x5 | |||
| 0x3 | |||
| unknown | |||
|- | |- | ||
| 0x8 | | 0x8 | ||
| 0x8 | | 0x8 | ||
| u64 programID | | u64 programID: notification source (zero for system notifications) | ||
|- | |- | ||
| 0x10 | | 0x10 | ||
| 0x8 | |||
| unknown | |||
|- | |||
| 0x18 | | 0x18 | ||
| 0x8 | |||
| u64 jumpParam: specified by source app and later retrieved via APT to identify which notification, if any, it was launched from | |||
|- | |||
| 0x20 | |||
| 0x8 | |||
| unknown | | unknown | ||
|- | |- | ||
Line 76: | Line 88: | ||
|- | |- | ||
| 0x30 | | 0x30 | ||
| | | 0x40 | ||
| UTF-16 string for the notification title | | UTF-16 string for the notification title | ||
|} | |} | ||
This structure is | This structure is 0x70-bytes. | ||
When [[NEWSS:GetNotificationHeader]] is used where the u8 flag at 0x3 is value 1, news-module then uses [[BOSS_Services|boss:P]] command 0x04070080 with the u64 programID at offset 0x8 in this header. When that's successful, [[NEWSS:GetNotificationHeader]] copies the output u8, the SpotPass opt-out flag, from that BOSS command to the u8 flag at 0x4. Otherwise, the opt-out flag is 0 for opted in. | |||
=Message= | =Message= |