Difference between revisions of "NUS"
Hallowizer (talk | contribs) (Updated with Nintendo announcement) |
Hallowizer (talk | contribs) (The announcement source is gone, replaced with archive.org) |
||
Line 1: | Line 1: | ||
'''NUS''' (short for '''Nintendo Update Server''') is a set of HTTP servers used to serve [[System Update|updates]] for Nintendo's consoles. For the Wii and Wii U, this server is located at http://nus.cdn.shop.wii.com. | '''NUS''' (short for '''Nintendo Update Server''') is a set of HTTP servers used to serve [[System Update|updates]] for Nintendo's consoles. For the Wii and Wii U, this server is located at http://nus.cdn.shop.wii.com. | ||
− | https://ccs.shop.wii.com suddenly went offline with no announcement at 2022/3/16 21:40 UTC. NUS clients are currently being modified to download using a different method, although Nintendo has since [https://www.gamedeveloper.com/business/the-wii-shop-and-dsi-shop-are-offline-and-nobody-knows-why announced the maintenance]. | + | https://ccs.shop.wii.com suddenly went offline with no announcement at 2022/3/16 21:40 UTC. NUS clients are currently being modified to download using a different method, although Nintendo has since [https://web.archive.org/web/20220325012700/https://www.gamedeveloper.com/business/the-wii-shop-and-dsi-shop-are-offline-and-nobody-knows-why announced the maintenance]. |
= Protocol = | = Protocol = |
Revision as of 07:54, 1 April 2022
NUS (short for Nintendo Update Server) is a set of HTTP servers used to serve updates for Nintendo's consoles. For the Wii and Wii U, this server is located at http://nus.cdn.shop.wii.com.
https://ccs.shop.wii.com suddenly went offline with no announcement at 2022/3/16 21:40 UTC. NUS clients are currently being modified to download using a different method, although Nintendo has since announced the maintenance.
Protocol
The Wii uses user agent wii libnup/1.0
for all requests.
Query a list of titles
To query a list of titles, a SOAP request is sent to /nus/services/NetUpdateSOAP, with action urn:nus.wsapi.broadon.com/. The result is an XML structure containing all titles that require updating.
Request structure
GetSystemUpdateRequest xmlns=urn:nus.wsapi.broadon.com
- Version - always 1.0?
- MessageId - unknown
- DeviceId - unknown
- RegionId - USA, JAP, EUR, or KOR
- CountryCode - unknown
- Several TitleVersion structs:
- TitleId - 16-digit title ID in hex
- Version - decimal version
- Attribute - unknown
- AuditData - unknown
Response structure
GetSystemUpdateResponse xmlns=urn:nus.wsapi.broadon.com
- Version - same as version in request?
- MessageId - same as MessageId from client
- DeviceId - same as DeviceId from client
- ErrorCode - 0 on success
- ContentPrefixURL - always https://nus.cdn.shop.wii.com/ccs/download (HTTP before 2.0rev03)
- UncachedPrefixURL - always https://ccs.shop.wii.com/ccs/download (HTTP before 2.0rev03, this is the URL the Wii uses)
- Several TitleVersion structs:
- TitleId - 16-digit title ID in hex
- Version - latest title version available
- FsSize - size in bytes?
- UploadAuditData - unknown, possibly boolean?
Download a TMD, ticket, or content
There are a few prefixes that point to NUS. HTTP and HTTPS do not matter.
- https://nus.cdn.shop.wii.com/ccs/download (does not seem to work)
- https://ccs.shop.wii.com/ccs/download
- https://ccs.cdn.c.shop.nintendowifi.net/ccs/download
These can be downloaded from <prefix>/<titleid>/<name>, where prefix is the base URL returned from the SOAP request, titleid is the title ID in hex, and name is one of three things:
- tmd[version] - downloads the TMD for the version provided, or the latest version if no version is provided
- cetk - downloads the ticket (free titles only)
- <contentid> - downloads a specific content