glimesh-chat
    TypeScript icon, indicating that this package has built-in type declarations

    1.0.2 • Public • Published

    Glimesh Chat

    Connect to Glimesh's chat servers with ease!

    Usage

    Using this package is very simple:

    Typescript

    import { GlimeshChat } from "glimesh-chat"
    
    const chat = new GlimeshChat({ token: "<MY TOKEN HERE>" })
    
    chat.connect("<MY CHANNEL HERE>").then((meta) => {
        chat.on("message", msg => {
            console.log(msg)
            chat.sendMessage("Wow! I got your message!")
        })
    })

    Node

    const Glimesh = require("glimesh-chat")
    
    const chat = new Glimesh.GlimeshChat({ token: "<MY TOKEN HERE>" })
    
    chat.connect("<MY CHANNEL HERE>").then(meta => {
        chat.on("message", msg => {
            console.log(msg)
            chat.sendMessage("Wow! I got your message!")
        })
    })

    And that's it! This will automatically start the heartbeat loop to keep the connection alive. It is your application's responsibility to handle authentication token refreshing.

    You can then later disconnect with await chat.close()

    Other things you can do

    For these examples, assume that you're already connected to the chat servers, like the previous examples, with the chat variable.

    Ban / unban user

    // Ban
    await chat.banUser(userId)
    
    // Unban
    await chat.unbanUser(userId)

    Short / Long timeout

    Short timeout on Glimesh is defined as a 5 minute timeout and a long timeout is 15 minutes.

    await chat.shortTimeout(userId)
    await chat.longTimeout(userId)

    Send custom payload

    Got a custom payload to send? Use this!

    await chat.send([ packet: "data", here: true ])

    Get user id

    const id = await chat.getUserId("usernameHere")

    Get channel id

    const id = await chat.getChannelId("usernameHere")

    Get moderators in the channel

    const mods = await chat.getModerators("usernameHere")
    mods.forEach(mod => {
        console.log(`user: ${mod.id} can ban ${mod.canBan} can long timeout ${mod.canLongTimeout} can short timeout ${mod.canShortTimeout} can untimeout ${mod.canUnTimeout}`)
    })

    Keywords

    none

    Install

    npm i glimesh-chat

    DownloadsWeekly Downloads

    3

    Version

    1.0.2

    License

    MIT

    Unpacked Size

    19.8 kB

    Total Files

    10

    Last publish

    Collaborators

    • innectic