RaspberryPiからSlackにアップロードする.

workSpaceを新たに作る

slack api ページから Oauth & Permission タグを開く。

UserToken Scopesに以下へのpermissionを追加する.

※参考URL記載のpermissonからはslackのverが上がっているためか、 permission名が微妙に変わっているので注意.

f:id:Appkun:20201004155040p:plain
permission設定情報

Python Code

準備:pythonコードにTokenや、チャンネルの識別情報を入力する.

  1. 上記で発行した下記のTokenを下記pythonデータに配りつける。
  2. チャンネルIDをslackサイトよりメモし記載する。
  3. チャンネルの名前をslackサイトよりメモし記載する。

実行:python capture.pyで実行する.

"capture.py"

import commands
import time

commands.getoutput("raspistill -w 1200 -h 900 img01.jpg -ev 3 -ISO 800")

from slacker import Slacker
token = "XXXX-XXXX-XXXXXX"
slacker = Slacker(token)
channel_name = "#"+"チャンネルの名前"

slacker.chat.post_message(channel_name, 'this is chapture')

result = slacker.files.upload('../camera/img01/image.jpg',channels=['チャンネルID'])


# まだ不具合あり.[start]

#slacker.pins.add(channel='チャンネルID',timestamp=str(time.time()), file_=result.body['file']['id'])
slacker.pins.add(channel='チャンネルID',timestamp=str(time.time()))

# まだ不具合あり.[End]

★問題 1件

slacker.pins.add に失敗する... こちらについては、解決次第再投稿させていただきます。

※参考 https://nn-hokuson.hatenablog.com/entry/2017/10/11/205438