commit 9c6d4b1d7382ef458d15a03fe7f2c443be60e4ba Author: yellows111 Date: Thu Oct 10 20:38:51 2024 +0100 initial commit diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..db1fefd --- /dev/null +++ b/.gitignore @@ -0,0 +1,3 @@ +*.exe +build/ +node_modules/ diff --git a/README.md b/README.md new file mode 100644 index 0000000..2259a29 --- /dev/null +++ b/README.md @@ -0,0 +1,13 @@ +# yellows' MSNP wiki +An alternative to MSNPiki that aims to actually document things they didn't. + +# Building +``` +npm i +set WIKINAME=yellows' MSNP wiki +# this should be an absolute path on a domain to where the files will be put +set VPREFIX=https://example.com/ +mkdir build +npm run build +cp ./node_modules/yiki/yiki.css build/ +``` diff --git a/docs/command-table.md b/docs/command-table.md new file mode 100644 index 0000000..6cd6124 --- /dev/null +++ b/docs/command-table.md @@ -0,0 +1,12 @@ +# Command Table + +This is a list of all known MSNP commands and their originating version. + +| `COMMAND` | Payload (Y/N) | Client to Server (Y/N) | Server to Client (Y/N) | Originating Version | Changed? (version list) | +| ----- | - | - | -| ------ | ----- | +| `VER` | N | Y | N | MSNP2 | every MSNP version, but retaining base syntax, removed in MSNP24 | +| `INF` | N | Y | N | MSNP2 | MSNP3 (removed CTP), MSNP8 (removed; automatic disconnect) | +| `CVR` | N | Y | N | MSNP2 | MSNP8 (parameter 8) | +| `CVQ` | N | Y | N | CVR0 | MSNP8 (parameter 8) | +| `USR` | N | Y | N | MSNP2 | MSNP3 (removed CTP), MSNP8 (TWN auth, removed MD5 auth), MSNP15 (SSO auth) | +| `XFR` | N | Y | Y?| MSNP2 | MSNP3 (parameter 3), MSNP7 (parameter 4) | diff --git a/docs/index.md b/docs/index.md new file mode 100644 index 0000000..dc42c0e --- /dev/null +++ b/docs/index.md @@ -0,0 +1,19 @@ +# Introduction +Welcome to yellows' MSNP wiki - "we actually have documentation" + +# Protocol Versions + +* [CVR0](versions/cvr0.md) +* [MSNP2](versions/msnp2.md) +* [MSNP3](versions/msnp3.md) +* [MSNP4](versions/msnp4.md) +* [MSNP5](versions/msnp5.md) +* [MSNP6](versions/msnp6.md) +* [MSNP7](versions/msnp7.md) +* [MSNP8](versions/msnp8.md) +* [MSNP9](versions/msnp9.md) +* [MSNP10](versions/msnp10.md) +* [MSNP11](versions/msnp11.md) +* [MSNP12](versions/msnp12.md) + +More is to come soon! Hopefully! diff --git a/docs/versions/cvr0.md b/docs/versions/cvr0.md new file mode 100644 index 0000000..f81730a --- /dev/null +++ b/docs/versions/cvr0.md @@ -0,0 +1,36 @@ +CVR0 is a subprotocol of the Mobile Status Notification Protocol. +It was introduced officially in Client Version 1.0.0863, along with [MSNP2](msnp2.md). + +It is used for requesting the latest client information in case no other protocols were supported. + +It introduces the commands: +* CVQ + +*No error codes were known to be introduced in this version* + +*No commands were known to be removed in this version* + +Known changes (from Beta 2): +* Changed CVR to CVQ +* CVQ: Added fallback URL to response (parameter 5) +* \[[MSNP8](msnp8.md) and higher\] Added current principle address to request (parameter 8) + +Client-server communication example (MSNP2-MSNP7): +``` +C: VER 1 MSNP2 CVR0 +S: VER 1 CVR0 +C: CVQ 2 0x0409 win 4.10 i386 MSMSGS 1.0.0863 MSMSGS +S: CVQ 2 5.0.0537 5.0.0537 1.0.0863 http://download.microsoft.com/download/msnmessenger/install/5.0/w98nt42kmexp/en-us/setupdl.exe http://messenger.microsoft.com +``` +Server disconnects client. + +--- + +Client-server communication example (MSNP8+, example using Client 6.1): +``` +C: VER 1 MSNP10 MSNP9 CVR0 +S: VER 1 CVR0 +C: CVQ 2 0x0409 winnt 5.1 i386 MSNMSGR 6.1.0211 MSMSGS example@passport.com +S: CVQ 2 7.0.0813 7.0.0813 6.2.0205 http://msgr.dlservice.microsoft.com/download/5/d/9/5d9bb5b2-49c7-4890-94ab-d1d5e44a0e6d/Install_MSN_Messenger.exe http://messenger.msn.com +``` +Server disconnects client. diff --git a/docs/versions/msnp10.md b/docs/versions/msnp10.md new file mode 100644 index 0000000..ec27eca --- /dev/null +++ b/docs/versions/msnp10.md @@ -0,0 +1,158 @@ +MSNP10 is the ninth released version of the Mobile Status Notification Protocol. +It was introduced officially in Client Version 6.1.0155. + +It introduces the notification service commands: +* ADC +* SBP + +*No switchboard or dispatch service commands were known to be introduced in this version* + +*No error codes were known to be introduced in this version* + +The following commands were removed in this version: +* ADD (automatic disconnection) +* REA (automatic disconnection?) + +Known changes (from [MSNP9](msnp9.md)): +* Added new initial profile variable TOUNeeded. If exists and set to 1, + a dialog box to review the Messenger Service Terms of Use is shown to the user. +* Changed SYN request and response. + Client: `SYN transactionID listVersion settingsVersion`. + Server: `SYN transactionID listVersion settingsVersion numberOfContacts numberOfGroups`. + settingsVersion is always 0. +* Current display name is removed from USR, now is returned with other user properties (PRPs) in SYN. +* PRP MFN replaces REA (current passport). SBP (contact's address) MFN replaces other uses of REA. +* Added new initial profile variable ABCHMigrated. If set to 1, some commands are altered, such as: + SYN: The request and response's list versions are now ISO 8601 with 7 subsecond digits, + usually with a -07:00 timezone offset. + the previously unused second parameter (both request and response) is used as the Last Settings Version, + and follows the same time format as List Versions now do. + LST: GUID specified as C= parameter, group IDs are now GUIDs. + ADC, REM: uses GUIDs instead of contact emails if the list is FL, and also for groups. + LSG, ADG: Uses GUIDs instead of IDs. + SBP: Uses the contact's GUID instead of the Contact Address. +* All list version updating commands no longer return the current list version when used. + GTC, BLP, ADG, REG, RMG, REM, PRP commands are affected by this change. +* Asynchronous BPRs also do not include the new list version number, + and now provide Friendly Name (MFN) changes instead of sending entire NLNs [needs to be confirmed]. +* Added a new list: Pending List/PL (bit 5, decimal 16). Is meant for unhandled contact added you notifications. +* Added new server-side OUT reasons: MIG, if the server has migrated you to ABCH, + and TOU, for not accepting the Service Terms of Use. +* Official Client: Now handles the 604 error code again, which was last seen in Client Version 3.6.003x. + Error code 913 is no longer handled after being implemented in Client Version 4.5. +* First protocol version to remove a core command implemented since MSNP2 draft (ADD). + +Client-server communication example: +``` +C: VER 1 MSNP10 MSNP9 CVR0 +S: VER 1 MSNP10 +C: CVR 2 0x0409 winnt 5.1 i386 MSNMSGR 6.0.0602 MSMSGS example@hotmail.com +S: CVR 2 6.1.0211 6.1.0211 6.1.0155 http://download.microsoft.com/download/8/3/C/83C4B2DB-AC1C-4B56-8144-4472C0982F21/SetupDl.exe http://messenger.msn.com +C: USR 3 TWN I example@hotmail.com +S: XFR 3 NS 10.0.0.5:1863 0 10.0.0.1:1863 +``` +Client disconnects from server + +Client opens a connection to 10.0.0.5:1863 +``` +C: VER 4 MSNP10 MSNP9 CVR0 +S: VER 4 MSNP10 +C: CVR 5 0x0409 winnt 5.1 i386 MSNMSGR 6.0.0602 MSMSGS example@hotmail.com +S: CVR 5 6.1.0211 6.1.0211 6.1.0155 http://download.microsoft.com/download/8/3/C/83C4B2DB-AC1C-4B56-8144-4472C0982F21/SetupDl.exe http://messenger.msn.com +C: USR 6 TWN I example@hotmail.com +S: USR 6 TWN S passport=parameters,neat=huh,lc=1033,id=507 +C: USR 7 TWN S $(pp14response.headers.authenticationInfo["from-PP"]) +S: USR 7 OK example@hotmail.com 1 0 +S: MSG Hotmail Hotmail 465 +MIME-Version: 1.0 +Content-Type: text/x-msmsgsprofile; charset=UTF-8 +LoginTime: 1726321960 +EmailEnabled: 1 +MemberIdHigh: 1 +MemberIdLow: 2 +lang_preference: 1033 +PreferredEmail: example@hotmail.com +country: US +PostalCode: +Gender: +Kid: 0 +Age: +BDayPre: +Birthday: +Wallet: +Flags: 1027 +sid: 507 +kv: 11 +MSPAuth: whatever+t+is+in+your+passport+login+ticket+that+you+sent+for+USR+TWN+S$ +ClientIP: 192.168.1.111 +ClientPort: 18183 +ABCHMigrated: 0 + +C: SYN 8 15 0 +S: SYN 8 16 0 1 1 +S: GTC A +S: BLP AL +S: PRP MFN example%20user +S: PRP PHH 123-4567 +S: LSG Other%20Contacts 0 +S: LST N=anotheruser@hotmail.com F=another%20user 11 0 +S: BPR PHH 1%20444%20222-3333 +C: CHG 9 NLN +S: CHG 9 NLN +S: OUT MIG +``` +Server disconnects client + +Client opens a connection to 10.0.0.5:1863 (from stored server) +``` +C: VER 10 MSNP10 MSNP9 CVR0 +S: VER 10 MSNP10 +C: CVR 11 0x0409 winnt 5.1 i386 MSNMSGR 6.0.0602 MSMSGS example@hotmail.com +S: CVR 11 6.1.0211 6.1.0211 6.1.0155 http://download.microsoft.com/download/8/3/C/83C4B2DB-AC1C-4B56-8144-4472C0982F21/SetupDl.exe http://messenger.msn.com +C: USR 12 TWN I example@hotmail.com +S: USR 12 TWN S passport=parameters,neat=huh,lc=1033,id=507 +C: USR 13 TWN S $(pp14response.headers.authenticationInfo["from-PP"]) +S: USR 13 OK example@hotmail.com 1 0 +S: MSG Hotmail Hotmail 465 +MIME-Version: 1.0 +Content-Type: text/x-msmsgsprofile; charset=UTF-8 +LoginTime: 1726321960 +EmailEnabled: 1 +MemberIdHigh: 1 +MemberIdLow: 2 +lang_preference: 1033 +PreferredEmail: example@hotmail.com +country: US +PostalCode: +Gender: +Kid: 0 +Age: +BDayPre: +Birthday: +Wallet: +Flags: 1027 +sid: 507 +kv: 11 +MSPAuth: whatever+t+is+in+your+passport+login+ticket+that+you+sent+for+USR+TWN+S$ +ClientIP: 192.168.1.111 +ClientPort: 18183 +ABCHMigrated: 1 + +C: SYN 14 0 0 +S: SYN 14 2024-09-28T17:18:18.6400000-07:00 2024-09-28T17:18:18.6400000-07:00 1 1 +S: GTC A +S: BLP AL +S: PRP MFN example%20user +S: PRP PHH 123-4567 +S: LSG Other%20Contacts d6deeacd-7849-4de4-93c5-d130915d0042 +S: LST N=anotheruser@hotmail.com F=another%20user C=c1f9a363-4ee9-4a33-a434-b056a4c55b98 11 d6deeacd-7849-4de4-93c5-d130915d0042 +S: BPR PHH 1%20444%20222-3333 +C: CHG 15 NLN +S: CHG 15 NLN +C: OUT +``` +Client disconnects from server +``` +S: OUT +``` +Server disconnects client diff --git a/docs/versions/msnp11.md b/docs/versions/msnp11.md new file mode 100644 index 0000000..054e090 --- /dev/null +++ b/docs/versions/msnp11.md @@ -0,0 +1,88 @@ +MSNP11 is the tenth released version of the Mobile Status Notification Protocol. +It was introduced officially in Client Version 7.0.0777. + +It introduces the notification service commands: +* GCF +* SBS +* UBX +* UUX + +*No switchboard or dispatch service commands were known to be introduced in this version* + +*No error codes were known to be introduced in this version* + +*No commands were known to be removed in this version* + +Known changes (from [MSNP10](msnp10.md)): +* All ABCHMigrated changes are now the default - ABCHMigrated: 0 is Undefined Behavour from now on. +* Official Client: WebMessenger now canonically exists - Client Capability 512 is used for this. +* Official Client: Notifications (NOTs) with encoded NotificationData documents are supported for spaces. +* Official Client: Messenger Config requests now support regional arguments via SOAP. + +Client-server communication example: +``` +C: VER 1 MSNP10 MSNP9 CVR0 +S: VER 1 MSNP10 +C: CVR 2 0x0409 winnt 5.1 i386 MSNMSGR 6.0.0602 MSMSGS example@hotmail.com +S: CVR 2 6.1.0211 6.1.0211 6.1.0155 http://download.microsoft.com/download/8/3/C/83C4B2DB-AC1C-4B56-8144-4472C0982F21/SetupDl.exe http://messenger.msn.com +C: USR 3 TWN I example@hotmail.com +S: XFR 3 NS 10.0.0.5:1863 0 10.0.0.1:1863 +``` +Client disconnects from server + +Client opens a connection to 10.0.0.5:1863 (from stored server) +``` +C: VER 4 MSNP10 MSNP9 CVR0 +S: VER 4 MSNP10 +C: CVR 5 0x0409 winnt 5.1 i386 MSNMSGR 6.0.0602 MSMSGS example@hotmail.com +S: CVR 5 6.1.0211 6.1.0211 6.1.0155 http://download.microsoft.com/download/8/3/C/83C4B2DB-AC1C-4B56-8144-4472C0982F21/SetupDl.exe http://messenger.msn.com +C: USR 6 TWN I example@hotmail.com +S: USR 6 TWN S passport=parameters,neat=huh,lc=1033,id=507 +C: USR 7 TWN S $(pp14response.headers.authenticationInfo["from-PP"]) +S: USR 7 OK example@hotmail.com 1 0 +S: SBS 0 null +S: MSG Hotmail Hotmail 465 +MIME-Version: 1.0 +Content-Type: text/x-msmsgsprofile; charset=UTF-8 +LoginTime: 1726321960 +EmailEnabled: 1 +MemberIdHigh: 1 +MemberIdLow: 2 +lang_preference: 1033 +PreferredEmail: example@hotmail.com +country: US +PostalCode: +Gender: +Kid: 0 +Age: +BDayPre: +Birthday: +Wallet: +Flags: 1027 +sid: 507 +kv: 11 +MSPAuth: whatever+t+is+in+your+passport+login+ticket+that+you+sent+for+USR+TWN+S$ +ClientIP: 192.168.1.111 +ClientPort: 18183 +ABCHMigrated: 1 + +C: SYN 8 2024-09-28T17:18:18.6400000-07:00 2024-09-28T17:18:18.6400000-07:00 +S: SYN 8 2024-09-28T17:18:18.6400000-07:00 2024-09-28T17:18:18.6400000-07:00 +C: GCF 9 Shields.xml +S: GCF 9 Shields.xml 145 + +C: CHG 10 NLN +S: CHG 10 NLN +C: UUX 11 40 + +S: UUX 11 0 +S: ILN 10 NLN anotheruser@hotmail.com another%20user 1073791084 +S: UBX anotheruser@hotmail.com 54 +new feature :P +C: OUT +``` +Client disconnects from server +``` +S: OUT +``` +Server disconnects client diff --git a/docs/versions/msnp12.md b/docs/versions/msnp12.md new file mode 100644 index 0000000..756e9b3 --- /dev/null +++ b/docs/versions/msnp12.md @@ -0,0 +1,90 @@ +MSNPXX is the eleventh released version of the Mobile Status Notification Protocol. +It was introduced officially in Client Version 7.5.0299. + +It introduces the notification service commands: +* LKP + +*No switchboard or dispatch service commands were known to be introduced in this version* + +*No error codes were known to be introduced in this version* + +*No commands were known to be removed in this version* + +Known changes (from [MSNP11](msnp11.md)): +* Network IDs are introduced, each bit represents a contact's service, with bit 0/decimal 1 being MSNP. +* Switchboard commands JOI and IRO have a new parameter for the Client Capabilities of the relevant user. +* LST has the Network ID after the list bits (on any list), but before the Group ID (if on FL). +* Official Client: Uses Passport 3.0 (via the Microsoft Identity Common Runtime Library). +* Official Client: Dropped support for older operating systems, Now requires Windows XP or higher. + +Client-server communication example: +``` +C: VER 1 MSNP12 MSNP11 MSNP10 CVR0 +S: VER 1 MSNP12 +C: CVR 2 0x0409 winnt 5.1 i386 MSNMSGR 6.0.0602 MSMSGS example@hotmail.com +S: CVR 2 6.1.0211 6.1.0211 6.1.0155 http://download.microsoft.com/download/8/3/C/83C4B2DB-AC1C-4B56-8144-4472C0982F21/SetupDl.exe http://messenger.msn.com +C: USR 3 TWN I example@hotmail.com +S: XFR 3 NS 10.0.0.5:1863 0 10.0.0.1:1863 +``` +Client disconnects from server + +Client opens a connection to 10.0.0.5:1863 (from stored server) +``` +C: VER 4 MSNP12 MSNP11 MSNP10 CVR0 +S: VER 4 MSNP12 +C: CVR 5 0x0409 winnt 5.1 i386 MSNMSGR 6.0.0602 MSMSGS example@hotmail.com +S: CVR 5 6.1.0211 6.1.0211 6.1.0155 http://download.microsoft.com/download/8/3/C/83C4B2DB-AC1C-4B56-8144-4472C0982F21/SetupDl.exe http://messenger.msn.com +C: USR 6 TWN I example@hotmail.com +S: USR 6 TWN S passport=parameters,neat=huh,lc=1033,id=507 +C: USR 7 TWN S $(pp14response.headers.authenticationInfo["from-PP"]) +S: USR 7 OK example@hotmail.com 1 0 +S: SBS 0 null +S: MSG Hotmail Hotmail 465 +MIME-Version: 1.0 +Content-Type: text/x-msmsgsprofile; charset=UTF-8 +LoginTime: 1726321960 +EmailEnabled: 1 +MemberIdHigh: 1 +MemberIdLow: 2 +lang_preference: 1033 +PreferredEmail: example@hotmail.com +country: US +PostalCode: +Gender: +Kid: 0 +Age: +BDayPre: +Birthday: +Wallet: +Flags: 1027 +sid: 507 +kv: 11 +MSPAuth: whatever+t+is+in+your+passport+login+ticket+that+you+sent+for+USR+TWN+S$ +ClientIP: 192.168.1.111 +ClientPort: 18183 +ABCHMigrated: 1 + +C: SYN 8 2024-09-28T17:18:18.6400000-07:00 2024-09-28T17:18:18.6400000-07:00 +S: SYN 8 2024-09-29T11:27:30.2300000-07:00 2024-09-28T17:18:18.6400000-07:00 +S: GTC A +S: BLP AL +S: PRP MFN example%20user +S: PRP PHH 123-4567 +S: LSG Other%20Contacts d6deeacd-7849-4de4-93c5-d130915d0042 +S: LST N=anotheruser@hotmail.com F=another%20user C=c1f9a363-4ee9-4a33-a434-b056a4c55b98 11 1 d6deeacd-7849-4de4-93c5-d130915d0042 +S: BPR PHH 1%20444%20222-3333 +C: GCF 9 Shields.xml +S: GCF 9 Shields.xml 145 + +C: CHG 10 NLN +S: CHG 10 NLN +C: UUX 11 40 + +S: UUX 11 0 +C: OUT +``` +Client disconnects from server +``` +S: OUT +``` +Server disconnects client diff --git a/docs/versions/msnp2.md b/docs/versions/msnp2.md new file mode 100644 index 0000000..d213119 --- /dev/null +++ b/docs/versions/msnp2.md @@ -0,0 +1,150 @@ +MSNP2 is the first released version of the Mobile Status Notification Protocol. +It was introduced officially in Client Version 1.0.0863, along with [CVR0](cvr0.md). + +It introduces the dispatch service commands: +* INF +* OUT +* USR +* VER +* XFR + +It introduces the notification service commands: +* ADD +* BLP +* CHG +* CVR (not in draft) +* FND (not in draft) +* FLN +* GTC +* INF +* ILN +* LST +* MSG +* NLN +* OUT +* PNG (not in draft) +* QNG (not in draft) +* REA (not in draft) +* REM +* RNG +* SND (not in draft) +* SYN +* URL (not in draft) +* USR +* VER +* XFR + +It introduces the switchboard service commands: +* ACK +* ANS +* BYE +* CAL +* IRO +* JOI +* MSG +* NAK +* OUT +* USR + +It introduces the error codes: +* 100 (not in draft) +* 146 (not in draft) +* 200 +* 201 +* 205 +* 206 +* 207 +* 208 (draft only) +* 209 +* 210 +* 211 (not in draft) +* 215 (draft only) +* 216 +* 218 +* 219 +* 280 +* 281 +* 300 +* 302 +* 500 +* 501 (draft only) +* 503 (not in draft) +* 510 +* 520 +* 600 +* 601 +* 602 (draft only) +* 603 (draft only) +* 604 (draft only) +* 707 +* 711 (draft only) +* 712 +* 713 +* 714 +* 715 (draft only) +* 717 (draft only) +* 911 +* 912 (not in draft) +* 913 (draft only) +* 914 (not in draft) +* 918 (not in draft) +* 919 (not in draft) +* 920 + +*No commands were known to be removed in this version* + +Known changes (from Beta 2): +* Dispatch servers now go through the normal user proceedure until `USR x MD5 I`. + +Client-server communication example: +``` +C: VER 1 MSNP2 CVR0 +S: VER 1 MSNP2 +C: INF 2 +S: INF 2 MD5 +C: USR 3 MD5 I example@hotmail.com +S: XFR 3 NS 10.0.0.5:1863 +``` +Client disconnects from server + +Client opens a connection to 10.0.0.5:1863 +``` +C: VER 4 MSNP2 CVR0 +S: VER 4 MSNP2 +C: INF 5 +S: INF 5 MD5 +C: USR 6 MD5 I example@hotmail.com +S: USR 6 MD5 S prefix +C: USR 7 MD5 S $md5(prefix + password) +S: USR 7 OK example@hotmail.com example%40hotmail.com +S: MSG Hotmail Hotmail 95 +MIME-Version: 1.0 +Content-Type: text/x-msmsgsprofile; charset=UTF-8 +LoginTime: 1726321960 + +C: SYN 8 0 +S: SYN 8 1 +S: GTC 8 1 A +S: BLP 8 1 AL +S: LST 8 FL 1 0 0 +S: LST 8 AL 1 0 0 +S: LST 8 BL 1 0 0 +S: LST 8 RL 1 0 0 +C: CHG 9 NLN +S: CHG 9 NLN +C: ADD 10 AL anotheruser@hotmail.com anotheruser%40hotmail.com +S: ADD 10 AL 2 anotheruser@hotmail.com anotheruser%40hotmail.com +C: ADD 11 FL anotheruser@hotmail.com anotheruser%40hotmail.com +S: ADD 11 FL 3 anotheruser@hotmail.com anotheruser%40hotmail.com +S: NLN NLN anotheruser@hotmail.com another%20user +C: REA 12 anotheruser@hotmail.com another%20user +S: REA 12 4 anotheruser@hotmail.com another%20user +C: REA 13 example@hotmail.com example%20user +S: REA 13 5 example@hotmail.com example%20user +C: OUT +``` +Client disconnects from server +``` +S: OUT +``` +Server disconnects client \ No newline at end of file diff --git a/docs/versions/msnp3.md b/docs/versions/msnp3.md new file mode 100644 index 0000000..854add3 --- /dev/null +++ b/docs/versions/msnp3.md @@ -0,0 +1,90 @@ +MSNP3 is the second released version of the Mobile Status Notification Protocol. +It was introduced officially in Client Version 2.0.0085. + +It introduces the notification service commands: +* IMS + +*No switchboard or dispatch commands were known to be introduced in this version* + +It introduces the error codes: +* 131 +* 217 +* 800 + +*No commands were known to be removed in this version* + +Known changes (from [MSNP2](msnp2.md)): +* XFR: Added a new parameter that is always 0. No use is known or documented. +* Added Passport Site IDs to URL (parameter 3). +* Initial profile: Added Passport intergration fields. +* Font information has been added to Switchboard MSGs. +* Multiple error-codes unimplemented in 1.x that were in the draft are now implemented in the Official Client. + Examples include: 208, 215, 501, 604 (bizzarely enough), 715 and finally 913. +* Non-protocol: Client can now use non-hotmail domains in relevant places. +* Non-protocol: WebTV 2.5+ clients (example@webtv.net) can talk to other users (example@hotmail.com) +* More URL requests implemented (assumed) +* Clear-Text Password (CTP) authentication method discontinued. +* Entire content of initial email notification changed from + `text/x-msmsgsemailnotification` to `application/x-msmsgsinitialemailnotification`, + the format is likely different. Now includes unread email count. \[Examination needed\] +* Official Client: Changed form that URL uses to login drastically. + New format is undocumented, but now has MD5 `creds` instead of the plain-text `passwd`. + +Client-server communication example: +``` +C: VER 1 MSNP3 MSNP2 CVR0 +S: VER 1 MSNP3 +C: INF 2 +S: INF 2 MD5 +C: USR 3 MD5 I example@hotmail.com +S: XFR 3 NS 10.0.0.5:1863 0 +``` +Client disconnects from server + +Client opens a connection to 10.0.0.5:1863 +``` +C: VER 4 MSNP3 MSNP2 CVR0 +S: VER 4 MSNP3 +C: INF 5 +S: INF 5 MD5 +C: USR 6 MD5 I example@hotmail.com +S: USR 6 MDS S prefix +C: USR 7 MD5 S $md5(prefix + password) +S: USR 7 OK example@hotmail.com example%20user +S: MSG Hotmail Hotmail 367 +MIME-Version: 1.0 +Content-Type: text/x-msmsgsprofile; charset=UTF-8 +LoginTime: 1726321960 +EmailEnabled: 1 +MemberIdHigh: 1 +MemberIdLow: 2 +lang_preference: 1033 +PreferredEmail: example@hotmail.com +country: US +PostalCode: +Gender: +Kid: 0 +Age: +BDayPre: +Birthday: +Wallet: +Flags: 1027 +sid: 507 +kv: 11 +MSPAuth: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA$$ + +C: SYN 8 5 +S: SYN 8 5 +C: CHG 9 NLN +S: CHG 9 NLN +C: IMS 10 OFF +S: IMS 10 0 OFF +C: IMS 11 ON +S: IMS 11 0 ON +C: OUT +``` +Client disconnects from server +``` +S: OUT +``` +Server disconnects client diff --git a/docs/versions/msnp4.md b/docs/versions/msnp4.md new file mode 100644 index 0000000..51dd28e --- /dev/null +++ b/docs/versions/msnp4.md @@ -0,0 +1,75 @@ +MSNP4 is the third released version of the Mobile Status Notification Protocol. +It was introduced officially in Client Version 2.1.1047. + +*No commands for any service were known to be introduced in this version* + +*No error codes were known to be introduced in this version* + +*No commands were known to be removed in this version* + +Known changes (from [MSNP3](msnp3.md)): +* ? +* ? +* ? +* Honestly, we don't know. +* New fields in initial profile, probably. + Don't know why else, not sure why it required it's own protocol version. + (none are parsed by the client either) +* Client 2.2.1053 according to whatsnew.asp has Kids Passport support. + Probably a new initial profile field by then. + (Client doesn't parse 923 yet either) + +Client-server communication example: +``` +C: VER 1 MSNP4 MSNP3 CVR0 +S: VER 1 MSNP4 +C: INF 2 +S: INF 2 MD5 +C: USR 3 MD5 I example@hotmail.com +S: XFR 3 NS 10.0.0.5:1863 0 +``` +Client disconnects from server + +Client opens a connection to 10.0.0.5:1863 +``` +C: VER 4 MSNP4 MSNP3 CVR0 +S: VER 4 MSNP4 +C: INF 5 +S: INF 5 MD5 +C: USR 6 MD5 I example@hotmail.com +S: USR 6 MDS S prefix +C: USR 7 MD5 S $md5(prefix + password) +S: USR 7 OK example@hotmail.com example%20user +S: MSG Hotmail Hotmail 367 +MIME-Version: 1.0 +Content-Type: text/x-msmsgsprofile; charset=UTF-8 +LoginTime: 1726321960 +EmailEnabled: 1 +MemberIdHigh: 1 +MemberIdLow: 2 +lang_preference: 1033 +PreferredEmail: example@hotmail.com +country: US +PostalCode: +Gender: +Kid: 0 +Age: +BDayPre: +Birthday: +Wallet: +Flags: 1027 +sid: 507 +kv: 11 +MSPAuth: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA$$ + +C: SYN 8 5 +S: SYN 8 5 +C: CHG 9 NLN +S: CHG 9 NLN +C: OUT +``` +Client disconnects from server +``` +S: OUT +``` +Server disconnects client diff --git a/docs/versions/msnp5.md b/docs/versions/msnp5.md new file mode 100644 index 0000000..7571e4b --- /dev/null +++ b/docs/versions/msnp5.md @@ -0,0 +1,105 @@ +MSNP5 is the fourth released version of the Mobile Status Notification Protocol. +It was introduced officially in Client Version 3.0.0283. + +It introduces the notification service commands: +* BPR +* NOT +* PAG +* PRP +* SDC + +*No switchboard or dispatch service commands were known to be introduced in this version* + +*No error codes were known to be introduced in this version* + +*No commands were known to be removed in this version* + +Known changes (from [MSNP4](msnp4.md)): +* Non-protocol: Official website stopped updating the whatsnew.asp page between this (MSNP5) and MSNP7. +* Official Client: Introduced the toast notification system. Notifications can now stack vertically. +* Official Client: Log in notifications are now handled by the newly introduced toast system. +* Official Client: Introduced emoticons. +* Official Client: Introduced File Transfer and Messenger-to-Messenger calling via invitations. +* Introduced first payload commands (SDC, PAG) to be sent to the switchboard from the client. +* Official Client: Error code 913 is no longer handled. It was last seen in Client Version 2.1. + +Client-server communication example: +``` +C: VER 1 MSNP5 MSNP4 CVR0 +S: VER 1 MSNP5 +C: INF 2 +S: INF 2 MD5 +C: USR 3 MD5 I example@hotmail.com +S: XFR 3 NS 10.0.0.5:1863 0 +``` +Client disconnects from server + +Client opens a connection to 10.0.0.5:1863 +``` +C: VER 4 MSNP5 MSNP4 CVR0 +S: VER 4 MSNP5 +C: INF 5 +S: INF 5 MD5 +C: USR 6 MD5 I example@hotmail.com +S: USR 6 MDS S prefix +C: USR 7 MD5 S $md5(prefix + password) +S: USR 7 OK example@hotmail.com example%20user +S: MSG Hotmail Hotmail 367 +MIME-Version: 1.0 +Content-Type: text/x-msmsgsprofile; charset=UTF-8 +LoginTime: 1726321960 +EmailEnabled: 1 +MemberIdHigh: 1 +MemberIdLow: 2 +lang_preference: 1033 +PreferredEmail: example@hotmail.com +country: US +PostalCode: +Gender: +Kid: 0 +Age: +BDayPre: +Birthday: +Wallet: +Flags: 1027 +sid: 507 +kv: 11 +MSPAuth: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA$$ + +C: SYN 8 5 +S: SYN 8 6 +S: SYN 8 6 +S: GTC 8 6 A +S: BLP 8 6 AL +S: LST 8 FL 6 1 1 anotheruser@hotmail.com another%20user +S: BPR 6 anotheruser@hotmail.com PHH 1%20222-3333 +S: BPR 6 anotheruser@hotmail.com PHW +S: BPR 6 anotheruser@hotmail.com PHM +S: BPR 6 anotheruser@hotmail.com MOB N +S: LST 8 AL 6 1 1 anotheruser@hotmail.com another%20user +S: LST 8 BL 6 0 0 +S: LST 8 RL 6 1 1 anotheruser@hotmail.com another%20user +C: CHG 9 NLN +S: CHG 9 NLN +S: NOT 431 + + + + + + + +text of the notification + + + +C: PRP 10 PHH 123-4567 +S: PRP 10 7 PHH 123-4567 +S: BPR 8 anotheruser@hotmail.com PHH 1%20444%20222-3333 +C: OUT +``` +Client disconnects from server +``` +S: OUT +``` +Server disconnects client diff --git a/docs/versions/msnp6.md b/docs/versions/msnp6.md new file mode 100644 index 0000000..275339f --- /dev/null +++ b/docs/versions/msnp6.md @@ -0,0 +1,78 @@ +MSNP6 is the fifth released version of the Mobile Status Notification Protocol. +It was introduced officially in Client Version 3.6.0038. + +It introduces the notification service commands: +* CHL +* IPG +* QRY + +*No switchboard or dispatch service commands were known to be introduced in this version* + +*No error codes were known to be introduced in this version* + +*No commands were known to be removed in this version* + +Known changes (from [MSNP5](msnp5.md)): +* Client-server challenges were introduced. The format for the response is + `MD5(challenge + clientSecret)` as a lowercase hex-string. +* An example client secret is `Q1P7W2E4J9R8U3S5`, which is tied to `msmsgs@msnmsgr.com`. +* First protocol version added in a patch release (3.6.0025 and 3.6.0026 do not support MSNP6). + +Client-server communication example: +``` +C: VER 1 MSNP6 MSNP5 MSNP4 CVR0 +S: VER 1 MSNP6 +C: INF 2 +S: INF 2 MD5 +C: USR 3 MD5 I example@hotmail.com +S: XFR 3 NS 10.0.0.5:1863 0 +``` +Client disconnects from server + +Client opens a connection to 10.0.0.5:1863 +``` +C: VER 4 MSNP6 MSNP5 MSNP4 CVR0 +S: VER 4 MSNP6 +C: INF 5 +S: INF 5 MD5 +C: USR 6 MD5 I example@hotmail.com +S: USR 6 MDS S prefix +C: USR 7 MD5 S $md5(prefix + password) +S: USR 7 OK example@hotmail.com example%20user +S: MSG Hotmail Hotmail 367 +MIME-Version: 1.0 +Content-Type: text/x-msmsgsprofile; charset=UTF-8 +LoginTime: 1726321960 +EmailEnabled: 1 +MemberIdHigh: 1 +MemberIdLow: 2 +lang_preference: 1033 +PreferredEmail: example@hotmail.com +country: US +PostalCode: +Gender: +Kid: 0 +Age: +BDayPre: +Birthday: +Wallet: +Flags: 1027 +sid: 507 +kv: 11 +MSPAuth: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA$$ + +C: SYN 8 8 +S: SYN 8 8 +C: CHG 9 NLN +S: CHG 9 NLN +S: CHL 0 11111111111111111111 +C: QRY 10 msmsgs@msnmsgr.com 32 +3b6666b60157322b6fc6e41a115968f5 +S: QRY 10 +C: OUT +``` +Client disconnects from server +``` +S: OUT +``` +Server disconnects client diff --git a/docs/versions/msnp7.md b/docs/versions/msnp7.md new file mode 100644 index 0000000..0e59590 --- /dev/null +++ b/docs/versions/msnp7.md @@ -0,0 +1,113 @@ +MSNP7 is the sixth released version of the Mobile Status Notification Protocol. +It was introduced officially in Client Version 4.5.0121. + +It introduces the notification service commands: +* ADG +* REG +* RMG +* LSG + +*No switchboard or dispatch service commands were known to be introduced in this version* + +It introduces the error codes: +* 502 +* 924 + +*No commands were known to be removed in this version* + +Known changes (from [MSNP6](msnp6.md)): +* Added contact groups. All FL contacts now have an extra number array for what groups they are in. + The "Other Contacts" group can NOT be removed. +* ADD and REM now have group parameters if the list is FL. +* REMs with the list set to FL with a group ID only removes that user from the respective group, not the FL. +* Adds with the list set to FL with a group ID only adds that user from the respective group, not to the FL. +* SYN now includes LSG entries for groups. +* LST (either from itself or a SYN response ) now includes contact group numbers for the FL list. +* XFR NS's now include the origin server. +* Official Client: Error codes 602, 603, 911 (since removal in Client Version 3.0) are implemented. + Error code 604 is no longer handled since Client Version 2.0. +* Official website's `whatsnew.asp` page has been updated. +* Official Client: New service URLs for some features. + +Client-server communication example: +``` +C: VER 1 MSNP7 MSNP6 MSNP5 MSNP4 CVR0 +S: VER 1 MSNP7 +C: INF 2 +S: INF 2 MD5 +C: USR 3 MD5 I example@hotmail.com +S: XFR 3 NS 10.0.0.5:1863 0 10.0.0.1:1863 +``` +Client disconnects from server + +Client opens a connection to 10.0.0.5:1863 +``` +C: VER 4 MSNP7 MSNP6 MSNP5 MSNP4 CVR0 +S: VER 4 MSNP7 +C: INF 5 +S: INF 5 MD5 +C: USR 6 MD5 I example@hotmail.com +S: USR 6 MDS S prefix +C: USR 7 MD5 S $md5(prefix + password) +S: USR 7 OK example@hotmail.com example%20user +S: MSG Hotmail Hotmail 367 +MIME-Version: 1.0 +Content-Type: text/x-msmsgsprofile; charset=UTF-8 +LoginTime: 1726321960 +EmailEnabled: 1 +MemberIdHigh: 1 +MemberIdLow: 2 +lang_preference: 1033 +PreferredEmail: example@hotmail.com +country: US +PostalCode: +Gender: +Kid: 0 +Age: +BDayPre: +Birthday: +Wallet: +Flags: 1027 +sid: 507 +kv: 11 +MSPAuth: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA$$ + +C: SYN 8 8 +S: SYN 8 9 +S: SYN 8 9 +S: GTC 8 9 A +S: BLP 8 9 AL +S: PRP 8 9 PHH 123-4567 +S: PRP 8 9 PHW +S: PRP 8 9 PHM +S: PRP 8 9 MOB N +S: PRP 8 9 MBE N +S: LSG 8 9 1 2 0 Other%20Contacts 0 +S: LSG 8 9 2 2 1 Friends 0 +S: LST 8 FL 9 1 1 anotheruser@hotmail.com another%20user 0 +S: BPR 9 anotheruser@hotmail.com PHH 1%20444%20222-3333 +S: BPR 9 anotheruser@hotmail.com PHW +S: BPR 9 anotheruser@hotmail.com PHM +S: BPR 9 anotheruser@hotmail.com MOB N +S: LST 8 AL 9 1 1 anotheruser@hotmail.com another%20user +S: LST 8 BL 9 0 0 +S: LST 8 RL 9 1 1 anotheruser@hotmail.com another%20user +C: CHG 9 NLN +S: CHG 9 NLN +C: ADG 10 New%20Group%201 0 +S: ADG 10 10 New%20Group%201 2 0 +C: REG 11 2 Cool%20People 0 +S: REG 11 11 Cool%20People 0 +C: ADD 12 FL anotheruser@hotmail.com another%20user 2 +S: ADD 12 FL 12 anotheruser@hotmail.com another%20user 2 +C: REM 13 FL anotheruser@hotmail.com 2 +S: REM 13 FL 13 anotheruser@hotmail.com 2 +C: RMG 14 2 +S: RMG 14 14 2 +C: OUT +``` +Client disconnects from server +``` +S: OUT +``` +Server disconnects client \ No newline at end of file diff --git a/docs/versions/msnp8.md b/docs/versions/msnp8.md new file mode 100644 index 0000000..64062ca --- /dev/null +++ b/docs/versions/msnp8.md @@ -0,0 +1,105 @@ +MSNP8 is the seventh released version of the Mobile Status Notification Protocol. +It was introduced officially in Client Version 5.0.0537. + +*No commands for any service were known to be introduced in this version* + +*No error codes were known to be introduced in this version* + +The following commands were removed in this version: +* INF (automatic disconnection) +* FND (`502` by July 2003, see Known changes for client details.) + +Known changes (from [MSNP7](msnp7.md)): +* Being the first protocol split, + all released clients that support MSNP8 do not support any previous versions. +* Login process now VER-CVR-USR instead of VER-INF-USR. +* Introduced `TWN` authentication method, which uses Passport 1.4 over HTTPS. +* Reworked SYN and related response commands drastically: + Iterators are gone, now total size of both groups and total contacts included in SYN response. + All transaction IDs and list versions removed from response commands (now treated as asynchronous commands). + Unset properties (PRPs) are now not sent. Hurray. +* CVR from client now has a new 8th parameter, which is the current user. +* New initial profile fields: ClientIP and ClientPort. + ClientPort needs to be endian swapped for it's correct value. + Formula: `y = (((x & 0xff) * 256) + ((x & 0xff00)/256))`. +* NOTE: FND might still exist in client, but theres no way of triggering it. Practically removed. +* BPR removes related user, for some reason, default fields share same optimization as PRP does. +* LST (for SYN): Lists are now all combined into a single number, where: + 1 = FL, 2 = AL, 4 = BL, 8 = RL, for example FL+AL+RL = 11. +* CHG, ILN, NLN: Client Capabilities are introduced. + You can now tell other clients what features you support. +* Official Client: Error 711 is now handled. + Error 603 isn't handled again after Client Version 4.5 supported it. +* Official Client: Connectivity field added to application requests + to notify the other user about what the network conditions are. +* Official Client: Introduced ABCH (Address Book Clearing House) support. + The URL is gathered from `svcs.microsoft.com`. + `abch_config.asp` provides an XML document with a `` element. + It likely has a `` child element containing the URL of the ABCH service. + + +Client-server communication example: +``` +C: VER 1 MSNP8 CVR0 +S: VER 1 MSNP8 +C: CVR 2 0x0409 win 4.10 i386 MSNMSGR 5.0.0537 MSMSGS example@hotmail.com +S: CVR 2 5.0.0537 5.0.0537 1.0.0863 http://download.microsoft.com/download/msnmessenger/install/5.0/w98nt42kmexp/en-us/setupdl.exe http://messenger.microsoft.com +C: USR 3 TWN I example@hotmail.com +S: XFR 3 NS 10.0.0.5:1863 0 10.0.0.1:1863 +``` +Client disconnects from server + +Client opens a connection to 10.0.0.5:1863 +``` +C: VER 4 MSNP8 CVR0 +S: VER 4 MSNP8 +C: CVR 5 0x0409 win 4.10 i386 MSNMSGR 5.0.0537 MSMSGS example@hotmail.com +S: CVR 5 5.0.0537 5.0.0537 1.0.0863 http://download.microsoft.com/download/msnmessenger/install/5.0/w98nt42kmexp/en-us/setupdl.exe http://messenger.microsoft.com +C: USR 6 TWN I example@hotmail.com +S: USR 6 TWN S passport=parameters,neat=huh,lc=1033,id=507 +C: USR 7 TWN S $(pp14response.headers.authenticationInfo["from-PP"]) +S: USR 7 OK example@hotmail.com example%20user +S: MSG Hotmail Hotmail 448 +MIME-Version: 1.0 +Content-Type: text/x-msmsgsprofile; charset=UTF-8 +LoginTime: 1726321960 +EmailEnabled: 1 +MemberIdHigh: 1 +MemberIdLow: 2 +lang_preference: 1033 +PreferredEmail: example@hotmail.com +country: US +PostalCode: +Gender: +Kid: 0 +Age: +BDayPre: +Birthday: +Wallet: +Flags: 1027 +sid: 507 +kv: 11 +MSPAuth: whatever+t+is+in+your+passport+login+ticket+that+you+sent+for+USR+TWN+S$ +ClientIP: 192.168.1.111 +ClientPort: 18183 + +C: SYN 8 14 +S: SYN 8 15 1 1 +S: GTC A +S: BLP AL +S: PRP PHH 123-4567 +S: LSG 0 Other%20Contacts 0 +S: LST anotheruser@hotmail.com another%20user 11 0 +S: BPR PHH 1%20444%20222-3333 +C: CHG 9 NLN 0 +S: CHG 9 NLN 0 +S: ILN 9 NLN anotheruser@hotmail.com another%20user 28 +S: NLN NLN anotheruser@hotmail.com another%20user 2 +S: NLN NLN anotheruser@hotmail.com another%20user 28 +C: OUT +``` +Client disconnects from server +``` +S: OUT +``` +Server disconnects client diff --git a/docs/versions/msnp9.md b/docs/versions/msnp9.md new file mode 100644 index 0000000..9a0f9bc --- /dev/null +++ b/docs/versions/msnp9.md @@ -0,0 +1,82 @@ +MSNP9 is the eighth released version of the Mobile Status Notification Protocol. +It was introduced officially in Client Version 6.0.0312. + +It introduces the notification service commands: +* PGD + +*No switchboard or dispatch service commands were known to be introduced in this version* + +It introduces the error codes: +* 282 + +The following commands were removed in this version: +* PAG (returns 715) + +Known changes (from [MSNP8](msnp8.md)): +* ILN, NLN, CHG: Added a MSNObject parameter. + Now you can tell other clients about image data associated with your account. +* QNG: Added a "next ping" time (in seconds) parameter +* Switchboard-MSG: Acknoledgement type D added +* Official Client: Error 603 is handled again after being removed in Client Version 5.0. + Error code 711 is no longer handled after being implemented in Client Version 5.0. +* Official Client: Supports the Messenger Config XML service, replacing `svcs.microsoft.com`. +Client-server communication example: +``` +C: VER 1 MSNP9 MSNP8 CVR0 +S: VER 1 MSNP9 +C: CVR 2 0x0409 winnt 5.1 i386 MSNMSGR 6.0.0602 MSMSGS example@hotmail.com +S: CVR 2 6.0.0602 6.0.0602 6.0.0268 http://download.microsoft.com/download/8/a/4/8a42bcae-f533-4468-b871-d2bc8dd32e9e/SetupDl.exe http://messenger.msn.com +C: USR 3 TWN I example@hotmail.com +S: XFR 3 NS 10.0.0.5:1863 0 10.0.0.1:1863 +``` +Client disconnects from server + +Client opens a connection to 10.0.0.5:1863 +``` +C: VER 4 MSNP9 MSNP8 CVR0 +S: VER 4 MSNP9 +C: CVR 5 0x0409 winnt 5.1 i386 MSNMSGR 6.0.0602 MSMSGS example@hotmail.com +S: CVR 5 6.0.0602 6.0.0602 6.0.0268 http://download.microsoft.com/download/8/a/4/8a42bcae-f533-4468-b871-d2bc8dd32e9e/SetupDl.exe http://messenger.msn.com +C: USR 6 TWN I example@hotmail.com +S: USR 6 TWN S passport=parameters,neat=huh,lc=1033,id=507 +C: USR 7 TWN S $(pp14response.headers.authenticationInfo["from-PP"]) +S: USR 7 OK example@hotmail.com example%20user +S: MSG Hotmail Hotmail 448 +MIME-Version: 1.0 +Content-Type: text/x-msmsgsprofile; charset=UTF-8 +LoginTime: 1726321960 +EmailEnabled: 1 +MemberIdHigh: 1 +MemberIdLow: 2 +lang_preference: 1033 +PreferredEmail: example@hotmail.com +country: US +PostalCode: +Gender: +Kid: 0 +Age: +BDayPre: +Birthday: +Wallet: +Flags: 1027 +sid: 507 +kv: 11 +MSPAuth: whatever+t+is+in+your+passport+login+ticket+that+you+sent+for+USR+TWN+S$ +ClientIP: 192.168.1.111 +ClientPort: 18183 + +C: SYN 8 15 +S: SYN 8 15 +C: CHG 9 NLN +S: CHG 9 NLN +S: ILN 9 NLN anotheruser@hotmail.com another%20user 268435500 %3Cmsnobj%20Creator%3D%22anotherdude%40hotmail.com%22%20Size%3D%2225235%22%20Type%3D%223%22%20Location%3D%22uexA4DE.dat%22%20Friendly%3D%22AAA%3D%22%20SHA1D%3D%22vP1ppB+xiFQ8ceZivRe0uCaYLIU%3D%22%20SHA1C%3D%22PApbbjkbDSGrt3ybGHRKNaZ8s%2Fw%3D%22%2F%3E +C: PNG +S: NLN NLN anotheruser@hotmail.com another%20user 268435500 %3Cmsnobj%20Creator%3D%22anotherdude%40hotmail.com%22%20Size%3D%2225235%22%20Type%3D%223%22%20Location%3D%22uexA4DE.dat%22%20Friendly%3D%22AAA%3D%22%20SHA1D%3D%22vP1ppB+xiFQ8ceZivRe0uCaYLIU%3D%22%20SHA1C%3D%22PApbbjkbDSGrt3ybGHRKNaZ8s%2Fw%3D%22%2F%3E +S: QNG 60 +C: OUT +``` +Client disconnects from server +``` +S: OUT +``` +Server disconnects client diff --git a/package-lock.json b/package-lock.json new file mode 100644 index 0000000..bc2563b --- /dev/null +++ b/package-lock.json @@ -0,0 +1,694 @@ +{ + "name": "yellows-msnp-wiki", + "version": "0.0.1", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "yellows-msnp-wiki", + "version": "0.0.1", + "license": "UNLICENSED", + "dependencies": { + "yiki": "git+https://git.kevinthe.horse/yellows111/yiki.git#semver:*" + } + }, + "node_modules/@liquify/prettify": { + "version": "0.5.5-beta.1", + "resolved": "https://registry.npmjs.org/@liquify/prettify/-/prettify-0.5.5-beta.1.tgz", + "integrity": "sha512-VOJiXf6OEpXFQoF0W1hwGvolMURzWLurATnekVs8TcsrE0aSuCsdfWdk7bw8U/dSmsXe05PIq5VtmYMcecIIyw==", + "license": "MIT", + "engines": { + "node": ">=12", + "pnpm": ">=4" + } + }, + "node_modules/ansi-red": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/ansi-red/-/ansi-red-0.1.1.tgz", + "integrity": "sha512-ewaIr5y+9CUTGFwZfpECUbFlGcC0GCw1oqR9RI6h1gQCd9Aj2GxSckCnPsVJnmfMZbwFYE+leZGASgkWl06Jow==", + "license": "MIT", + "dependencies": { + "ansi-wrap": "0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ansi-wrap": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/ansi-wrap/-/ansi-wrap-0.1.0.tgz", + "integrity": "sha512-ZyznvL8k/FZeQHr2T6LzcJ/+vBApDnMNZvfVFy3At0knswWd6rJ3/0Hhmpu8oqa6C92npmozs890sX9Dl6q+Qw==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "license": "MIT", + "dependencies": { + "sprintf-js": "~1.0.2" + } + }, + "node_modules/autolinker": { + "version": "3.16.2", + "resolved": "https://registry.npmjs.org/autolinker/-/autolinker-3.16.2.tgz", + "integrity": "sha512-JiYl7j2Z19F9NdTmirENSUUIIL/9MytEWtmzhfmsKPCp9E+G35Y0UNCMoM9tFigxT59qSc8Ml2dlZXOCVTYwuA==", + "license": "MIT", + "dependencies": { + "tslib": "^2.3.0" + } + }, + "node_modules/buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", + "license": "MIT" + }, + "node_modules/coffee-script": { + "version": "1.12.7", + "resolved": "https://registry.npmjs.org/coffee-script/-/coffee-script-1.12.7.tgz", + "integrity": "sha512-fLeEhqwymYat/MpTPUjSKHVYYl0ec2mOyALEMLmzr5i1isuG+6jfI2j2d5oBO3VIzgUXgBVIcOT9uH1TFxBckw==", + "deprecated": "CoffeeScript on NPM has moved to \"coffeescript\" (no hyphen)", + "license": "MIT", + "bin": { + "cake": "bin/cake", + "coffee": "bin/coffee" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/concat-stream": { + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", + "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", + "engines": [ + "node >= 0.8" + ], + "license": "MIT", + "dependencies": { + "buffer-from": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^2.2.2", + "typedarray": "^0.0.6" + } + }, + "node_modules/concat-with-sourcemaps": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/concat-with-sourcemaps/-/concat-with-sourcemaps-1.1.0.tgz", + "integrity": "sha512-4gEjHJFT9e+2W/77h/DS5SGUgwDaOwprX8L/gl5+3ixnzkVJJsZWDSelmN3Oilw3LNDZjZV0yqH1hLG3k6nghg==", + "license": "ISC", + "dependencies": { + "source-map": "^0.6.1" + } + }, + "node_modules/core-util-is": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", + "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==", + "license": "MIT" + }, + "node_modules/diacritics-map": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/diacritics-map/-/diacritics-map-0.1.0.tgz", + "integrity": "sha512-3omnDTYrGigU0i4cJjvaKwD52B8aoqyX/NEIkukFFkogBemsIbhSa1O414fpTp5nuszJG6lvQ5vBvDVNCbSsaQ==", + "license": "MIT", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "license": "BSD-2-Clause", + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/expand-range": { + "version": "1.8.2", + "resolved": "https://registry.npmjs.org/expand-range/-/expand-range-1.8.2.tgz", + "integrity": "sha512-AFASGfIlnIbkKPQwX1yHaDjFvh/1gyKJODme52V6IORh69uEYgZp0o9C+qsIGNVEiuuhQU0CSSl++Rlegg1qvA==", + "license": "MIT", + "dependencies": { + "fill-range": "^2.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", + "license": "MIT", + "dependencies": { + "is-extendable": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/fill-range": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-2.2.4.tgz", + "integrity": "sha512-cnrcCbj01+j2gTG921VZPnHbjmdAf8oQV/iGeV2kZxGSyfYjjTyY79ErsK1WJWMpw6DaApEX72binqJE+/d+5Q==", + "license": "MIT", + "dependencies": { + "is-number": "^2.1.0", + "isobject": "^2.0.0", + "randomatic": "^3.0.0", + "repeat-element": "^1.1.2", + "repeat-string": "^1.5.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/for-in": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", + "integrity": "sha512-7EwmXrOjyL+ChxMhmG5lnW9MPt1aIeZEwKhQzoBUdTV0N3zuwWDZYVJatDvZ2OyzPUvdIAZDsCetk3coyMfcnQ==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/gray-matter": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/gray-matter/-/gray-matter-2.1.1.tgz", + "integrity": "sha512-vbmvP1Fe/fxuT2QuLVcqb2BfK7upGhhbLIt9/owWEvPYrZZEkelLcq2HqzxosV+PQ67dUFLaAeNpH7C4hhICAA==", + "license": "MIT", + "dependencies": { + "ansi-red": "^0.1.1", + "coffee-script": "^1.12.4", + "extend-shallow": "^2.0.1", + "js-yaml": "^3.8.1", + "toml": "^2.3.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/gulp-header": { + "version": "1.8.12", + "resolved": "https://registry.npmjs.org/gulp-header/-/gulp-header-1.8.12.tgz", + "integrity": "sha512-lh9HLdb53sC7XIZOYzTXM4lFuXElv3EVkSDhsd7DoJBj7hm+Ni7D3qYbb+Rr8DuM8nRanBvkVO9d7askreXGnQ==", + "deprecated": "Removed event-stream from gulp-header", + "license": "MIT", + "dependencies": { + "concat-with-sourcemaps": "*", + "lodash.template": "^4.4.0", + "through2": "^2.0.0" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "license": "ISC" + }, + "node_modules/is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==", + "license": "MIT" + }, + "node_modules/is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-number": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-2.1.0.tgz", + "integrity": "sha512-QUzH43Gfb9+5yckcrSA0VBDwEtDUchrk4F6tfJZQuNzDJbEDB9cZNzSfXGQ1jqmdDY/kl41lUOWM9syA8z8jlg==", + "license": "MIT", + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "license": "MIT", + "dependencies": { + "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-plain-object/node_modules/isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", + "license": "MIT" + }, + "node_modules/isobject": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", + "integrity": "sha512-+OUdGJlgjOBZDfxnDjYYG6zp487z0JGNQq3cYQYg5f5hKR+syHMsaztzGeml/4kGG55CSpKSpWTY+jYGgsHLgA==", + "license": "MIT", + "dependencies": { + "isarray": "1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/js-yaml": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "license": "MIT", + "dependencies": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "license": "MIT", + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/lazy-cache": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/lazy-cache/-/lazy-cache-2.0.2.tgz", + "integrity": "sha512-7vp2Acd2+Kz4XkzxGxaB1FWOi8KjWIWsgdfD5MCb86DWvlLqhRPM+d6Pro3iNEL5VT9mstz5hKAlcd+QR6H3aA==", + "license": "MIT", + "dependencies": { + "set-getter": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/list-item": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/list-item/-/list-item-1.1.1.tgz", + "integrity": "sha512-S3D0WZ4J6hyM8o5SNKWaMYB1ALSacPZ2nHGEuCjmHZ+dc03gFeNZoNDcqfcnO4vDhTZmNrqrpYZCdXsRh22bzw==", + "license": "MIT", + "dependencies": { + "expand-range": "^1.8.1", + "extend-shallow": "^2.0.1", + "is-number": "^2.1.0", + "repeat-string": "^1.5.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/lodash._reinterpolate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz", + "integrity": "sha512-xYHt68QRoYGjeeM/XOE1uJtvXQAgvszfBhjV4yvsQH0u2i9I6cI6c6/eG4Hh3UAOVn0y/xAXwmTzEay49Q//HA==", + "license": "MIT" + }, + "node_modules/lodash.template": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.template/-/lodash.template-4.5.0.tgz", + "integrity": "sha512-84vYFxIkmidUiFxidA/KjjH9pAycqW+h980j7Fuz5qxRtO9pgB7MDFTdys1N7A5mcucRiDyEq4fusljItR1T/A==", + "license": "MIT", + "dependencies": { + "lodash._reinterpolate": "^3.0.0", + "lodash.templatesettings": "^4.0.0" + } + }, + "node_modules/lodash.templatesettings": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/lodash.templatesettings/-/lodash.templatesettings-4.2.0.tgz", + "integrity": "sha512-stgLz+i3Aa9mZgnjr/O+v9ruKZsPsndy7qPZOchbqk2cnTU1ZaldKK+v7m54WoKIyxiuMZTKT2H81F8BeAc3ZQ==", + "license": "MIT", + "dependencies": { + "lodash._reinterpolate": "^3.0.0" + } + }, + "node_modules/markdown-link": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/markdown-link/-/markdown-link-0.1.1.tgz", + "integrity": "sha512-TurLymbyLyo+kAUUAV9ggR9EPcDjP/ctlv9QAFiqUH7c+t6FlsbivPo9OKTU8xdOx9oNd2drW/Fi5RRElQbUqA==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/markdown-toc": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/markdown-toc/-/markdown-toc-1.2.0.tgz", + "integrity": "sha512-eOsq7EGd3asV0oBfmyqngeEIhrbkc7XVP63OwcJBIhH2EpG2PzFcbZdhy1jutXSlRBBVMNXHvMtSr5LAxSUvUg==", + "license": "MIT", + "dependencies": { + "concat-stream": "^1.5.2", + "diacritics-map": "^0.1.0", + "gray-matter": "^2.1.0", + "lazy-cache": "^2.0.2", + "list-item": "^1.1.1", + "markdown-link": "^0.1.1", + "minimist": "^1.2.0", + "mixin-deep": "^1.1.3", + "object.pick": "^1.2.0", + "remarkable": "^1.7.1", + "repeat-string": "^1.6.1", + "strip-color": "^0.1.0" + }, + "bin": { + "markdown-toc": "cli.js" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/markdown-toc/node_modules/autolinker": { + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/autolinker/-/autolinker-0.28.1.tgz", + "integrity": "sha512-zQAFO1Dlsn69eXaO6+7YZc+v84aquQKbwpzCE3L0stj56ERn9hutFxPopViLjo9G+rWwjozRhgS5KJ25Xy19cQ==", + "license": "MIT", + "dependencies": { + "gulp-header": "^1.7.1" + } + }, + "node_modules/markdown-toc/node_modules/remarkable": { + "version": "1.7.4", + "resolved": "https://registry.npmjs.org/remarkable/-/remarkable-1.7.4.tgz", + "integrity": "sha512-e6NKUXgX95whv7IgddywbeN/ItCkWbISmc2DiqHJb0wTrqZIexqdco5b8Z3XZoo/48IdNVKM9ZCvTPJ4F5uvhg==", + "license": "MIT", + "dependencies": { + "argparse": "^1.0.10", + "autolinker": "~0.28.0" + }, + "bin": { + "remarkable": "bin/remarkable.js" + }, + "engines": { + "node": ">= 0.10.0" + } + }, + "node_modules/math-random": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/math-random/-/math-random-1.0.4.tgz", + "integrity": "sha512-rUxjysqif/BZQH2yhd5Aaq7vXMSx9NdEsQcyA07uEzIvxgI7zIr33gGsh+RU0/XjmQpCW7RsVof1vlkvQVCK5A==", + "license": "MIT" + }, + "node_modules/minimist": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/mixin-deep": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.2.tgz", + "integrity": "sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==", + "license": "MIT", + "dependencies": { + "for-in": "^1.0.2", + "is-extendable": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/mixin-deep/node_modules/is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "license": "MIT", + "dependencies": { + "is-plain-object": "^2.0.4" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object.pick": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", + "integrity": "sha512-tqa/UMy/CCoYmj+H5qc07qvSL9dqcs/WZENZ1JbtWBlATP+iVOe778gE6MSijnyCnORzDuX6hU+LA4SZ09YjFQ==", + "license": "MIT", + "dependencies": { + "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object.pick/node_modules/isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/process-nextick-args": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", + "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", + "license": "MIT" + }, + "node_modules/randomatic": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/randomatic/-/randomatic-3.1.1.tgz", + "integrity": "sha512-TuDE5KxZ0J461RVjrJZCJc+J+zCkTb1MbH9AQUq68sMhOMcy9jLcb3BrZKgp9q9Ncltdg4QVqWrH02W2EFFVYw==", + "license": "MIT", + "dependencies": { + "is-number": "^4.0.0", + "kind-of": "^6.0.0", + "math-random": "^1.0.1" + }, + "engines": { + "node": ">= 0.10.0" + } + }, + "node_modules/randomatic/node_modules/is-number": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-4.0.0.tgz", + "integrity": "sha512-rSklcAIlf1OmFdyAqbnWTLVelsQ58uvZ66S/ZyawjWqIviTWCjg2PzVGw8WUA+nNuPTqb4wgA+NszrJ+08LlgQ==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/randomatic/node_modules/kind-of": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/readable-stream": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", + "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", + "license": "MIT", + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/remarkable": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/remarkable/-/remarkable-2.0.1.tgz", + "integrity": "sha512-YJyMcOH5lrR+kZdmB0aJJ4+93bEojRZ1HGDn9Eagu6ibg7aVZhc3OWbbShRid+Q5eAfsEqWxpe+g5W5nYNfNiA==", + "license": "MIT", + "dependencies": { + "argparse": "^1.0.10", + "autolinker": "^3.11.0" + }, + "bin": { + "remarkable": "bin/remarkable.js" + }, + "engines": { + "node": ">= 6.0.0" + } + }, + "node_modules/remarkable-header-ids": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/remarkable-header-ids/-/remarkable-header-ids-0.2.0.tgz", + "integrity": "sha512-IjjJDQxKgmKWgEATW0Xdv5sk1/Cig9t9/D/xqt9K5TxghIaVZTvvjEDVU6XbtCvEmVK5dbQEp8KKz9T3cNkQAQ==", + "license": "MIT" + }, + "node_modules/repeat-element": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.4.tgz", + "integrity": "sha512-LFiNfRcSu7KK3evMyYOuCzv3L10TW7yC1G2/+StMjK8Y6Vqd2MG7r/Qjw4ghtuCOjFvlnms/iMmLqpvW/ES/WQ==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/repeat-string": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", + "integrity": "sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w==", + "license": "MIT", + "engines": { + "node": ">=0.10" + } + }, + "node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "license": "MIT" + }, + "node_modules/set-getter": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/set-getter/-/set-getter-0.1.1.tgz", + "integrity": "sha512-9sVWOy+gthr+0G9DzqqLaYNA7+5OKkSmcqjL9cBpDEaZrr3ShQlyX2cZ/O/ozE41oxn/Tt0LGEM/w4Rub3A3gw==", + "license": "MIT", + "dependencies": { + "to-object-path": "^0.3.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", + "license": "BSD-3-Clause" + }, + "node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "license": "MIT", + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/strip-color": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/strip-color/-/strip-color-0.1.0.tgz", + "integrity": "sha512-p9LsUieSjWNNAxVCXLeilaDlmuUOrDS5/dF9znM1nZc7EGX5+zEFC0bEevsNIaldjlks+2jns5Siz6F9iK6jwA==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/through2": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", + "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", + "license": "MIT", + "dependencies": { + "readable-stream": "~2.3.6", + "xtend": "~4.0.1" + } + }, + "node_modules/to-object-path": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz", + "integrity": "sha512-9mWHdnGRuh3onocaHzukyvCZhzvr6tiflAy/JRFXcJX0TjgfWA9pk9t8CMbzmBE4Jfw58pXbkngtBtqYxzNEyg==", + "license": "MIT", + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/toml": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/toml/-/toml-2.3.6.tgz", + "integrity": "sha512-gVweAectJU3ebq//Ferr2JUY4WKSDe5N+z0FvjDncLGyHmIDoxgY/2Ie4qfEIDm4IS7OA6Rmdm7pdEEdMcV/xQ==", + "license": "MIT" + }, + "node_modules/tslib": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.7.0.tgz", + "integrity": "sha512-gLXCKdN1/j47AiHiOkJN69hJmcbGTHI0ImLmbYLHykhgeN0jVGola9yVjFgzCUklsZQMW55o+dW7IXv3RCXDzA==", + "license": "0BSD" + }, + "node_modules/typedarray": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", + "integrity": "sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==", + "license": "MIT" + }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", + "license": "MIT" + }, + "node_modules/xtend": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", + "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", + "license": "MIT", + "engines": { + "node": ">=0.4" + } + }, + "node_modules/yiki": { + "version": "0.1.2", + "resolved": "git+https://git.kevinthe.horse/yellows111/yiki.git#4e65d573b281eca56fca10910ea026785152a6b5", + "license": "MIT", + "dependencies": { + "@liquify/prettify": "^0.5.5-beta.1", + "markdown-toc": "^1.2.0", + "remarkable": "^2.0.1", + "remarkable-header-ids": "^0.2.0" + } + } + } +} diff --git a/package.json b/package.json new file mode 100644 index 0000000..eaff8ee --- /dev/null +++ b/package.json @@ -0,0 +1,13 @@ +{ + "name": "yellows-msnp-wiki", + "version": "0.0.1", + "description": "The yellows111 MSNP wiki that aims for accuracy.", + "author": "yellows111", + "license": "UNLICENSED", + "dependencies": { + "yiki": "git+https://git.kevinthe.horse/yellows111/yiki.git#semver:*" + }, + "scripts": { + "build": "node ./node_modules/yiki/ymake.js" + } +}