python-gotosocial-notif/README.md
2024-10-02 21:25:14 +07:00

1.8 KiB

Python Gotosocial Notifikasi

Ini adalah script untuk mengambil notifikasi di instance kauaku.us (gotosocial) dan menyimpannya ke database sqlite.

kemudian mengirimkannya dengan telegram bot.

Todo

App ini masih dalam pengembangan dan banyak hal yang belum bisa dilakukan, berikut daftar todo:

  • Tarik data dari Gotosocial notifikasi API
  • Simpan data ke dalam database sqlite3
  • Koneksi ke Telegram Bot
  • Kirim data ke Telegram Bot (terbatas untuk mentions, like, boost)
    • Mentions
    • Like/Favourite
    • Boost/Reblog
    • Follow
  • Tandai data di database jika sudah terkirim
  • Delay antar fungsi
  • Cron internal
  • Build
  • Benahi html ke markdown, karena pakai parse MarkdownV2 pakai html

Install

Clone repositori ini dan install di lokal.

$ python3 -m venv myvenv
$ source myvenv/bin/activate
$ pip install -r requirements.txt

Awas, silakan edit dulu isi file requirements.txt karena isinya banyak module yang tak terpakai, ane belum sempat hapus 1 per 1.

.env

Saat ini ada 4 environment variable yaitu:

  1. GTS_API : untuk URL API dari instance gotosocial
  2. GTS_TOKEN : Token dengan scope minimal "Read" untuk akses API gotosocial
  3. TELE_BOT : Token Bot Telegram, hubungi Bot Father untuk minta
  4. TELE_CHATID : Chat Id dari channel telegram.

Kekurangan

  1. Konversi dari html ke text/markdown masih buruk, Sulit pakai Markdown karena bermasalah dengan entities, jadi pakai html (perlu perbaikan disini)
  2. Setiap instance punya cara sendiri - sendiri untuk menyimpan data status, ada yang pakai <p> untuk memisahkan baris atau membuat new line, ada pula yang pakai `
  3. Sedikit lebih lambat dibandingkan Deno TS?

Lain - lain

Folder ini berisi contoh script crontab dan shell jalan.sh untuk eksekusi python