Skip to content

Reads a systemd unit for Arcaea-server's Link Play server for new rooms and sends a message in Discord announcing them

License

Notifications You must be signed in to change notification settings

burritosoftware/arcaea-linkplay-webhook

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

39 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Arcaea Linkplay Webhook

Icons

WakaTime


How this works

This script reads the logs for Arcaea-server's Link Play server, running in a systemd unit. It parses log messages for new rooms and sends a nicely-formatted message in Discord, announcing them and any players that join.

Preview

Limitations

Unfortunately, Arcaea-server's Link Play server does not print log messages when the host of a room changes, or when players leave/the room is closed. Therefore, the messages sent by this webhook won't be edited if a player leaves or the room is closed.

Installation

  1. Make sure that you're running the Link Play server seperately. Follow this guide to configure that.
  2. Create a systemd service to run the Link Play server under.
    For example, in a file named arcaea-linkplay.service at /etc/systemd/system:
    [Unit]
    Description=Arcaea Link Play Server
    After=network-online.target
    Wants=network-online.target
    
    [Service]
    Type=simple
    User=arc
    WorkingDirectory=/home/arc/Arcaea-server/latest version
    ExecStart=/usr/bin/python3 run_linkplay_server.py
    
    [Install]
    WantedBy=multi-user.target
  3. Clone this repository, then duplicate .env-example to .env, and edit the file with the name of your systemd service and the URL of your Discord webhook.
    git clone https://github.com/burritosoftware/arcaea-linkplay-webhook.git
    cd arcaea-linkplay-webhook
    cp .env-example .env
    nano .env
  4. Install the requirements. Then, start the watcher, create a Link Play room, and verify that a message was sent.
    python3 -m pip install -U -r requirements.txt
    python3 watcher.py
  5. If it all looks good, it's best to create a systemd service for this too, like arcaea-notif.service at /etc/systemd/system:
    [Unit]
    Description=Arcaea Linkplay Webhook
    After=network-online.target
    Wants=network-online.target
    
    [Service]
    Type=simple
    User=arc
    WorkingDirectory=/home/arc/arcaea-linkplay-webhook
    ExecStart=/usr/bin/python3 watcher.py
    
    [Install]
    WantedBy=multi-user.target

About

Reads a systemd unit for Arcaea-server's Link Play server for new rooms and sends a message in Discord announcing them

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages