with Kafka and Hive?
Create an action for given workspace See the documentation
import { Kafka } from "kafkajs"
export default defineComponent({
props: {
kafka: {
type: "app",
app: "kafka",
}
},
async run({steps, $}) {
const kafka = new Kafka({
brokers: [`${this.kafka.$auth.host}:${this.kafka.$auth.port}`],
});
const consumer = kafka.consumer({ groupId: 'TestGroup' });
await consumer.connect()
await consumer.subscribe({ topic: 'SampleTopic', fromBeginning: true });
let consumedMessage = "";
const eachMessage = async function({ topic, partition, message }){
consumedMessage = message.value.toString();
return consumedMessage;
};
await consumer.run({
eachMessage,
});
const producer = kafka.producer();
await producer.connect()
await producer.send({
topic: 'SampleTopic',
messages: [
{ value: 'Welcome KafkaJS + Pipedream users! '+ new Date().toISOString() },
],
});
await producer.disconnect();
const data = await consumer.describeGroup();
return { consumedMessage, groupDescription: data };
},
})
The Hive API allows for robust interaction with Hive's project and team management tools. By leveraging the Hive API within Pipedream, you can automate tasks, sync data across platforms, and create custom workflows that enhance productivity. For instance, you could automate project creation, update task statuses, or sync information to other business tools. Pipedream's serverless platform simplifies integration, enabling you to focus on crafting workflows without worrying about infrastructure.
import { axios } from "@pipedream/platform"
export default defineComponent({
props: {
hive: {
type: "app",
app: "hive",
}
},
async run({steps, $}) {
return await axios($, {
url: `https://app.hive.com/api/v1/users`,
params: {
api_key: `${this.hive.$auth.api_key}`,
user_id: `${this.hive.$auth.user_id}`,
},
})
},
})