There have been some updates to those commands since that was published. In particular:
rr_upload takes an optional "crc" parameter, which is the CRC-32 of the file in hex format
rr_filelist takes an optional "first" parameter, which is the number of the first file required. It also returns a value "next" which is the file number of the first file not returned, or 0 if info for the last file has been returned. So you can make multiple rr_filelist calls, with "first" set to 0 for the first call and subsequently set to the returned "next" value, until "next is 0.
If no requests are received for a period of 8 seconds, thew session will be terminated automatically and a new rr_connect request is needed to start a new one.