GithubHelp home page GithubHelp logo

linuxgsm-support-bot's Introduction

LGSM-SupportBot

Discord support bot for LinuxGSM

Adding Triggers

The file: triggers.json contains all the triggers the bot will respond to.

If you need to edit or update one of them, please open a pull request with the change.

Trigger format

The trigger format is done in JSON to make it easier to update and review.

{
   "Name": "0x202",
   "Starters": [
      {
         "Type": "simple",
         "Value": "0x202"
      }
   ],
   "Answer": "https://docs.linuxgsm.com/support/faq#write-error-no-space-left-on-device"
}

Each trigger can have multiple starters, at this time there are two supported types of starters, simple and regex

Simple Starter

The simple starter will search each message to see if it contains the specified text, this must be done in lower case as the entire message is cast to lower.

Regex Starter

The regex start will search each message for a match of the regex, if a single match is found the answer will be triggered.

Note .NET regex is used so no Nested quantifier +

What happens if multiple triggers are hit?

The bot will simply collect each answer, and send a single message with all of them along with a notice that multiple potential issues were found.

linuxgsm-support-bot's People

Contributors

dgibbs64 avatar grimston avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

linuxgsm-support-bot's Issues

Add a check port command

Add a command to check if a specified IP:Port is open

Example

#check-port 123.4.5.6 80 tcp

This can be done using both the TcpClient and UdpClient

TCP is by far the easiest to check, UDP is somewhat more difficult as we will either get a garbled response or a timeout, both show the port is open Stackoverflow Reference

Steam API Check command

Add a command to check using the Steam API what servers are running from a specified IP Address

#check-steam x.x.x.x

The output should be similar to:

The following server(s) have been detected by Steam:
**valheim**
appid: 892970
gameport 2456
specport 0

Or if blank

No servers found by steam, is the server running? Firewall? Port forwarding?

On Error

Error communicating with the steam API please try again later.

Docker container

I am wondering if it would be worth getting the bot into a docker container to make it very easy to deploy

Web API

I can see some benefits from making some of the features available as a web API.
Remote gamedig queries for example.

  • Checks Module API Controller
  • Implement rate limits
  • Add authentication to the API

Limits need to be imposed as it's effectively a port scanner.

Improved docs and install instructions

I think it would be a good idea to get together some install instructions so I know how to depoy if it was ever required.

Also, some user documentation would be great. This could be integrated into the existing linuxgsm gitbook

Backup Keyword

if the word backup is used bot to send link to backup docs

Valheim - RAM Detection

If a Valheim details paste/link? is detected check the memory to ensure the system has 2GB or more, otherwise inform them the memory is too low.

Prerequisites

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.