added link to Ruby docs
[lwes-website.git] / specs / lwes-v2
blob082e41ec12b3f42ef03dfdf01d0dea60181aeced
1 LWES V2.0
3 1. Goals
4    - nested events
6 2. ESF changes
8   Example ESF
10     MetaEventInfo
11     {
12       required   ip_addr          SenderIP;
13       required   uint16           SenderPort
14       required   int64            ReceiptTime;
15       required   string(10)       version = "25.1.6";   # esf version number
16       optional   uint16           SiteID;
17       optional   string(10)       st;
18     }
20     SubEvent
21     {
22       required   string(10)       key;
23       required   string(100)      value;
24     }
26     Event
27     {
28       required   SubEvent         aSubEvent;
29       required   SubEvent[10]     aSubEventArray;
30     }
32 3. Event Serialization Format
33     1. Type Encoding
34       type      DEC HEX  byte value (bin)  array value (bin)
35       --------- --- ---- ----------------  ------------------
36       EVENT      14 0x0E   00001110          10001110
38     EVENT
39       Variable number of bytes
40       TBD???
42 4. API Changes
43     /* set a sub event */
44     int
45     lwes_event_set_EVENT
46       (struct lwes_event *event,
47        LWES_CONST_SHORT_STRING name,
48        struct lwes_event *event);
50     /* get a sub event */
51     int
52     lwes_event_get_EVENT
53       (struct lwes_event *event,
54        LWES_CONST_SHORT_STRING name,
55        struct lwes_event **event);