Difference between revisions of "Pixiv Chat"

From Archiveteam
Jump to navigation Jump to search
(Link to data, ref to Pixiv)
 
(5 intermediate revisions by 2 users not shown)
Line 1: Line 1:
{{Infobox project
{{Infobox project
| title = Chat.Pixiv.Net
| title = Pixiv Chat
| logo = chatpixivicon.png
| image = chatpixivwebpage.png
| description = Home Page
| URL = http://chat.pixiv.net/
| URL = http://chat.pixiv.net/
| project_status = {{closing}}
| project_status = {{closed}}
| archiving_status = {{saved}} Scraping new rooms until site closes
| archiving_status = {{saved}}
| source = https://github.com/ArchiveTeam/pixiv-grab
| source = [https://github.com/ArchiveTeam/pixiv-grab pixiv-grab]
| tracker = http://tracker.archiveteam.org/pixiv/
| tracker = [http://tracker.archiveteam.org/pixiv/ pixiv]
| irc = savepixiv
| irc = savepixiv
| irc_network = EFnet
| irc_abandoned = true
| data = [https://archive.org/details/archiveteam_pixiv?tab=collection&query=date%3A2017]
}}
}}


An oekaki chat service called '''Pixiv Chat''' was launched on December 15, 2009 for users to draw oekaki art while in a chat room. It shut down in June 2017.


== About ==
== Closure notice ==
An oekaki chat service called Pixiv Chat was launched on December 15, 2009 for users to draw oekaki art while in a chat room.
<blockquote>
 
 
== Closure Notice ==
pixiv Chat will be shut down on June 15th 2017 (Thu), at 12:00 (JST).
pixiv Chat will be shut down on June 15th 2017 (Thu), at 12:00 (JST).
Thank you for your support so far.
Thank you for your support so far.
In the future, we're planning to release a new pixiv Sketch function that will allow you to draw together with many other creators in real time.
In the future, we're planning to release a new pixiv Sketch function that will allow you to draw together with many other creators in real time.


Please notice that the data you posted will only be available until pixiv Chat shutdown. If you want to save and archive the images in your chatroom pages, please be sure to do so before June 15.  
<nowiki>*</nowiki> Please notice that the data you posted will only be available until pixiv Chat shutdown.
 
If you want to save and archive the images in your chatroom pages, please be sure to do so before June 15.
 
</blockquote>
 
== Tech Details ==
Site uses Flash to play back combined packets of data, this data is stored as AMF Files that is a common format with Flash, Stores the raw brushstrokes and other commands to playback the chatroom
 
 
Chatrooms use the format http://chat.pixiv.net/roomtop.php?id=### and start at ID 1 and count upwards from there.


== Technical details ==
The site uses Flash to play back combined packets of data. This data is stored as AMF files, which is a common format with Flash. It stores the raw brushstrokes and other commands to playback the chatroom.


Chatrooms use the format <code><nowiki>http://chat.pixiv.net/roomtop.php?id=###</nowiki></code> and start at ID 1 and count upwards from there.


The chatroom HTML has the Flashvars line, it contains the roomid, closed(If the room is archived or not), log(Used to get the AMF Packets), srv(What server the AMF packets are stored) and img(the thumbnail))
The URL format to download the AMFs is <code><nowiki>http://SVR.pixiv.net/SPLITID_0/SPLITID_1/SPLITID_2/LOG/AMFNAME</nowiki></code>. <code>SVR</code> is a server identifier, <code>SPLITID_#</code> is the room ID, <code>LOG</code> is a "log ID" (?), and <code>AMFNAME</code> is a filename.


<code>SVR</code> and <code>LOG</code> can be obtained from the chatroom HTML. In a JavaScript block, it contains a <code>Flashvars</code> line which contains the <code>roomid</code>, <code>closed</code> (whether the room is archived or not), <code>log</code> (used to get the AMF packets), <code>svr</code> (which server the AMF packets are stored on), and <code>img</code> (the thumbnail URL).


The <code>SPLITID_#</code> path components, you need to pad the room ID with zeros until total length is 9 (so room ID 1024 would be 000001024), and then split it into blocks of three (e.g. <code>000/001/024</code>).


To get a list of the AMF Packets for Download, You call http://chat.pixiv.net/api/capturepos.php?roomid=### to get a json reply of <code>["50","197","399"]</code> To grab the AMF Packets you start out at 1-JSON[0].AMF then JSON[0]+1-JSON[1] IE: 1-50.AMF, 51-192.AMF
The <code>AMFNAME</code> (AMF filenames) are of the form <code>A-B.amf</code> where <code>A</code> and <code>B</code> are numbers starting from 1. The number of AMF files varies. To get a list of the AMF packets for download, retrieve <code><nowiki>http://chat.pixiv.net/api/capturepos.php?roomid=ROOMID</nowiki></code>, which returns a JSON reply of e.g. <code>["42","123","456","789"]</code>. These are the endpoints of the filename number ranges; the corresponding filenames are <code>1-42.amf</code>, <code>43-123.amf</code>, <code>124-456.amf</code>, and <code>457-789.amf</code>.


The URL Format to download the AMFs are: <nowiki>http://'.$srv.'.pixiv.net/'.$splitid[0].'/'.$splitid[1].'/'.$splitid[2].'/'.$logid.'/'.$amfidrange.'.amf</nowiki>
Concrete example for room 1:
* The <code>Flashvars</code> on <code><nowiki>http://chat.pixiv.net/roomtop.php?id=1</nowiki></code> say that the server is <code>chat-img01</code> and the log is <code>da566919</code>.
* The padded and split room ID is <code>000/000/001</code>.
* From <code><nowiki>http://chat.pixiv.net/api/capturepos.php?roomid=1</nowiki></code>, we get <code>["50","197","399"]</code>. So there are three AMF files, and they're called <code>1-50.amf</code>, <code>51-197.amf</code>, and <code>198-399.amf</code>.
* Combining this, the AMF URLs are:
** <code><nowiki>http://chat-img01.pixiv.net/000/000/001/da566919/1-50.amf</nowiki></code>
** <code><nowiki>http://chat-img01.pixiv.net/000/000/001/da566919/51-197.amf</nowiki></code>
** <code><nowiki>http://chat-img01.pixiv.net/000/000/001/da566919/198-399.amf</nowiki></code>


For the splitid you need to pad the room ID with zeros until total length is 9 so room ID 1024 would be 000001024 and would be the url of /000/001/025/$logid
== See also ==
* [[Pixiv]]

Latest revision as of 20:02, 2 March 2024

Pixiv Chat
URL http://chat.pixiv.net/
Status Offline
Archiving status Saved!
Archiving type Unknown
Project source pixiv-grab
Project tracker pixiv
IRC channel #archiveteam-bs (on hackint)
(formerly #savepixiv (on EFnet))
Data[how to use] [1]

An oekaki chat service called Pixiv Chat was launched on December 15, 2009 for users to draw oekaki art while in a chat room. It shut down in June 2017.

Closure notice

pixiv Chat will be shut down on June 15th 2017 (Thu), at 12:00 (JST). Thank you for your support so far. In the future, we're planning to release a new pixiv Sketch function that will allow you to draw together with many other creators in real time.

* Please notice that the data you posted will only be available until pixiv Chat shutdown. If you want to save and archive the images in your chatroom pages, please be sure to do so before June 15.

Technical details

The site uses Flash to play back combined packets of data. This data is stored as AMF files, which is a common format with Flash. It stores the raw brushstrokes and other commands to playback the chatroom.

Chatrooms use the format http://chat.pixiv.net/roomtop.php?id=### and start at ID 1 and count upwards from there.

The URL format to download the AMFs is http://SVR.pixiv.net/SPLITID_0/SPLITID_1/SPLITID_2/LOG/AMFNAME. SVR is a server identifier, SPLITID_# is the room ID, LOG is a "log ID" (?), and AMFNAME is a filename.

SVR and LOG can be obtained from the chatroom HTML. In a JavaScript block, it contains a Flashvars line which contains the roomid, closed (whether the room is archived or not), log (used to get the AMF packets), svr (which server the AMF packets are stored on), and img (the thumbnail URL).

The SPLITID_# path components, you need to pad the room ID with zeros until total length is 9 (so room ID 1024 would be 000001024), and then split it into blocks of three (e.g. 000/001/024).

The AMFNAME (AMF filenames) are of the form A-B.amf where A and B are numbers starting from 1. The number of AMF files varies. To get a list of the AMF packets for download, retrieve http://chat.pixiv.net/api/capturepos.php?roomid=ROOMID, which returns a JSON reply of e.g. ["42","123","456","789"]. These are the endpoints of the filename number ranges; the corresponding filenames are 1-42.amf, 43-123.amf, 124-456.amf, and 457-789.amf.

Concrete example for room 1:

  • The Flashvars on http://chat.pixiv.net/roomtop.php?id=1 say that the server is chat-img01 and the log is da566919.
  • The padded and split room ID is 000/000/001.
  • From http://chat.pixiv.net/api/capturepos.php?roomid=1, we get ["50","197","399"]. So there are three AMF files, and they're called 1-50.amf, 51-197.amf, and 198-399.amf.
  • Combining this, the AMF URLs are:
    • http://chat-img01.pixiv.net/000/000/001/da566919/1-50.amf
    • http://chat-img01.pixiv.net/000/000/001/da566919/51-197.amf
    • http://chat-img01.pixiv.net/000/000/001/da566919/198-399.amf

See also