Question
How to search for camera recordings or for camera recordings over VRM with RCPP over CGI?
đOverview:
Answer
Here are the example Rcpp commands send via the Http. There are short explanations. For more details check How to do search and replay on Bosch VIP devices and Video Recording Manager (VRM)?
Get the list of files/slices of a replay session
CONF_HD_PARTITION_FILE_INFO (0x0901)
0x0901
Request
Payload Structure
Start Time: start time in seconds since Jan. 1st 2000, midnight. - 0x00000000 (means 01.01.2000)
Stop Time: stop time in seconds since Jan. 1st 2000, midnight. - 0xFFFFFFFF (means 07.02.2136)
maxEntries: Max Number of entries
Res: reserved
Payload Structure (sequence of)
Example Requests:
Request to a camera
a. Open VLC and start RTSP session - rtsp://172.16.50.10/?rec=1&rnd=777
b. In a browser request the sessionId â http:// 172.16.50.10/rcp.xml?command=0x0ae8&type=T_DWORD&direction=READ&protocol=TCP&num=777
Or â http://172.16.50.10/rcp.xml?command=0x0ae8&type=T_DWORD&direction=READ&protocol=TCP
Seems the camera does not need the rtsp session.
0x0ae8 2792 T_DWORD READ 0 0x000000002TCP 0x4c880039 1283981369
This XML file does not appear to have any style information associated with it. The document tree is shown below.
<rcp>
<command>
<hex>0x0ae8</hex>
<dec> 2792</dec>
...
</command>
<type>T_DWORD</type>
<direction>READ</direction>
<num>0</num>
<idstring/>
<payload/>
<sessionid>0x00000000</sessionid>
<auth>2</auth>
<protocol>TCP</protocol>
<result>
<hex>0x4c880039</hex> this is the sessionId hex
<dec> 1283981369</dec> this is the sessionId decimal
...
</result>
...
</rcp>
c. http://<camera_ip>/rcp.xml?command=0x0901&type=P_OCTET&direction=READ&protocol=TCP&sessionid=0x4c880039&payload=0x00000000FFFFFFFF0000000400000000
payload is 0x00000000FFFFFFFF0000000400000000
â Start: 0 (year 2000)
â End: max (all recordings)
â maxEntries: 4
<rcp>
<command>
<hex>0x0901</hex>
<dec> 2305</dec>
...
</command>
<type>P_OCTET</type>
<direction>READ</direction>
<num>0</num>
<idstring/>
<payload/>
<sessionid>0x4c880039</sessionid>
<auth>2</auth>
<protocol>TCP</protocol>
<result>
<len>64</len>
<str>31 4c 06 b2 31 4c 0d 19 02 00 00 40 00 00 00 01 31 4c 1e 27 31 4c 26 b0 02 00 00 40 00 00 00 02 31 4c 28 d2 31 4f f4 9a 02 00 00 40 00 00 00 03 31 4f f4 c5 31 4f f5 f9 02 00 00 40 00 00 00 04 </str>
...
</result>
...
</rcp>
How to read the result:
Entry 1
Start: 0x314C06B2
End: 0x314C0D19
-
Start â 2025-03-27 06:11:30
-
End â 2025-03-27 06:38:49
Entry 2
Start: 0x314C1E27
End: 0x314C26B0
-
Start â 2025-03-27 07:41:27
-
End â 2025-03-27 08:16:16
Entry 3
Start: 0x314C28D2
End: 0x314FF49A
-
Start â 2025-03-27 08:27:30
-
End â 2025-03-27 23:16:10
Entry 4
Start: 0x314FF4C5
End: 0x314FF5F9
-
Start â 2025-03-27 23:16:53
-
End â 2025-03-27 23:21:29
Request to VRM
It is done only with 0x0901 and num=<hereTheTrackId> of the camera in interest
"num=<hereTheTrackId> instead, e.g. camera that has trackID0169 use the following:
https://172.16.50.102/rcp.xml?command=0x0901&type=P_OCTET&direction=READ&num=169&payload=0x00000000FFFFFFFF0000000400000000
payload is 0x00000000FFFFFFFF0000000400000000
â Start: 0 (year 2000)
â End: max (all recordings)
â maxEntries: 4
Example result:
<result>
<str>31 64 2b d1 31 64 2d f1 84 04 63 40 05 d3 00 00 31 64 30 11 31 64 41 11 84 04 63 40 05 d4 00 00 31 64 43 31 31 68 34 9f 84 04 63 40 05 dd 00 00 31 68 38 e0 31 6a 01 e1 84 04 63 40 01 f1 00 00 </str>
</result>
</rcp>
Decoded Details
-
Time Format: The times are in seconds since January 1st, 2000.
Example (Slice 1):
Start: 0x31642BD1 â July 5, 2026, 11:47:29 AM.
End: 0x31642DF1 â July 5, 2026, 11:56:33 AM.
Duration: Approximately 9 minutes and 4 seconds.