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 request
export 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'});
};
I'm using NodeJs Runtime Environment 18.0
@Joshi hello
You literally put the answer to your problem in the title
my head is smoking and confused...
it seem like i need a higher nodejs runtime
Please what are your thoughts on this
Thank you very much Steve,
Please how do I add the --experimental-global-webcrypto flag when using Node.js
<@462046107556511744>
or is there way i can upgrade my nodejs 18 to 19 in Appwrite?
Hello <@462046107556511744>
any support please/
<@462046107556511744> <@777466243535994910> please is there hope on resloving this ?
Add this at the top of your function:
import { webcrypto } from 'node:crypto';
globalThis.crypto ??= webcrypto;
<@1144658630591909998>
Recommended threads
- Custom domain not pointing to the most r...
My custom domain is pointing to an old deployment version, but it shows it's active on the appwrite console.
- Server Error when importing to tables
Same .csv file worked yesterday, Please fix it asap
- Backup does not restore
I need to urgently restore a backup but nothing is happening when trying to restore!