bump product version to 4.1.6.2
[LibreOffice.git] / sd / README_REMOTE
blob56561c5d006d4db73c664c36d0b9fc8d51d028bf
1 LibreOffice Impress Remote Protocol Specification
3 Communication is over a UTF-8 encoded character stream.
4 (Using RTL_TEXTENCODING_UTF8 in the LibreOffice portion.)
6 TCP
7 ---
9 More TCP-specific details on setup and initial handshake to be
10 written, but the actual message protocol is the same as for Bluetooth.
13 Bluetooth
14 ---------
16 Bluetooth communication is over RFCOMM.
18 For discovery use the "standard UUID for the Serial Port Profile"
19 I.e. the 16-bit SerialPort UUID 0x1101,
20 or if necessary inserted into the Bluetooth BASE_UUID:
21 00001101-0000-1000-8000-00805F9B34FB
22 See https://www.bluetooth.org/Technical/AssignedNumbers/service_discovery.htm
24 Message Format
25 --------------
27 A message consists of one or more lines. The first line is the message description,
28 further lines can add any necessary data. An empty line concludes the message.
30 I.e. "MESSAGE\n\n" or "MESSAGE\nDATA\nDATA2...\n\n"
32 You must keep reading a message until an empty line (i.e. double
33 new-line) is reached to allow for future protocol extension.
35 Intialisation
36 -------------
38 Once connected the server sends "LO_SERVER_SERVER_PAIRED".
39 (I.e. "LO_SERVER_SERVER_PAIRED\n\n" is sent over the stream.)
41 Subsequently the server will send either slideshow_started if a slideshow is running,
42 or slideshow_finished if no slideshow is running. (See below for details of.)
44 The current server implementation then proceeds to send all slide notes and previews
45 to the client. (This should be changed to prevent memory issues, and a preview
46 request mechanism implemented.)
49 Commands (Client to Server)
50 ---------------------------
52 The client should not assume that the state of the server has changed when a
53 command has been sent. All changes will be signalled back to the client.
54 (This is to allow for cases such as multiple clients requesting different changes, etc.)
56 Any lines in [square brackets] are optional, and should be omitted if not needed.
58 * transition_next
59 * transition_previous
61 * goto_slide
62   slide_number
64 * presentation_start
65 * presentation_stop
67 * presentation_resume       // Resumes after a presentation_blank_screen.
68 * presentation_blank_screen
69   [Colour String]           // Colour the screen will show (default: black). Not
70                             // implemented, and format hasn't yet been defined.
73 Status/Data (Server to Client)
74 ------------------------------
76 * slideshow_finished    // (Also transmitted if no slideshow running when started.)
78 * slideshow_started     // (Also transmitted if a slideshow is running on startup.)
79   numberOfSlides
80   currentSlideNumber
82 * slide_notes
83   slideNumber
84   [Notes]               // The notes are an html document, and may also include \n newlines,
85                         // i.e. the client should keep reading until a blank line is reached.
87 * slide_updated         // Slide on server has changed
88   currentSlideNumber
90 * slide_preview         // Supplies a preview image for a slide.
91   slideNumber
92   image                 // A Base 64 Encoded png image.