Skip to content

Senketsu/SenShi

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 

Repository files navigation

SenShi - AFK Streamer & IRC Bot

Automatic IceCast Streamer & IRC Bot, easily deployable. Currently supports only mp3 audio files. Website requests not available atm (TODO).

About:

This started as (planned) winter pastime project. If you ever heard of r/a/dio, this is essentially easily deployable Hanyuu-sama, written from scratch in Nim. Might not be as fancy, but does the job.

Note: This is not a rewrite or copy of Hanyuu-sama in other language, but an emulation i.e: 'imitation of behavior'.

Why (call it) emulation ?

  • Developed purely from the knowledge of Hanyuu's behavior from the IRC chat.
  • Haven't seen Hanyuu's source code in more than a year.
  • More fun & challenging than rewritting existing code. No know-how.

TODO:


  • Web requests support (ETA: When testing website is finished (might take a while, since i just picked up webdev) )
  • More audio formats (flac, ogg ..)
  • Will update when i think of more.

How to deploy SenShi:


Preparing enviroment:

Follow this guide or use SenShi's Vagrant

  • Install IceCast & MySQL server & client libraries & taglib
  • Arch Linux example: pacman -S mariadb mariadb-clients libmariadbclient icecast libshout taglib
  • Set the configs to your needs.. or not
  • Install Nim devel tools Nim & nimble
  • Install this library nimble install ndbex
  • Follow the below Compiling guide

Compiling SenShi:

  • Use git to clone OR download and extract the source files & cd into it
  • Compile SenShi with nim c --threads:on senshi.nim (optionaly -d:release flag)
  • Compile this helper tool to create SenShi database for you nim c -d:release ./other/createDatabase.nim
  • (Optional) If you ever in future want to add tracks to your DB easily nim c -d:release ./other/fillTracks.nim
  • Run ./other/createDatabase and let it do its job.
  • Run SenShi and go trough its setup.

TLDR:

git clone https://github.com/Senketsu/SenShi
cd SenShi/src
nim c --threads:on senshi.nim
nim c -d:release ./other/createDatabase.nim
./other/createDatabase

When running SenShi for the first time, you will go trough config setup.

Contact

About

AFK IceCast Streamer & IRC Bot

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages