不和のチャンネルを最新に保つ


免責事項


この用途 channel-backup 私が開発して、昨年のように「TinkerStorm」組織の下で私自身を発表したので.その作成以来、それは6つの繰り返しを行っている、最新の繰り返しのみ公開されている.

ティンカーストーム / チャンネル


コミュニティ管理者が彼らの情報チャンネルを更新するのを助けるコマンドラインツール。


チャンネル







コミュニティ管理者が彼らの情報チャンネルを更新するのを助けるコマンドラインツール.
進行中の注意事項はproject board .
私はこのプログラムがインタフェースの規則的な規則に従わないことに気づいています、しかし、私はあなたのような通常のスクリプトでアクセス可能であることを確実にするために最善を尽くしました.それは、私は最重要な懸念でそれを阻止する.理論上、これは複数のチャンネルが彼らの情報を最新の状態に保つためにwebhooksでセットアップであるMonorepoセットアップに適用されることができます.

用途


The cache.json 前のシーケンス(ローカル更新)で送信されたすべてのメッセージのメッセージIDを含むファイル.を含むyml and json ) の構造パターンに続いてWebhookMessageOptions (discord.js) . cache.json の両方がフェッチされ、どこにでもダンプされます.
View on GitHub

問題説


ほとんどのコミュニティマネジャーが彼らの情報チャンネルを更新する必要がある場合に直面する問題は、自分自身を更新する必要があるということです特定の著者に尋ねてください;またはコマンドを使用してボットメッセージを更新する方法を知っている、Webダッシュボードなど.
私がこの問題を解決したと言うことは少しの範囲であるかもしれませんが、私は、それがコミュニティメンバーが個人または選ばれたグループのグループに依存している代わりに情報チャンネルに貢献を手伝う機会を開くと思います.しかし、それらの人々に対する厳しい感情は、私は彼らがちょうど罰金をすると確信します.🙂

Prior to being published, the script was just 180 lines stuffed into one file - which was sometimes iterated upon when I needed to do something new with it. 😂 I finally decided to motivate myself to publish it as someone had come to me, wanting to set it up on their own community.


解説


設定は、直接ファイル参照やシーケンス内の特定のファイルに一致するglobパターンを使用するように設定することができます.プログラムは、直接自分のスクリプトにそのメソッドをインポートすることによって、インターフェイスの観点から理論的にアクセス可能ですが、コマンドラインから優先されます.
{
  "$schema": "https://github.com/TinkerStorm/channel-backup/raw/main/schemas/config.json",
  "files": {
    "./rules/*.md"
  }
}

Matching to any markdown file in the 'rules' folder (but no sub-directory).


あなたがあなたのスタッフチームの間でそれを保つのを好むならば、WebHookは設定の一部として指定されることができます、しかし、それは好まれません.v 1のリリースで.1.1昨日、それをサポートするセットを追加しましたWEBHOOK_URL ロードする環境変数として.
これのデモは、Tinkerstormcommunity repository , それはフォルダ、構成、およびマトリックスを実行します.派遣されると、これはDiscord server .
Example workflow run (2021年11月10日)
# INFO_CHANNEL_WEBHOOK, ./info/config.json

> [email protected] sequence
> channel-backup "--config" "./info/config.json"

Found 4 files in ./info/0*.md
steps(handle-message) './info/01_welcome.md' -> '875471689432039494'
steps(handle-message) './info/02_rules.md' -> '875471694070943744'
steps(handle-message) './info/03_channels.md' -> '875471698718253117'
steps(handle-message) './info/04_roles.md' -> '875471703394897950'
step(cleanup:update) 4 messages.

# README_CHANNEL_WEBHOOK, ./readme/config.json

> [email protected] sequence
> channel-backup "--config" "./readme/config.json"

Found 2 files in ./readme/*-projects.md
Found 1 files in ./readme/community-upkeep.md
steps(handle-message) './readme/core-projects.md' -> '875475818036473917'
steps(handle-message) './readme/side-projects.md' -> '875475822620864584'
steps(handle-message) './readme/community-upkeep.md' -> '875475827444301825'
step(cleanup:update) 3 messages.

# ---
# {if cache.json was modified}
# set git name and email, then commit and push

[main 08c120d] auto: Update cache.json
 1 file changed, 1 insertion(+), 1 deletion(-)
To https://github.com/TinkerStorm/community
   6196053..08c120d  main -> main

結論


組織として、我々はさらに、より良い粘着性の生態系に拡大するつもりです.
あなた自身のサーバーのためにこれをセットアップしたいならばrepository template . CIワークフローで展開する場合は、使用を自由にしてくださいour deploy workflow を参照します.cache.json リポジトリに戻る.あなたがこれを設定すると、任意の助けが必要な場合は、私たちのドロップDiscord server そして、我々は何ができるかについて見ます.

ロックドラゴン / チャンネルバックアップテンプレート


チャネルバックアップ用のテンプレート。


その他使用可能

  • 間隔の付箋メッセージを使用してcrthubのアクションをcronタイマー--mode replace アクティブ).
  • ノート


    I am aware that [email protected] requires NodeJS 16.6.x or above, which should be patched with the release of [email protected]. Furthermore, we hope to further amend to community commitment by providing a custom webhook interface - designed for this library, which will hopefully support more LTS versions.


    あなたがマトリックス構築を試みるならば、Aを加えてください${{ secrets.* }} の一部として${{ matrix.* }} , ワークフローは失敗します.代わりに、キーをマトリックスの一部として参照し、使用する${{ secrets[matrix.*] }} .
    私はまた、複数のMatrix Runningが平行に走ることができないことに気づいていました.そして、私は解決する唯一の方法が連続して走ることであると結論しましたmax-parallel: 1 . ペイロードトリミング/消毒はどちらも行われませんので、HTMLコメントのようなエンティティはリテラル文字列になります.

    計画機能が含まれます:

  • アクションインテグレーション
    ワークフローデモで部分的な補完.
  • ペイロードの検証と比較
  • より良いCLIサポート
  • より良いログ
  • 単体テスト
  • 広範なプラグインのサポート
  • その他の機能


  • Discord Message Components - アプリケーションのWebhookを必要とサーバーリスニング
  • マルチプラットフォームサポート(パッチと削除の終了点がある場合のみ)
  • 有罪の
  • Slack