update multiplex setup instructions (#98)
authorHakim El Hattab <hakim.elhattab@gmail.com>
Sat, 9 Mar 2013 00:16:29 +0000 (19:16 -0500)
committerHakim El Hattab <hakim.elhattab@gmail.com>
Sat, 9 Mar 2013 00:16:29 +0000 (19:16 -0500)
README.md
index.html

index f9acc25d5e314b66667a1cb02c27e5f0ddacc1a2..8b363ab0ddc2279498e7c6d53e74f3d1e7ae1cd8 100644 (file)
--- a/README.md
+++ b/README.md
@@ -344,17 +344,6 @@ Reveal.toggleOverview();
 ### Fullscreen mode
 Just press »F« on your keyboard to show your presentation in fullscreen mode. Press the »ESC« key to exit fullscreen mode.
 
-## Multiplexing
-
-The multiplex plugin allows your audience to view the slides on their own phone, tablet or laptop. As the master navigates the slides, all clients will update in real time. See a demo at [http://revealjs.jit.su/](http://revealjs.jit.su)
-
-Configuration is via the multiplex object in index.html. To generate unique secret and token values, visit [revealjs.jit.su/token](revealjs.jit.su/token)
-
-multiplex.secret should only be configured on those pages you wish to be able to control slide navigatoin for all clients. Multi-master configurations work, but if you don't wish your audience to be able to control your slides, set the secret to null. In this master/slave setup, you should create a publicly accessible page with secret set to null, and a protected page containing your secret.
-
-You are very welcome to use the server running at reveal.jit.su, however availability and stability are not guaranteed. For anything mission critical I recommend you run your own server. It is simple to deploy to nodejitsu or run on your own environment.
-
-### Known Issues
 
 ## PDF Export
 
@@ -392,8 +381,16 @@ By default notes are written using standard HTML, see below, but you can add a `
 In some cases it can be desirable to run notes on a separate device from the one you're presenting on. The Node.js-based notes plugin lets you do this using the same note definitions as its client side counterpart. Include the requried scripts by adding the following dependencies:
 
 ```javascript
-{ src: '/socket.io/socket.io.js', async: true },
-{ src: 'plugin/notes-server/client.js', async: true }
+Reveal.initialize({
+
+       ...
+
+       dependencies: [
+               { src: 'socket.io/socket.io.js', async: true },
+               { src: 'plugin/notes-server/client.js', async: true }
+       ]
+
+});
 ```
 
 Then:
@@ -403,6 +400,38 @@ Then:
 3. Run ```node plugin/notes-server```
 
 
+## Multiplexing
+
+The multiplex plugin allows your audience to view the slides on their own phone, tablet or laptop. As the master navigates the slides, all clients will update in real time. See a demo at [http://revealjs.jit.su/](http://revealjs.jit.su).
+
+Configuration is via the multiplex object in ```Reveal.initialize```. To generate unique secret and token values, visit [revealjs.jit.su/token](revealjs.jit.su/token). Below is an example configuration with the multiplex plugin enabled:
+
+```
+Reveal.initialize({
+
+       ...
+
+       // Generate a unique id and secret at revealjs.jit.su/token
+       multiplex: {
+               id: '',
+               secret: '',
+               url: 'revealjs.jit.su:80'
+       },
+
+       dependencies: [
+               { src: 'socket.io/socket.io.js', async: true, condition: function() { return !!document.body.classList; } },
+               { src: 'plugin/multiplex/client.js', async: true, condition: function() { return !!document.body.classList; } },
+               { src: 'plugin/multiplex/master.js', async: true, condition: function() { return !!document.body.classList; } },
+       ]
+
+});
+```
+
+```multiplex.secret``` should only be configured on those pages you wish to be able to control slide navigatoin for all clients. Multi-master configurations work, but if you don't wish your audience to be able to control your slides, set the secret to null. In this master/slave setup, you should create a publicly accessible page with secret set to null, and a protected page containing your secret.
+
+You are very welcome to use the server running at reveal.jit.su, however availability and stability are not guaranteed. For anything mission critical I recommend you run your own server. It is simple to deploy to nodejitsu or run on your own environment.
+
+
 ## Theming
 
 The framework comes with a few different themes included:
index 5aff2c10be231171ef75c2c95caae124202b56de..bc2f3601322f9eed24b740a00ddcae986a3ad0f1 100644 (file)
@@ -359,13 +359,6 @@ function linkify( selector ) {
                                theme: Reveal.getQueryHash().theme, // available themes are in /css/theme
                                transition: Reveal.getQueryHash().transition || 'default', // default/cube/page/concave/zoom/linear/fade/none
 
-                               // Generate a unique id and secret at http://revealjs.jit.su/token
-                               multiplex: {
-                                       id: '',
-                                       secret: '',
-                                       url: 'revealjs.jit.su:80'
-                               },
-
                                // Optional libraries used to extend on reveal.js
                                dependencies: [
                                        { src: 'lib/js/classList.js', condition: function() { return !document.body.classList; } },
@@ -373,11 +366,8 @@ function linkify( selector ) {
                                        { src: 'plugin/markdown/markdown.js', condition: function() { return !!document.querySelector( '[data-markdown]' ); } },
                                        { src: 'plugin/highlight/highlight.js', async: true, callback: function() { hljs.initHighlightingOnLoad(); } },
                                        { src: 'plugin/zoom-js/zoom.js', async: true, condition: function() { return !!document.body.classList; } },
-                                       // { src: 'plugin/remotes/remotes.js', async: true, condition: function() { return !!document.body.classList; } },
-                                       // { src: 'socket.io/socket.io.js', async: true, condition: function() { return !!document.body.classList; } },
-                                       // { src: 'plugin/multiplex/client.js', async: true, condition: function() { return !!document.body.classList; } },
-                                       // { src: 'plugin/multiplex/master.js', async: true, condition: function() { return !!document.body.classList; } },
                                        { src: 'plugin/notes/notes.js', async: true, condition: function() { return !!document.body.classList; } }
+                                       // { src: 'plugin/remotes/remotes.js', async: true, condition: function() { return !!document.body.classList; } }
                                ]
                        });