Menu

Objects In weTalk

Callum McLean

In weTalk, we see everything as a series of objects that can be connected to each other.

The network is contains a series of high-level objects, simply called devices. These could be audio interfaces, SIP/VoIP phones or any other audio communications device that weTalk supports.

In order to connect one device to another, weTalk creates a stream object between the devices. This is exactly what it sounds like - a flow of data (audio and, if applicable, control). This is how weTalk transports audio between devices.

In order to define which devices are connected to each other, you can create a rule. A rule is a logic-based way of connecting devices (or groups of devices) to each other without hardwiring them in. In order to do the actual connecting, weTalk evaluates each rule to dynamically create streams between devices, rather than having to create each stream manually. This also gives the user a greater flexibility in terms of changing where devices physically are in the system.

For example, let us say that we have three audio devices in a weTalk network, all connected to one weTalk matrix, simulating a section in a small television studio. Each of these devices is a simple, 1-in, 1-out audio interface, named 'Director', 'Camera 1' and 'Camera 2'. We can create a group called 'Cameras' that contains the 'Camera 1' and 'Camera 2' interfaces. Now, we can define a rule that states that the interface named 'Director' shall always be connected to (that is, can always talk to) the children of the group 'Cameras'.

At this point, weTalk evaluates the rule and creates the connections:

  1. Director → Camera 1
  2. Director → Camera 2

This means that it does not matter where the physical devices exist within the system, they will always be connected using rule-based logic. This allows the system designer to think about not designing a system around devices, but around people. If, for example, the system were to grow and a series of keypanels were installed into the network, the Director could log into any of them and still retain the same connections.


MongoDB Logo MongoDB