Github: https://github.com/wee-slack/wee-slack
ウィー・スラック
Slack.comのWeeChatネイティブクライアント。 Web /モバイルクライアントでのみ利用可能な補足機能を提供します:読み取りマーカの同期、通知の入力、スレッド(およびその他)! スラックAPIを介して接続し、イベントの通知用に永続的なwebsocketを保持します。
特徴
- スレッドのサポート
- スラックステータスのサポート
- スラッシュコマンド(カスタムコマンドを含む)
- 余裕のある機能にアップロード
- 絵文字の反応
- 編集されたメッセージは、元のメッセージが変更され、追加(編集)された公式のクライアントと同じように機能します。
- Unfurled urlsは新しいメッセージを生成しませんが、受信時に元の情報をより多くの情報に置き換えます。
- 正規表現スタイルのメッセージ編集(s / oldtext / newtext /)
- ダイナミックバッファ情報のスマートな再描画(CPU%を大幅に削減)
- ベータUTF-8サポート
- IRCゲートウェイを使用しません。 API / Websocketを介してSlackと直接接続する
- 複数のチームがサポートされています。 コンマで区切られた複数のapiトークンを追加するだけです
- 起動時に履歴を自動的に再生します。 (そして、読まれたマーカーを歴史の正しい位置にセットする)
- スラックに同期したオープンチャンネル。 別のクライアントでチャンネルを開いたり閉じたりすると、それはぎこちなさに反映されます
- buffers.plと一緒に使用すると、バッファリストのカラーニックネームが表示される
- チャットで色彩のついたニックネーム
- すべてのチャンネルの双方向スラックリード通知をサポートします。 (Webクライアントまたは他のデバイス上で同じメッセージを決して再読えません)。
- 通知を入力すると、他の人がいつ入力したかを見ることができ、入力時に表示することができます。 ダイレクトメッセージの場合はグローバルに表示されます
- アウェイ/バックステータス処理
- ツイート/リンクなどのメタデータを展開/表示する
- 編集したメッセージを表示します(slack.com ircモードでは現在表示されません)
- 超楽しいデバッグモード。 websocketが言っていることを見る
開発中
- 新しいバージョンのwee-slackの通知を追加する
依存関係
- WeeChat 1.3+ http://weechat.org/
- websocket-client https://pypi.python.org/pypi/websocket-client/
セットアップ
0。
wee-slackはSlack IRCゲートウェイを使用しません。 ゲートウェイ経由で現在接続している場合は、おそらくサーバー定義を削除する必要があります。
/server list
All servers:
slack
/server del slack
/python reload
1.依存関係をインストールする
OSXおよびLinux
pip install websocket-client
FreeBSD
pkg install py27-websocket-client py27-six
2. wee_slack.pyを〜/ .weechat / python / autoloadにコピーします。
wget https://raw.githubusercontent.com/wee-slack/wee-slack/master/wee_slack.py
cp wee_slack.py ~/.weechat/python/autoload
3. WeeChatを開始する
weechat
注: weechatがすでに実行されている場合は、 /python load python/autoload/wee_slack.py
を使用してスクリプトをロードできます/python load python/autoload/wee_slack.py
4.スラックAPIキーを追加します。
スラックにログイン:
/slack register
このコマンドは、WeeChatにSlackを許可するためにブラウザで開くべきリンクを表示します。 これを完了したら、ブラウザのURLの「コード」部分をコピーして、次のコマンドに渡します。
/slack register [YOUR_SLACK_TOKEN]
Slackチームが追加されました。あなたはwee-slackプラグインを再起動してセットアップを完了できます。
/python reload slack
または、 Slackレガシートークンページで[Request Token]ボタンをクリックし、設定に直接貼り付けることもできます。
/set plugins.var.python.slack.slack_api_token [YOUR_SLACK_TOKEN]
平文でAPIトークンを保存しない場合は、weechatの安全な機能を使用できます。
/secure passphrase this is a super secret password
/secure set slack_token [YOUR_SLACK_TOKEN]
/set plugins.var.python.slack.slack_api_token ${sec.data.slack_token}
オプション:複数のグループに接続する場合は、複数のトークンをカンマで区切って上記のコマンドを使用します。 (場所がない)
/set plugins.var.python.slack.slack_api_token [token1],[token2],[token3]
5. $ PROFIT $
/save
/python reload
コマンド
チャンネルに参加する:
/join [channel]
誰かまたは複数のユーザーと直接チャットを開始する:
/query <username>[,<username2>[,<username3>...]]
/slack talk <username>[,<username2>[,<username3>...]]
チャンネルを一覧表示する:
/slack channels
ユーザを一覧表示する:
/slack users
チャンネルを閉じる/ dm:
/part
/leave
/close
あなた自身を遠ざける/戻す:
/slack away
/slack back
前のメッセージを変更する:
s/old text/new text/
3番目の前のメッセージを変更する:
3s/old text/new text/
前のメッセージのテキストのすべてのインスタンスを置き換えます。
s/old text/new text/g
前のメッセージを削除:
s///
最後のn番目のメッセージに反応を追加します。 番号は省略でき、デフォルトは最後のメッセージになります。 +
は、代わりに反応を取り除くために-
で置き換えることができます。
3+:smile:
現在のスラックバッファにファイルをアップロードする:
/slack upload [file_path]
スラッシュスラッシュコマンドを実行します。 公式のクライアントに入力するものに単に/slack slash
を追加するだけです。
/slack slash /desiredcommand arg1 arg2 arg3
アクションを実行する代わりにコマンドを通常のメッセージとして送信するには、スラッシュまたはスペースでプレフィックスを付けます。
//slack
s/a/b/
スレッド
最新のメッセージで新しいスレッドを開始するこの番号は、バッファ内のどのメッセージが逆の順序で返信されるかを示します。
/reply 1 here is a threaded reply to the most recent message!
既存のスレッドをチャネルとして開きます。 引数はスレッド識別子であり、チャンネル内のすべてのスレッドメッセージとともに角括弧で表示されます。
/thread af8
覚えやすい名前でスレッドにラベルを付けます。 上記のコマンドは、af8と呼ばれるチャネルを開きますが、おそらくあなたはそれを “meetingnotes”と呼んでいます。 これを行うには、そのバッファを選択して次のように入力します。
/label meetingnotes
注:スレッドバッファが閉じられるとラベルは保持されません
状態
指定されたチームにスラックステータスを設定する:
/slack status [:emoji:] [Status message]
例:
/slack status :ghost: Boo!
絵文字タブの補完
emojisのタブ補完を有効にするには、 weemoji.json
ファイルをweechat configディレクトリ(例: ~/.weechat
)にコピーまたはシンボリックリンクします。 次に、 weechat.completion.default_template
設定オプションに|%(emoji)
を追加します。例:
/set weechat.completion.default_template "%(nicks)|%(irc_channels)|%(emoji)"
オプションの設定
チャンネルプレフィックスをmy-slack-subdomain.slack.com以外のものに設定する(例えば、buffers.plを使用する場合):
/set plugins.var.python.slack.server_aliases "my-slack-subdomain:mysub,other-domain:coolbeans"
各反応を追加した人を表示します。 [:smile:2]
代わりに[:smile:2]
[:smile:(@nick1,@nick2)]
ように反応します。
/set plugins.var.python.slack.show_reaction_nicks on
メインバーに入力通知を表示する(slack_typing_notice):
/set weechat.bar.status.items [buffer_count],[buffer_plugin],buffer_number+:+buffer_name+{buffer_nicklist_count}+buffer_filter,[hotlist],completion,scroll,slack_typing_notice
アクティビティ後のホットリストにチャンネル名を表示する
/set weechat.look.hotlist_names_level 14
デバッグ
デバッグモードを有効にし、デバッグレベルを変更します(デフォルトは3、ロギングを増やすには減少し、その逆もあります)。
/set plugins.var.python.slack.debug_mode on
/set plugins.var.python.slack.debug_level 2
/tmp/weeslack-debug/
JSON応答をダンプします。 スクリプトのリロードが必要です。
/set plugins.var.python.slack.record_events true
サポート
wee-slackは何の保証もなく提供されていますが、freenodeの#wee-slackで質問するのは大歓迎です。