with Odoo and Botpress?
Emit new event from bot is created. See the documentation
Adds a participant to a conversation. See the documentation
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();
},
})
Botpress is a powerful, open-source chatbot platform that enables developers to create intelligent, conversational bots. With its natural language understanding (NLU) capabilities, users can design bots that can interpret human language and respond appropriately. Utilizing the Botpress API on Pipedream allows you to automate interactions, analyze chat data, and integrate with various other services to enhance the functionality of your bots.
import { axios } from "@pipedream/platform"
export default defineComponent({
props: {
botpress: {
type: "app",
app: "botpress",
}
},
async run({steps, $}) {
return await axios($, {
url: `https://api.botpress.cloud/v1/chat/users`,
headers: {
Authorization: `Bearer ${this.botpress.$auth.identity_token}`,
"Content-Type": `application/json`,
"x-bot-id": `${this.botpress.$auth.bot_id}`,
},
})
},
})