From 93a31b87be3c64c9e022ccee14e1f06d6558f8cd Mon Sep 17 00:00:00 2001 From: Hri7566 Date: Mon, 16 Oct 2023 14:35:05 -0400 Subject: [PATCH] Emergency push --- src/rs/CommandHandler.rs | 4 +++ src/{services/mpp/cursor.ts => rs/cursor.rs} | 0 src/services/ServiceAgent.ts | 5 +++ src/services/index.ts | 6 +++- src/services/mpp/index.ts | 32 +++++++++++++++++++- src/util/env.ts | 3 ++ 6 files changed, 48 insertions(+), 2 deletions(-) rename src/{services/mpp/cursor.ts => rs/cursor.rs} (100%) diff --git a/src/rs/CommandHandler.rs b/src/rs/CommandHandler.rs index e69de29..ac21edc 100644 --- a/src/rs/CommandHandler.rs +++ b/src/rs/CommandHandler.rs @@ -0,0 +1,4 @@ +#[no_mangle] +pub extern "C" fn handleCommand(argc: isize, argv: ) { + +} diff --git a/src/services/mpp/cursor.ts b/src/rs/cursor.rs similarity index 100% rename from src/services/mpp/cursor.ts rename to src/rs/cursor.rs diff --git a/src/services/ServiceAgent.ts b/src/services/ServiceAgent.ts index 6f226ad..ba816ea 100644 --- a/src/services/ServiceAgent.ts +++ b/src/services/ServiceAgent.ts @@ -3,8 +3,13 @@ import EventEmitter from "events"; export abstract class ServiceAgent extends EventEmitter { constructor(public client: T) { super(); + this.bindEventListeners(); } public abstract start(): void; public abstract stop(): void; + + protected bindEventListeners() { + this.on("log", txt => console.log(txt)); + } } diff --git a/src/services/index.ts b/src/services/index.ts index 16a9375..879601d 100644 --- a/src/services/index.ts +++ b/src/services/index.ts @@ -7,7 +7,11 @@ export class ServiceLoader { public static agents = new Array>(); public static loadServices() { - const testAgent = new MPPAgent("wss://mppclone.com", env.MPPNET_TOKEN); + const testAgent = new MPPAgent( + "wss://smnmpp.hri7566.info:8448", + env.MPPNET_TOKEN + ); + testAgent.start(); } } diff --git a/src/services/mpp/index.ts b/src/services/mpp/index.ts index 991a5e4..7be22c3 100644 --- a/src/services/mpp/index.ts +++ b/src/services/mpp/index.ts @@ -2,6 +2,11 @@ import Client from "mpp-client-net"; import { ServiceAgent } from "../ServiceAgent"; export class MPPAgent extends ServiceAgent { + public desiredUser = { + name: "🟇 𝙎𝙪𝙥𝙚𝙧 Cosmic (*help)", + color: "#1d0054" + }; + constructor(uri: string, token: string) { const cl = new Client(uri, token); super(cl); @@ -10,10 +15,35 @@ export class MPPAgent extends ServiceAgent { public start() { this.client.start(); // TODO get rid of this gay shit - this.client.setChannel("Simon Says"); + this.client.setChannel("blackmidi (huge lag)"); } public stop() { this.client.stop(); } + + protected bindEventListeners(): void { + super.bindEventListeners(); + + this.client.on("hi", msg => { + this.emit("log", msg.u); + + if ( + msg.u.name !== this.desiredUser.name || + msg.u.color !== this.desiredUser.color + ) { + this.client.sendArray([ + { + m: "userset", + set: this.desiredUser + } + ]); + } + }); + + this.client.on("a", msg => { + const argv = msg.a.split(" "); + const argc = argv.length; + }); + } } diff --git a/src/util/env.ts b/src/util/env.ts index b5615c2..c6799e7 100644 --- a/src/util/env.ts +++ b/src/util/env.ts @@ -1,5 +1,8 @@ import z from "zod"; import { createEnv } from "@t3-oss/env-core"; +import { configDotenv } from "dotenv"; + +configDotenv(); export const env = createEnv({ isServer: true,