portal/build/screen.js

23 lines
734 B
JavaScript

import { PrismaClient } from "@prisma/client";
const prisma = new PrismaClient();
import LCD from "raspberrypi-liquid-crystal";
const lcd = new LCD(1, 0x27, 16, 2);
lcd.beginSync();
lcd.clearSync();
lcd.printSync('Black');
lcd.setCursorSync(0, 1);
lcd.printSync('Portal');
setInterval(async () => {
const stanzaCount = await prisma.stanza.count();
const skip = Math.floor(Math.random() * stanzaCount);
const randomStanza = await prisma.stanza.findMany({
take: 1,
skip: skip,
});
if (randomStanza) {
lcd.clearSync();
lcd.printSync(randomStanza[0].text.substring(0, 16));
lcd.setCursorSync(0, 1);
lcd.printSync(randomStanza[0].text.substring(16, 32));
}
}, 3000);