blob: 19eab655ac38171e452c7ad466be84dcd5fee358 (
plain) (
tree)
|
|
Piztor Transmission Protocol v1.0b
----------------------------------
- Pull
- General
- Request
::
+---4b---+---1b---+-------?b--------+
| LENGTH | OPT_ID | SPECIFIC_DATA |
+--int---+-uchar--+-----------------+
- Response
::
+---4b---+---1b---+------?b---------+
| LENGTH | OPT_ID | SPECIFIC_DATA |
+--int---+-uchar--+-----------------+
Notice:
- In following sections, ``LENGTH`` part is left out for clarity.
- ``PADDING`` has value ``0``.
- ``string`` type structure:
::
+-------?b-------+---------+
| STRING_CONTENT | PADDING |
+----------------+---------+
- ``AUTH_HEAD`` structure:
::
+----32b-----+----?b----+
| USER_TOKEN | USERNAME |
+----raw-----+--string--+
- Authentication
- Request
::
+--1b---+-----?b---+----?b----+
| 0x00 | USERNAME | PASSWORD |
+-uchar-+--string--+--string--+
- Response
::
+--1b---+---1b---+---4b----+----32b-----+
| 0x00 | STATUS | USER_ID | USER_TOKEN |
+-uchar-+--uchar-+---int---+----raw-----+
``STATUS`` :
- ``0x00`` for success
- ``0x01`` for failure
- Location Update
- Request
::
+--1b---+-----?b------+----8b------+------8b-----+
| 0x01 | AUTH_HEAD | LATITUDE | LONGITUDE |
+-uchar-+-------------+---double---+---double----+
- Response
::
+--1b---+---1b---+
| 0x01 | STATUS |
+-uchar-+--uchar-+
``STATUS`` :
- ``0x00`` for success
- ``0x01`` for invalid token
- Location Information
- Request
::
+--1b---+------?b------+------2b-----+
| 0x02 | AUTH_HEAD | GROUP_ID |
+-uchar-+--------------+-------------+
``GROUP_ID``:
::
+---1b----+---1b---+
| COMP_ID | SEC_ID |
+--uchar--+-uchar--+
- Response
::
+--1b---+---1b---+------20b-------+-----+
| 0x02 | STATUS | LOCATION_ENTRY | ... |
+-uchar-+-uchar--+----------------+-----+
``LOCATION_ENTRY`` :
::
+---4b----+----8b----+-----8b----+
| USER_ID | LATITUDE | LONGITUDE |
+---int---+--double--+--double---+
- User Information
- Request
::
+--1b---+------?b------+------4b-----+
| 0x03 | AUTH_HEAD | USER_ID |
+-uchar-+--------------+-----int-----+
- Response
::
+--1b---+---1b---+------?b-----+-----+
| 0x03 | STATUS | UINFO_ENTRY | ... |
+-uchar-+-uchar--+-------------+-----+
``UINFO_ENTRY`` :
::
+----1b----+-----?b-----+
| INFO_KEY | INFO_VALUE |
+--uchar---+------------+
``INFO_KEY`` :
:``0x00``: gid (value is a 2-byte ``GROUP_ID``)
:``0x01``: sex (value is a 1-byte ``boolean``: ``0x01`` for male, ``0x00`` for female)
- User Logout
- Request
::
+--1b--+-----?b------+
| 0x04 | AUTH_HEAD |
+------+-------------+
- Response
::
+--1b--+---1b---+
| 0x04 | STATUS |
+------+--------+
- Open Push Tunnel
- Request
::
+--1b--+-----?b------+
| 0x05 | AUTH_HEAD |
+------+-------------+
- Response
::
+--1b--+---1b---+
| 0x05 | STATUS |
+------+--------+
- Send Text Message
- Request
::
+--1b--+----?b-----+----?b----+
| 0x06 | AUTH_HEAD | MESSAGE |
+------+-----------+--string--+
- Response
::
+--1b--+---1b---+
| 0x06 | STATUS |
+------+--------+
- Push Notification
- General Request
::
+---1b---+-------32b--------+-------?b------+
| OPT_ID | PUSH_FINGERPRINT | SPECIFIC_DATA |
+--------+------------------+---------------+
- Acknowledgement
::
+---1b---+-------32b---------+
| OPT_ID | PUSH_FINGERPRINT |
+--------+-------------------+
- Text Message
::
----+----?b----+
... | MESSAGE |
----+--string--+
- User Location Update
::
----+-------?b-------+
... | LOCATION_ENTRY |
----+----------------+
|