このプログラムは、Wakatime経由でユーザーが現在書いているコードを取得し、Slackのカスタムステータスに絵文字として設定するプログラムです。
いい感じに用意してください。
いい感じに頑張ってApp IDとSecretを用意してください。
| env | sample | detail |
|---|---|---|
| GIN_MODE | release | gin用release mode設定 |
| WAKATIME_APP_ID | ********** | Wakatime APIのApp ID |
| WAKATIME_CLIENT_SECRET | ********** | Wakatime APIのClient Secret |
| COOKIE_SECRET | ************* | Cookie用のSecret: 64Byteのランダム文字列を入れてください |
| PSQL_ENDPOINT | postgres-release-postgresql.databases.svc.cluster.local | Postgresqlのendpoint |
| PSQL_PORT | 5432 | PostgreSQLのポート |
| PSQL_DATABASE | wakatime_to_slack | PostgreSQLデータベース名 |
| PSQL_USER | user | PostgreSQLユーザー名 |
| PSQL_PASSWORD | ********** | PostgreSQL ユーザーパスワード |
| SLACK_ACCESS_TOKEN | xoxp-******** | SlackのACCESS Token |
emoji.jsonは手動で言語とSlack絵文字との対応付けを行うためのファイルです。
実行パスに配置
Wakatimeにおける言語名: Slackの絵文字ID
{
"Go": "gopher",
"YAML": "k8s",
"SQL": "postgresql"
}絵文字は、
emoji.jsonでの手動指定→言語名そのまま→言語名を全て小文字にしたもの→(絵文字が見つからなかった場合)❓
の順番に探されます。
また、過去十分間にコードを書いていない場合は🦥になります。
対応arch: amd64, arm64
docker run -p 8080:8080 ghcr.io/walnuts1018/wakatime-to-slack-profile:latest初回起動時にはブラウザでのログインが必要です。
ブラウザで http://localhost:8080/signin を開きます。(他のURLで公開している場合は適宜指定してください。)
Wakatimeのログイン画面が開くので、ログインしてください。
以降はTokenがPostgreSQLに保存されるので、手動でのログイン作業は必要ありません。


