Introduction
VIDIZMO caters to its customers who are part of VIDIZMO's SaaS by providing Consumption-based billing, also known as Usage-based billing. Organizations are charged per their usage providing transparency and better monitoring of resources to both the customers and the company. Furthermore, the detailed consumption reports can be utilized by Administration to monitor utilization, maintain budgets and overages of the VIDIZMO resources being consumed.
VIDIZMO sets up your billing account at the time of sign up, using which we manage your invoices. A billing account in VIDIZMO aggregates the billing of all portals created in it and the reports generated for it can be seen in the Portal Settings<Account<Billing. For further details regarding reports, see Consumption Reports for SaaS Deployment Overview.
Concept
VIDIZMO consumption model covers a wide range of dimensions. Bandwidth, Users, Storage, Transcoding, AI Processing, Processing - these are the different aspects of billing parameters by which VIDIZMO segregates your consumption of resources.
In VIDIZMO, the whole procedure consists of metering and reporting extensively with the implementation of multiple categories, metrics, sources and services. This is executed by services which monitor the resources being consumed in an Account.
Note: By default, consumption reports are generated once per day for each Account. This interval can be configured from the Application Configuration keys. To read more, see How to Update Scheduled Tasks using Application Configuration Keys in VIDIZMO.
Once, all of this is done, VIDIZMO's Billing API is used to display the consumption reports in the Portal Settings<Account<Consumption Reports.
Telemetry
VIDIZMO's telemetry is the automatic recording and transmission of usage incurred in an Account to the database so that reports can be generated for the consumption. This process includes the services used to meter usage, categories the data is divided into, the associated metrics within each category and the corresponding source of each record.
Service
The front-end service is utilized to record the bandwidth consumed while loading the static resources of the application, playing back and downloading the content. This metering takes place every minute for a browser whereas for a browser in private/incognito mode, the interval is 3 seconds. Similarly, another back-end service is used to meter the consumption of AI Processing and Transcoding activities in an Account. All the API calls made to get and set data from the server in VIDIZMO application is also recorded by this service.
Telemetry Category
The data that is being reported by the services above is categorized into the following categories:
i. Transcoding: When a content goes through the procedure of being encoded into multiple formats so that smooth playback across multiple devices is compatible. All the data recorded for this activity is reported under the Transcoding category.
ii. AI Processing: The data is accumulated into this category when a content goes through the following VIDIZMO workflow activities:
- Vidizmo.Workflows.VIDIZMOOCRProcess
- Vidizmo.Workflows.VIDIZMOContentRedaction
- Vidizmo.Workflows.AMSFaceDetection
- Vidizmo.Workflows.AMSRedaction
- Vidizmo.Workflows.VideoIndexer
- Vidizmo.Workflows.AMSTranscription
- Vidizmo.Workflows.AMSOCR
- Vidizmo.Workflows.VIDIZMOTranscription
iii. Processing: For all the consumption incurred by VIDIZMO workflow activities which are not part of AI Processing, the data is accumulated into this category. For more details about VIDIZMO workflows activities, see Understanding VIDIZMO Workflows and Activities. All the API calls incurred are also collected under this category.
iv. Bandwidth: When a content is uploaded, loaded for playback, downloaded and all the static resources loaded are served from server, the data is metered into this category.
Note: Content being served from cache is not reported under this category.
Telemetry Metric
The possible counters for the above categories could be of the following, depending on the category being metered.
Metric Counter Name | Metric Measure Unit | Description |
Ingress | Bytes | the size of an input |
Egress | Bytes | the size of an output |
Computation | Milliseconds | the execution time taken by a process |
InputContentLength | Milliseconds | the duration of the input content |
OutputContentLength | Milliseconds | the sum of duration of the output content |
Telemetry Source
There can be one of the three sources for all the records that are being accumulated in the database.
Source | Description |
---|---|
API | These are the records aggregated by an API call |
User | The records aggregated by some action of User that initiates a front-end process |
Service | These records are aggregated by some action of a User that initiates a back-end process |
Tenant Billing Table
A scheduled service accumulates data from Telemetry and aggregates it into the Tenant Billing table in the database once per day. All the final data including total count of Portals, Storage, Users, Active Users, Contributors, Viewers, Administrators, Managers and Moderators and all other Telemetry data are present in this table in database.
Reporting
An API is used to report data from the tenant billing table to the Consumption Reports so that they are displayed accordingly in the Billing section of an Account. Multiple filters can be applied to get the reports for specific time. Moreover, the following features are available for the reports generated:
- Tabular View
- Graphical View
- Downloadable CSV file
To read more about the consumption reports and their associated features, see Consumption Reports for SaaS Deployment Overview
Use-Cases
A tenant can view the consumption for multiple activities performed within an Account.