with Happy Scribe and Odoo?
The Happy Scribe API provides tools for converting speech to text and vice versa, enabling developers to automate the transcription and subtitling of audio and video files. With the Happy Scribe integration on Pipedream, you can create workflows that trigger on various events, process content, and connect to other apps. Automate transcription jobs, sync transcripts to databases, notify teams when transcriptions are ready, or even analyze text for insights.
import { axios } from "@pipedream/platform"
export default defineComponent({
props: {
happy_scribe: {
type: "app",
app: "happy_scribe",
}
},
async run({steps, $}) {
return await axios($, {
url: `https://www.happyscribe.com/api/v1/transcriptions`,
headers: {
Authorization: `Bearer ${this.happy_scribe.$auth.api_key}`,
},
})
},
})
import xmlrpc from 'xmlrpc';
export default defineComponent({
props: {
odoo: {
type: "app",
app: "odoo",
}
},
async run({ steps, $ }) {
const url = this.odoo.$auth.server_url;
const db = this.odoo.$auth.db;
const username = this.odoo.$auth.username;
const password = this.odoo.$auth.password;
// Create clients for common and object endpoints
const common = xmlrpc.createSecureClient(`${url}/xmlrpc/2/common`);
const models = xmlrpc.createSecureClient(`${url}/xmlrpc/2/object`);
// Using async/await with promises
async function getFields() {
try {
// Authenticate and get uid
const uid = await new Promise((resolve, reject) => {
common.methodCall('authenticate', [db, username, password, {}], (error, value) => {
if (error) reject(error);
resolve(value);
});
});
// Get fields
const results = await new Promise((resolve, reject) => {
models.methodCall('execute_kw', [
db,
uid,
password,
'res.partner',
'fields_get',
[],
{ 'attributes': ['string', 'help', 'type'] }
], (error, value) => {
if (error) reject(error);
resolve(value);
});
});
return results;
} catch (error) {
throw new Error(error);
}
}
return await getFields();
},
})