@firefliesai/n8n-nodes-fireflies
Version:
An n8n integration for the Fireflies.ai API that enables workflow automation with meeting transcripts, analytics, summaries, and other conversation data from Fireflies.ai's AI meeting assistant.
65 lines • 2.45 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.uploadAudio = uploadAudio;
const n8n_workflow_1 = require("n8n-workflow");
const transport_1 = require("../../transport");
const queries_1 = require("../../helpers/queries");
async function uploadAudio(ef, index) {
var _a, _b;
try {
const url = ef.getNodeParameter('url', index);
const title = ef.getNodeParameter('title', index);
const additionalFields = ef.getNodeParameter('additionalFields', index, {});
const input = {
url,
title,
};
if ((_b = (_a = additionalFields.attendees) === null || _a === void 0 ? void 0 : _a.attendeeValues) === null || _b === void 0 ? void 0 : _b.length) {
input.attendees = additionalFields.attendees.attendeeValues.map((attendee) => ({
display_name: attendee.displayName,
email: attendee.email,
phone_number: attendee.phoneNumber,
}));
}
if (additionalFields.client_reference_id) {
input.client_reference_id = additionalFields.client_reference_id;
}
if (additionalFields.custom_language) {
input.custom_language = additionalFields.custom_language;
}
if (additionalFields.save_video !== undefined) {
input.save_video = additionalFields.save_video;
}
if (additionalFields.webhook) {
input.webhook = additionalFields.webhook;
}
const response = await transport_1.callGraphQLApi.call(ef, queries_1.uploadAudioMutation, { input });
return {
json: {
success: true,
data: response.uploadAudio,
},
};
}
catch (error) {
const errorData = {
success: false,
error: {
message: error.message,
details: 'Error uploading audio',
code: error.code || 'UNKNOWN_ERROR',
timestamp: new Date().toISOString(),
},
};
if (!ef.continueOnFail()) {
throw new n8n_workflow_1.NodeOperationError(ef.getNode(), error.message, {
message: errorData.error.message,
description: errorData.error.details,
});
}
return {
json: errorData,
};
}
}
//# sourceMappingURL=uploadAudio.js.map