質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

Slack

Slackは、Tiny Speckという企業からリリースされたコミュニケーションツールです。GoogleDriveやGitHubなど、さまざまな外部サービスと連携することができます。

Q&A

解決済

2回答

1829閲覧

slackbotでのsnippetとファイル(jpg)の出力方法

Spacekoki

総合スコア17

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

Slack

Slackは、Tiny Speckという企業からリリースされたコミュニケーションツールです。GoogleDriveやGitHubなど、さまざまな外部サービスと連携することができます。

1グッド

1クリップ

投稿2018/08/29 02:46

slackbotをpython3を用いて作成しています。この記事を参照しながらslackbotを作成しています。記事では出力がmessage.reply(), message.send(), message.react
についてしか説明されていませんでした。
このほかにsnippetとしてファイルやstringを送信したり、ファイル(jpg)を送信することはできたりするのでしょうか?

tachikoma👍を押しています

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

slackbotというライブラリを使ったことがないので、slack apiには、ファイルを合わせてポストするメソッドが実装されているので、そこにリクエストを送ることはできると思います。

https://api.slack.com/methods/chat.postMessage

追記
と、ここまで書いてgithubのコードを見て見たのですが、
https://github.com/lins05/slackbot/blob/develop/slackbot/plugins/upload.py
に、該当しそうなコードが落ちていますね、これを使いたければbotクラスをオーバーライドして、必要な実装を加えるとかがより現実的なやり方かもしれませんね。

投稿2018/08/29 14:37

hayata-yamamto

総合スコア31

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

ベストアンサー

slackbotで attachment-supportというのがありますね。
slackのdocumentにmessage-attachmentの記事があって、そこには image_url をkeyにjsonを書き込むと書いてあるのでそれを使うといいかと思います。
いかに公式のgithub repositoryを少し改変したサンプルコードを貼っておきます

e.g.

diff

1@respond_to('github', re.IGNORECASE) 2def github(): 3 attachments = [ 4 { 5 'fallback': 'Fallback text', 6 'author_name': 'Author', 7 'author_link': 'http://www.github.com', 8 'text': 'Some text', 9 'color': '#59afe1', 10+ 'image_url':'htps://example.com/sample.png' 11 }] 12 message.send_webapi('', json.dumps(attachments))

snippetの投稿には chat.postMessage というメソッドではなくfiles.uploadというメソッドが必要なため少し勝手が違いそうですね。

message.send_webapi の第一引数がtextを受け取っているためメソッドを指定することができそうですが、いまいちドキュメントを追えなかったので確信はもてなかったです。
python-slackclientというlibraryを使うとデフォルトでメソッドの指定ができて自由度が高そうですがいかがでしょうか。

投稿2018/08/30 01:20

sakakendo0321

総合スコア45

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問