No description
Find a file
2024-09-24 18:38:37 +00:00
.gitignore Initial commit 2024-09-24 14:06:01 +00:00
LICENSE Initial commit 2024-09-24 14:06:01 +00:00
README.md Update README.md 2024-09-24 18:38:37 +00:00

SimpleShout

A small chat box API for use on public websites.

Features:

  • Basic permissions: admin vs everyone else
  • Message creation
  • Discord style emoji: example, emojibase
  • Message deletion (admin)
  • Message sanitization
  • Keyword filtering
  • Responsive web UI
  • Embed/iframe-able

API

  • init: takes a cookie, returns a session if exits, else requests new session.
  • channels: returns a list of channels and a preview message for each
  • join: takes a username and channel, returns init_scrollback previous messages, a sync rate, and a client identifier, or an error if username exists/is not allowed, or channel does not exist
  • sync: takes a client identifier and returns all unseen messages
  • send: sends a message, returns a status
  • login: accepts password, gives client admin perms if password is correct
  • delete: takes an admin client identifier and a message id
  • ban: bans a client

Structs

  • config

    • admin_password
    • ratelimit (req/min)
    • [banned_words]
    • [banned_usernames]
    • [banned_ips]
    • init_scrollback
    • sync_rate
  • message

    • client_id
    • timestamp
    • body
  • client

    • client_id
    • username
    • ip_address
    • admin_perms
    • banned
    • ratelimit