Skip to content

tresept/hyper-denpa

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

hyper-denpa

SharePointから時間割変更Excelを引っこ抜いて整形してDiscordに送ったりCLIとしてOpenClawのSkillとして使えるようにする試み

Workspace

crates/
  hyper-denpa-discord
  • hyper-denpa-discord: Discord Bot
  • knct-sharepoint: 別 repo の SharePoint 取得ライブラリ

この workspace では https://github.com/tresept/knct-sharepoint.git を依存先にしつつ、 開発中は root から見て ../knct-sharepoint を Cargo patch で優先します。

Auth

認証情報は .env から読み込みます.次のすべてを設定するか:

RUST_LOG=warn,knct_sharepoint=debug,hyper_denpa_discord=debug
DISCORD_TOKEN=...
SHAREPOINT_DOC_URL=https://example.sharepoint.com/:x:/r/sites/example/_layouts/15/Doc.aspx?sourcedoc=%7B00000000-0000-0000-0000-000000000000%7D&file=henkou.xlsx
SHAREPOINT_FEDAUTH=...
SHAREPOINT_RTFA=...

または SHAREPOINT_COOKIE_HEADER="FedAuth=...; rtFa=..." でも動きます.

推奨は SHAREPOINT_DOC_URL を使う方法です. 互換のため SHAREPOINT_SITE_URLSHAREPOINT_ITEM_ID から直接組み立てる方法も残していますが、その場合は SHAREPOINT_DOC_URL が無いので案内リンクは出ません。 ESTSAUTHPERSISTENT は現在未対応です。

Commands

cargo run -p hyper-denpa-discord

Discord Bot の slash command:

  • /reload: 最新の時間割変更を再取得
  • /show: 最後に取得した時間割変更を日付順に表示
  • /grep: 学年を数値 choice で選び、CN / ES / IT / 1組 / 2組 / 3組 から必要なら絞り込んで表示
  • /law-csv: 最新の生 CSV を添付
  • /set-notify: 実行したチャンネルを定期通知先に追加
  • /unset-notify: 指定チャンネル、または実行したチャンネルを通知先から解除

取得データは data/YYYY-MM-DD_HH-MM-SS/ 単位で保存され、/show/grep は最新の取得結果を参照します。

Bot のログレベルは .envRUST_LOG で切り替えられます。例:

RUST_LOG=warn,knct_sharepoint=debug,hyper_denpa_discord=debug

About

香川高専のポータルサイトから時間割変更を引き抜くlib / discordbot / cli-tool

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages