summaryrefslogtreecommitdiff
path: root/server/ptp.rst
blob: 8aef2b7c106d80ee41807d32363d1c6ae4a2ecce (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
Piztor Transmission Protocol v0.2
---------------------------------

- General 

  - Request

    ::
    
        +---4b---+---1b---+-------?b--------+
        | LENGTH | OPT ID |  SPECIFIC DATA  |
        +--int---+-uchar--+-----------------+

  - Response

    ::
    
        +---4b---+---1b---+------?b---------+
        | LENGTH | OPT ID |  SPECIFIC DATA  |
        +--int---+-uchar--+-----------------+

    Notice that in following sections, ``LENGTH`` part is left out for clarity.
    TODO: All secure requests should have username or uid provided.

- Authentication 

  - Request

    :: 

        +--1b---+-----?b------+-----?b-----+
        | 0x00  |   USERNAME  |  PASSWORD  |
        +-uchar-+-------------+------------+

  - Response

    ::
    
       +--1b---+---1b---+---4b----+----16b-----+
       | 0x00  | STATUS | USER_ID | USER_TOKEN |
       +-uchar-+--uchar-+---int---+----raw-----+

    ``STATUS`` :
    
    - 0x00 for success
    - 0x01 for failure

- Location Update

  - Request

    ::
    
        +--1b---+-----16b------+-----8b-----+------8b-----+
        | 0x02  |  USER_TOKEN  |  LATITUDE  |  LONGITUDE  |
        +-uchar-+------raw-----+---double---+---double----+

  - Response

    ::

        +--1b---+---1b---+
        | 0x02  | STATUS |
        +-uchar-+--uchar-+

    ``STATUS`` :

    - 0x00 for success
    - 0x01 for invalid token

- Location Information

  - Request

    ::
    
        +--1b---+-----16b------+------4b-----+
        | 0x03  |  USER_TOKEN  |  GROUP_ID   |
        +-uchar-+-----raw------+-----int-----+

  - Response

    ::

        +--1b---+---1b---+-----4b----+------20b-------+-----+
        | 0x03  | STATUS | ENTRY_CNT | LOCATION_ENTRY | ... |
        +-uchar-+-uchar--+----int----+----------------+-----+
        
    ``LOCATION_ENTRY`` :

    :: 

        +---4b----+----8b----+-----8b----+
        | USER_ID | LATITUDE | LONGITUDE |
        +---int---+--double--+--double---+