Rank 4: Virtual Machine
here is my code
import { default as axios } from 'axios';import fetch from 'node-fetch';import { WebhookReceiver } from 'livekit-server-sdk';
// This is your Appwrite function// It's executed each time we get a requestexport default async ({ req, res, log, error }) => { const client = new Client(); const functions = new Functions(client); const database = new Databases(client); client.setEndpoint('https://cloud.appwrite.io/v1') .setProject(process.env.APPWRITE_FUNCTION_PROJECT_ID) .setKey(process.env.APPWRITE_API_KEY);
const ENDPOINT = process.env.MY_APPWRITE_ENDPOINT; const PROJECT_ID = process.env.APPWRITE_PROJECT_ID; const API_KEY = process.env.APPWRITE_API_KEY; const DATABASE_ID = process.env.DATABASE_ID; const LIVEKIT_STREAMING_COLLECTION = process.env.LIVEKIT_STREAMING_COLLECTION; const LIVE_KIT_API = process.env.LIVE_KIT_API; const LIVE_KIT_SEC_KEY = process.env.LIVE_KIT_SEC_KEY; const LIVE_KIT_WEBSOCKET = process.env.LIVE_KIT_WEBSOCKET;
const receiver = new WebhookReceiver(LIVE_KIT_API, LIVE_KIT_SEC_KEY);
if (req.method === 'POST') { const jsondData = JSON.parse(req.bodyRaw); const VideoLibraryId = jsondData.VideoLibraryId; const VideoGuid = jsondData.VideoGuid; const Status = jsondData.Status;
// Event is a WebhookEvent object var headers = req.headers; log(`headers ${headers}`); var authorization = headers['authorization']; // const authorization = req.headers["Authorization"]; const event = await receiver.receive(req.body, authorization); log(`Events ${event}`);
}
return res.send({method: 'method is POST'});};