mirror of
https://github.com/misenhower/splatoon3.ink.git
synced 2026-04-24 23:07:11 -05:00
39 lines
881 B
JavaScript
39 lines
881 B
JavaScript
import sharp from "sharp";
|
|
import threads from "threads-api";
|
|
import Client from "./Client.mjs";
|
|
|
|
export default class ThreadsClient extends Client {
|
|
key = "threads";
|
|
name = "Threads";
|
|
|
|
#api;
|
|
|
|
constructor() {
|
|
super();
|
|
|
|
this.#api = new threads.ThreadsAPI({
|
|
// username: process.env.THREADS_USERNAME,
|
|
// password: process.env.THREADS_PASSWORD,
|
|
token: process.env.THREADS_TOKEN,
|
|
deviceID: process.env.THREADS_DEVICE_ID,
|
|
});
|
|
}
|
|
|
|
async canSend() {
|
|
// return process.env.THREADS_USERNAME
|
|
// && process.env.THREADS_PASSWORD;
|
|
|
|
return process.env.THREADS_TOKEN
|
|
&& process.env.THREADS_DEVICE_ID;
|
|
}
|
|
|
|
async send(status, generator) {
|
|
let jpeg = await sharp(status.media[0].file).jpeg().toBuffer();
|
|
|
|
await this.#api.publish({
|
|
text: status.status,
|
|
image: { type: "image/jpeg", data: jpeg },
|
|
});
|
|
}
|
|
}
|