Basic Data Model [VCon IG]
This section of the Integration Guide is focused on explaining the data model, its elements and their relationship to each other in the context of VidiControl.
Recommended Reading
Readers are expected to be familiar with VidiCore’s own data model. This is explained in detail under the following sections of VidiCore’s documentation: VidiCore API Data Model.
Data Object Model
The VidiControl back-end is a distributed system consisting of several modules for specific tasks. These modules are responsible for planning and executing bookings, communicating with the Vidispine suite and interacting with third-party systems.
Jobs
This section describes the objects related to a job. From a user’s perspective, a job is represented as a BookingDefinition. Jobs can be recording jobs, router switch jobs, etc.
Resources
Resources are responsible for performing a command. Some examples of resources are for instance a recorder or a router. Resources are booked to perform a job. To perform a recording job, several (optional) resource devices have to be controlled: A source device to deliver a signal, a router device to switch, a recording device to record.
The system manages atomic resources as devices.
![](../../__attachments/2482340832/DB_Objects-Devices.png?inst-v=c263b046-0db3-4e5e-9b28-d475c958150e)
Services
VidiControl offers service APIs to request data to recordings and devices. New recordings can be scheduled with the BookingService, resources can be monitored with the ResourceService.
A SWAGGER page contains the mentioned services. For more details, please see API Resources via Swagger [VCon IG] .
Booking Service
The Booking Service is used to inspect, monitor, modify, create and delete BookingDefinitions (and by this the contained Bookings), Chunks and so on.
Resource Service
With the Resource Service, resources like pools, devices, router ports, routings and capabilities can be requested.
Notification Queue
There is an ActiveMQ notification topic where you can connect as a consumer.