31 lines
723 B
TypeScript
31 lines
723 B
TypeScript
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) - 1;
|
|
|
|
const randomStanza = await prisma.stanza.findMany({
|
|
take: 2,
|
|
skip: skip,
|
|
});
|
|
|
|
if(randomStanza){
|
|
lcd.clearSync();
|
|
if(randomStanza[0].text.length < 16){
|
|
lcd.printSync( randomStanza[0].text );
|
|
lcd.setCursorSync(0, 1);
|
|
lcd.printSync( randomStanza[1].text );
|
|
}
|
|
}
|
|
}, 3000)
|
|
|