DizmoLive

The standard dizmoViewer software includes sharing one or more dizmos, through a Pad dizmo, with other devices and/or users on a local network. Multiple sessions can be run in parallel, allowing any combination of Pad, dizmos and device/users connections. Most dizmos can be shared through a Pad.

Only persisted data of a dizmo is replicated over dizmoLive. This means, the state or any other information of a dizmo is only shared across dizmoLive, when it was stored in the dizmo data tree.

Assume your dizmo has an inputfield where users can enter data. By default, the content of the inputfield will not be shared across dizmoLive, since only persistent data in the dizmo data tree is replicated over dizmoLive.

There are three ways to accept incoming dizmoLive connection requests:

  1. Ask user: This is the default way to accept incoming dizmoLive connection requests with a Popup.
  2. Silent Live: DizmoViewer will accept any incoming dizmoLive connection immediately.
  3. Do Not Disturb: This will block all incoming Live requests (no Popup will appear).

You can set these properties with:

    viewer.setAttribute("settings/linkacceptmode","askuser");
    viewer.setAttribute("settings/linkacceptmode","silentlive");
    viewer.setAttribute("settings/linkacceptmode","donotdisturb");

you can also get the current mode with:

    var status=viewer.getAttribute("settings/linkacceptmode");

For a list of all dizmoViewer Instances, that a dizmoLive connection can be opened to, use the new viewer.getRemoteHosts function:

    var remotehosts=viewer.getRemoteHosts();

This will return an array of identifiers and hostnames/ip-adresses. Use one of those identifiers to get more details about that remotehost:

    var remotehost=viewer.getRemoteHostById(identifier);

For each dizmo, you can get more information about an active dizmoLive connection using:

    var connectioninfo=dizmo.getRemoteHost();

If there is an active connection, it returns the time when the connection was started an d the username.

You can also get more information about an active connection for each dizmo with:

    dizmo.getAttribute("connection");

This will return the direction (incoming or outgoing) and the identifier of the remote host.

To react to live connections that are added or removed, use these two callbacks:

    var subscrId=dizmo.onRemoteHostConnected(callback);
    var subscrId=dizmo.onRemoteHostDisconnectd(callback);

Unsubscribe from both subscriptions with

    dizmo.unsubscribeRemoteHost(subscrId);