Press n or j to go to the next uncovered block, b, p or k for the previous block.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 | 23x 2x 2x 1x 1x 1x 1x 1x 1x | import {
RESTPostChatMessageBody,
RESTPostChatMessageResult,
} from "kick-api-types/rest";
/**
* Sends a message to a Kick chat channel on behalf of the broadcaster.
*/
export const sendMessage = async ({
broadcaster,
message,
}: {
broadcaster: { name: string; accessToken: string };
message: string;
}): Promise<{ sent: boolean; message: string; status: number }> => {
const res = await fetch("https://api.kick.com/public/v1/chat", {
method: "POST",
headers: {
Authorization: `Bearer ${broadcaster.accessToken}`,
"Content-Type": "application/json",
Accept: "*/*",
},
body: JSON.stringify({
content: message,
type: "bot",
} as RESTPostChatMessageBody),
});
if (!res.ok) {
const data = (await res.json()) as RESTPostChatMessageResult;
console.log(
JSON.stringify({
messageSending: {
sent: false,
message: data.message,
status: res.status,
},
})
);
return { sent: false, message: data.message, status: res.status };
}
const data = (await res.json()) as RESTPostChatMessageResult;
console.log(
JSON.stringify({
messageSending: {
sent: data.data.is_sent,
message: data.message,
status: res.status,
},
})
);
return { sent: data.data.is_sent, message: data.message, status: res.status };
};
|