with Kafka and Float?
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 Float API allows you to interact with Float's resource scheduling platform programmatically. With it, you can manage projects, tasks, people, and time off, as well as retrieve reports on workload and capacity. On Pipedream, the API can be leveraged to create automated workflows that link Float's scheduling capabilities with other apps, streamlining project management processes, syncing with calendars, and dynamically updating team schedules.
import { axios } from "@pipedream/platform"
export default defineComponent({
props: {
float: {
type: "app",
app: "float",
}
},
async run({steps, $}) {
return await axios($, {
url: `https://api.float.com/v3/accounts`,
headers: {
Authorization: `Bearer ${this.float.$auth.api_key}`,
"Accept": `application/json`,
},
})
},
})