Add (minor) information on error
[contrib/cloudeebus.git] / doc / sample / cloudeebus.html
index 1200b71..b03391c 100644 (file)
@@ -4,73 +4,62 @@
         <script src="../../lib/autobahn.min.js"></script>
         <script src="../../cloudeebus/cloudeebus.js"></script>
         <script type="text/javascript">
-               var manifest = {
-                       name: "cloudeebus",
-                       version: "v0.1",
-                       key: "secret",
-                       permissions: [
-                               "com.intel.media-service-upnp",
-                               "com.intel.renderer-service-upnp",
-                               "org.freedesktop.DBus",
-                               "org.freedesktop.DisplayManager",
-                               "org.freedesktop.FileManager1",
-                               "org.freedesktop.ModemManager",
-                               "org.freedesktop.NetworkManager",
-                               "org.freedesktop.Notifications",
-                               "org.freedesktop.Tracker1",
-                               "org.gnome.Nautilus",
-                               "org.gnome.Rygel1",
-                               "org.gnome.ScreenSaver",
-                               "org.neard",
-                               "org.ofono"
-                       ]
-               };
+               function evalScript() {
+                       eval(
+                               "var lambda = function() {" +
+                                       document.getElementById('script').value +
+                               "};" + 
+                               "lambda();"
+                       );
+               }
         </script>
     </head>
    <body>
         <center><h1>cloudeebus</h1></center>
         <br>
-               <textarea cols="80" rows=24 id="script">
+               <textarea style="width:80%" rows="32" id="script">
+var manifest = {
+       name: "cloudeebus",
+       key: "secret",
+       permissions: [
+               "org.freedesktop.DBus",
+               "org.freedesktop.Notifications"
+       ]
+};
+
 cloudeebus.log = function(msg) {
   document.getElementById("log").innerHTML += msg + "\n";
 }
 
-var proxy, interval;
-
-function connectSuccess() {
-  var bus = cloudeebus.SessionBus();
-  handler = bus.getObject("org.gnome.ScreenSaver", "/org/gnome/ScreenSaver");
-  handler.connectToSignal("org.gnome.ScreenSaver", "ActiveChanged", successCB, errorCB);
-  proxy = bus.getObject("org.gnome.ScreenSaver", "/", lock, errorCB);
-}
-
-function unLock() {
-  proxy.SetActive(false, successCB, errorCB);
-  clearInterval(interval);
+function errorCB(error) {
+  cloudeebus.log("error: " + error + "\n");
 }
 
-function lock() {
-  proxy.SetActive(true, lockOk, errorCB);
+function logCB(result) {
+  cloudeebus.log(JSON.stringify(result));
 }
 
-function lockOk(res) {
-  interval = setInterval(unLock,3000);
+function gotNotifProxy(proxy) {
+  for (var ifproxy in proxy.interfaceProxies)
+    cloudeebus.log(ifproxy);
+  proxy.getInterface("org.freedesktop.Notifications").Notify("Cloudeebus",0,"","Cloudeebus says:", "Hello, world !", [], {}, 0);
 }
 
-function successCB(res) {
-  cloudeebus.log("got result: " + res + "\n");
+function gotBusProxy(proxy) {
+  proxy.ListNames().then(logCB, errorCB);
 }
 
-function errorCB(error) {
-  cloudeebus.log("error: " + error + "\n");
+function connectSuccess() {
+  cloudeebus.SessionBus().getObject("org.freedesktop.DBus", "/org/freedesktop/DBus", gotBusProxy, errorCB);
+  cloudeebus.SessionBus().getObject("org.freedesktop.Notifications", "/org/freedesktop/Notifications", gotNotifProxy, errorCB);
 }
 
 cloudeebus.connect("ws://localhost:9000", manifest, connectSuccess, errorCB);
 </textarea>
                <br>
-               <input type="button" value="run script" onclick="eval(document.getElementById('script').value)"/>
+               <input type="button" value="run script" onclick="evalScript()"/>
                <input type="button" value="clear log" onclick="document.getElementById('log').innerHTML='';"/>
                <br>
-               <pre id="log" style="height: 20em; overflow-y: scroll; background-color: #faa;"></pre>
+               <pre id="log" style="height: 20em; overflow-x: auto; overflow-y: auto; background-color: #faa;"></pre>
    </body>
 </html>