Protocols/OSCAR/SNAC/BART UPLOAD QUERY: Difference between revisions

From NINA Wiki
Jump to navigation Jump to search
No edit summary
No edit summary
 
Line 35: Line 35:
| Custom item
| Custom item
|}
|}
=== From Aleksandr Shutko: SNAC(10,02) upload buddy icon to server SNAC(10,02) BART__UPLOAD_QUERY ===
<table width=640 cellSpacing=0 cellPadding=0 border=0>
<tr>
<td>
<br>
Client (AIM/ICQ) use this snac to upload its own buddy icon to server. Server should
reply via [[Protocols/OSCAR/SNAC_10_03|SNAC(10,03)]] that contain md5 checksum of
the uploaded icon. Go [[Protocols/OSCAR/Services/BART/Tutorials|here]] to learn correct icon
upload/download sequences.
<br><br>
<table width=640 bgcolor=darkblue cellSpacing=0 cellPadding=0 border=0><tr><td>
<table width=100% cellSpacing=2 cellPadding=0 border=0><tr><td  bgcolor=#E9E9E9 >
<table width=640 cellSpacing=0 cellPadding=0 align=center border=0>
<tr>
<td width=169>&nbsp;00 10</td>
<td width=5>&nbsp;</td>
<td>word</td>
<td width=5>&nbsp;</td>
<td width=55%>SNAC family</td>
</tr>
<tr>
<td>&nbsp;00 02</td>
<td width=5>&nbsp;</td>
<td>word</td>
<td width=5>&nbsp;</td>
<td width=55%>SNAC subtype</td>
</tr>
<tr>
<td>&nbsp;00 00</td>
<td width=5>&nbsp;</td>
<td>word</td>
<td width=5>&nbsp;</td>
<td width=55%>SNAC flags</td>
</tr>
<tr>
<td>&nbsp;xx xx xx xx</td>
<td width=5>&nbsp;</td>
<td>dword</td>
<td width=5>&nbsp;</td>
<td width=55%>SNAC request-id</td>
</tr>
</table>
</td></tr>
<tr><td bgcolor=#E9E9E9>
<table width=640 cellSpacing=0 cellPadding=0 align=center border=0>
<tr>
<td width=169>&nbsp;xx xx</td>
<td width=5>&nbsp;</td>
<td>word</td>
<td width=5>&nbsp;</td>
<td width=55%>reference number</td>
</tr>
<tr>
<td>&nbsp;xx xx</td>
<td>&nbsp;</td>
<td>word</td>
<td>&nbsp;</td>
<td>icon length</td>
</tr>
<tr>
<td>&nbsp;xx ..</td>
<td>&nbsp;</td>
<td>array</td>
<td>&nbsp;</td>
<td>icon data (jpg, gif, bmp, etc...)</td>
</tr>
</table>
</td></tr></table>
</td></tr></table>
</td></tr></table>
<br>Example SNAC dump with flap header:
<table width=640 bgcolor=darkblue cellSpacing=0 cellPadding=0 border=0><tr><td>
<table width=100% cellSpacing=2 cellPadding=0 border=0><tr>
<td bgcolor=#E9E9E9>
<font size=3><pre style="font-size: 13px">
  2a 02 5a 5b 01 a3 00 10 00 02 00 00 00 01 00 02  *.Z[............
  00 01 01 95 47 49 46 38 39 61 20 00 20 00 b3 00  ....GIF89a . ...
  00 ff 00 ff 00 00 00 a0 ff 00 80 c0 00 60 a0 00  .............`..
  40 80 00 a0 ff 40 c0 ff 40 c0 ff 80 ff ff ff 00  @....@..@.......
  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
  00 21 f9 04 01 00 00 00 00 21 fe 30 43 72 65 61  .!.......!.0Crea
  74 6f 72 3a 20 50 6f 6c 79 56 69 65 77 ae 20 56  tor: PolyView. V
  65 72 73 69 6f 6e 20 33 2e 32 30 20 62 79 20 50  ersion 3.20 by P
  6f 6c 79 62 79 74 65 73 0d 0a 0d 0a 00 2c 00 00  olybytes.....,..
  00 00 20 00 20 00 00 04 ff 10 c8 49 ab bd 38 eb  .. . ......I..8.
  8d 83 ff 60 c0 5d 9e 30 9c 44 5a ac c5 37 02 a5  ...`.].0.DZ..7..
  20 9f 68 4a b0 ad a8 05 72 df d3 b5 1b 4b 47 92    .hJ....r....KG.
  19 8e 06 df 8c 66 13 12 29 01 a4 e1 70 90 2a 4d  .....f..)...p.*M
  83 80 6a f5 84 1d a9 60 aa 34 f9 23 68 85 ad 49  ..j....`.4.#h..I
  74 7a 40 b8 dd e1 ea 71 69 de 12 a3 ed b7 fe 2d  tz@....qi......-
  2e d1 3c 76 12 78 7b 84 07 1f 64 28 67 5c 30 09  ..&lt;v.x{...d(g\0.
  01 84 7a 86 01 09 93 3c 33 66 8a 39 8d 8f 08 91  ..z....&lt;3f.9....
  93 9e 51 4b 92 5a 5c 92 9a 84 a5 9e 94 88 59 8d  ..QK.Z\.......Y.
  2a 1e 94 79 70 a8 a9 8d ab a5 a3 af 94 7c b3 b4  *..yp........|..
  a0 26 97 ad 99 b0 54 bc 8d b7 49 89 c6 37 b9 87  .&....T...I..7..
  c5 c6 b5 96 a8 b8 b7 a2 b4 d6 be 03 66 9f a4 bd  ............f...
  d6 a9 d8 59 d2 dc 9f b9 d7 ab da a2 cb 82 1f 32  ...Y...........2
  e5 94 e0 da ef 8b 30 03 4a 21 95 74 e5 b8 6a 04  ......0.J!.t..j.
  34 57 3e 4c a8 ed 83 92 02 c8 89 25 35 a4 39 21  4W&gt;L.......%5.9!
  d1 c4 03 10 1b f7 16 76 08 c0 e2 52 88 26 38 ba  .......v...R.&8.
  90 f0 50 b1 09 1a 52 2f 0e d6 e1 18 99 23 64 85  ..P...R/.....#d.
  7b 20 4c aa d4 10 01 00 3b                        { L.....;
</pre></font>
</td></tr></table>
</td></tr></table>
[[Category:With_Contrib]]


=== BART SNACs ===
=== BART SNACs ===

Latest revision as of 00:23, 14 February 2021

OSCAR Protocol
IntroductionTermsClients
Basic
DatatypesFLAPSNACTLV
UUIDsErrorsTool IDs
Host Interaction
Rate LimitsMigrationMessages
Other Services
ADMINADVERTALERT
BARTBOSBUCPCHAT
CHAT_NAV
Tutorials
Sign OnBARTRendezvous
ICBMLocateBuddies
Foodgroups
OSERVICE (0x0001)
LOCATE (0x0002)
BUDDY (0x0003)
ICBM (0x0004)
ADVERT (0x0005)
INVITE (0x0006)
ADMIN (0x0007)
POPUP (0x0008)
PD (0x0009)
USER_LOOKUP (0x000A)
STATS (0x000B)
TRANSLATE (0x000C)
CHAT_NAV (0x000D)
CHAT (0x000E)
ODIR (0x000F)
BART (0x0010)
FEEDBAG (0x0013)
ICQ (0x0015)
BUCP (0x0017)
ALERT (0x0018)
PLUGIN (0x0022)
UNNAMED_FG_24 (0x0024)
MDIR (0x0025)
ARS (0x044A)
ID Origin Name Foodgroup Service Status Version
0x0010, 0x0002 Client BART__UPLOAD_QUERY Unspecified BOS Active 1.9

This SNAC uploads a custom item to the BART host. Only certain types allow custom items.

SNAC Header

Foodgroup uint16 (word) 00 10
Subgroup uint16 (word) 00 02
Flags uint16 (word) 00 00
Request ID uint32 (dword) 00 00 00 00

SNAC Data

Name Type Notes
type uint16 (word) [Class: BART__ID_TYPES] Type of the item to upload
len uint16 (word) Size of the custom item
data Array of uint8 (byte) length len Custom item

From Aleksandr Shutko: SNAC(10,02) upload buddy icon to server SNAC(10,02) BART__UPLOAD_QUERY


Client (AIM/ICQ) use this snac to upload its own buddy icon to server. Server should reply via SNAC(10,03) that contain md5 checksum of the uploaded icon. Go here to learn correct icon upload/download sequences.

 00 10   word   SNAC family
 00 02   word   SNAC subtype
 00 00   word   SNAC flags
 xx xx xx xx   dword   SNAC request-id
 xx xx   word   reference number
 xx xx   word   icon length
 xx ..   array   icon data (jpg, gif, bmp, etc...)


Example SNAC dump with flap header:


  2a 02 5a 5b 01 a3 00 10 00 02 00 00 00 01 00 02   *.Z[............
  00 01 01 95 47 49 46 38 39 61 20 00 20 00 b3 00   ....GIF89a . ...
  00 ff 00 ff 00 00 00 a0 ff 00 80 c0 00 60 a0 00   .............`..
  40 80 00 a0 ff 40 c0 ff 40 c0 ff 80 ff ff ff 00   @....@..@.......
  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00   ................
  00 21 f9 04 01 00 00 00 00 21 fe 30 43 72 65 61   .!.......!.0Crea
  74 6f 72 3a 20 50 6f 6c 79 56 69 65 77 ae 20 56   tor: PolyView. V
  65 72 73 69 6f 6e 20 33 2e 32 30 20 62 79 20 50   ersion 3.20 by P
  6f 6c 79 62 79 74 65 73 0d 0a 0d 0a 00 2c 00 00   olybytes.....,..
  00 00 20 00 20 00 00 04 ff 10 c8 49 ab bd 38 eb   .. . ......I..8.
  8d 83 ff 60 c0 5d 9e 30 9c 44 5a ac c5 37 02 a5   ...`.].0.DZ..7..
  20 9f 68 4a b0 ad a8 05 72 df d3 b5 1b 4b 47 92    .hJ....r....KG.
  19 8e 06 df 8c 66 13 12 29 01 a4 e1 70 90 2a 4d   .....f..)...p.*M
  83 80 6a f5 84 1d a9 60 aa 34 f9 23 68 85 ad 49   ..j....`.4.#h..I
  74 7a 40 b8 dd e1 ea 71 69 de 12 a3 ed b7 fe 2d   tz@....qi......-
  2e d1 3c 76 12 78 7b 84 07 1f 64 28 67 5c 30 09   ..<v.x{...d(g\0.
  01 84 7a 86 01 09 93 3c 33 66 8a 39 8d 8f 08 91   ..z....<3f.9....
  93 9e 51 4b 92 5a 5c 92 9a 84 a5 9e 94 88 59 8d   ..QK.Z\.......Y.
  2a 1e 94 79 70 a8 a9 8d ab a5 a3 af 94 7c b3 b4   *..yp........|..
  a0 26 97 ad 99 b0 54 bc 8d b7 49 89 c6 37 b9 87   .&....T...I..7..
  c5 c6 b5 96 a8 b8 b7 a2 b4 d6 be 03 66 9f a4 bd   ............f...
  d6 a9 d8 59 d2 dc 9f b9 d7 ab da a2 cb 82 1f 32   ...Y...........2
  e5 94 e0 da ef 8b 30 03 4a 21 95 74 e5 b8 6a 04   ......0.J!.t..j.
  34 57 3e 4c a8 ed 83 92 02 c8 89 25 35 a4 39 21   4W>L.......%5.9!
  d1 c4 03 10 1b f7 16 76 08 c0 e2 52 88 26 38 ba   .......v...R.&8.
  90 f0 50 b1 09 1a 52 2f 0e d6 e1 18 99 23 64 85   ..P...R/.....#d.
  7b 20 4c aa d4 10 01 00 3b                        { L.....;


BART SNACs

SNAC List
Subgroup Origin Name
0x0001 Any BART__ERR
This is the error SNAC for the BART foodgroup.
0x0002 Client BART__UPLOAD_QUERY
This SNAC uploads a custom item to the BART host. Only certain types allow custom items.
0x0003 Host BART__UPLOAD_REPLY
These are the results for an item requested with BART__UPLOAD_QUERY.
0x0004 Client BART__DOWNLOAD_QUERY
Legacy request buddy icon from host.
0x0005 Host BART__DOWNLOAD_REPLY
Legacy host response to a buddy icon request.
0x0006 Client BART__DOWNLOAD2_QUERY
This SNAC downloads an asset from the BART host.
0x0007 Host BART__DOWNLOAD2_REPLY
These are the results for an item requested with BART__DOWNLOAD2_QUERY.