---
# System prepended metadata

title: Tech Stack and Integration
tags: [whilter]

---

# Whilter's Video Platform Integration with the Customer's IT System

###### tags: `whilter`

> Whilter's platform can be deployed on any public cloud :cloud: (AWS, Azure or GCP)  or on-premise data centre :computer:.
> We also offer this proposition on the Managed Services model.

## Platform Technology Stack

1. Kubernetes
2. Kafka
3. Mongo DB
4. Redis
5. Java/Springboot
6. Python/Flask
7. PySpark

Whilter's Video Platform is completely built on open-source technologies. There is no additional software cost. However in certain cases (large deployments), we do recommend Managed Services like AWS MKS, Confluent Kafka, Document DB or Mongo Atlas.

From the hardware side, there are a few deep learning use cases where GPU's will be required.

> **Important Note:** For some Indian languages, there is some dependency upon third party services of Google e.g. for text to speech.

## Deployment Approaches

1. **AWS Hosted:** We provide fully managed Whilter's Video API Services on AWS and work best for time-bound or adhoc use cases in terms of cost. _Examples :_A limited-time new promotion for a product or a service, Video support for an event that spans a few days etc. 
2. **Public cloud:**  The proposed platform can be deployed on AWS, Azure or GCP and it is recommended that the managed Kafka, MongoDB and Redis are offered by the cloud provider. This approach is preferred if the customer requires complete control on its data and monthly communications/videos to be set to its users.
3. **On Premise:** Since Whilter's Video API Platform runs on Kubernetes, it can be deployed on any data centre. In this case, all the infrastructure will be  provided by the Customer and managed jointly by Whilter's & Customer's team.

## Customer Side Integration


![whilter-integration-1](https://hackmd.io/_uploads/BJmXoPfSp.png)


There are three integration touchpoints
1. **Triggers via Input Connector:** This is where video generation will be kicked off. These triggers will have all the required data for personalised video generation. We have prebuilt connectors that support data ingress via API, Kafka, Csv Files, Email or WhatsApp proxy (please refer to the flow diagram for details). 
2. **Data Integration (Optional):** In certain cases, the information needed to generate videos are not available in trigger event and Whilter can integrate with any customer's application via API or messaging infrastructure.
3. **Output Connector:** Once the video is generated, it can be pushed via any or all the channels i.e. Whatsapp, Email, SMS or to the customer CDN for in app delivery.


### Input Connectors
* **API Integration:** Whilter's Video exposes the rest API via the API gateway. Any authenticated external service can call this API to create videos and check their status. On the completion of video generation, Whilter can post results back to client-given api or the client can keep on polling every 15 seconds until the video is generated.
* **Kafka Integration:** Whilter can listen to Kafka broker and initiate the video generation process on every new message.
* **CSV File:** In case of bulk video generation, the user can upload a CSV file in a bucket and Whilter's Video platform can pick up the file and generate one video for each row. On completion, it will add the result back as CSV in the same bucket.
* **Email Ingestion:** Whilter supports email ingestion based on templates. The Email process reads the email and looks for certain keywords to generate videos.
* **Whatsapp Proxy:** Whilter's platform can act as a proxy to whatsapp business API to make integration seamless for our customers and partners. The customer just needs to call Whilter's API the way they call whatsapp (WABA) API, After processing and video generation, Whilter will call WABA on the customer's behalf with a video embedded in the message template.

### Data Integration
Whilter supports any kind of message enrichment via Rest API, gRPC or Kafka. Example of third-party integration includes - Airline system like Navitaire, Loyalty point applications, Recommendation Engine, E-commerce applications for abandoned cart etc.

### Output Connectors
Whilter supports out-of-box connectors to deliver video via - WhatsApp, Email, SMS, CDN or via API calls.