読者です 読者をやめる 読者になる 読者になる

Pushbullet APIを利用したお手軽プッシュ「Quickbullet」(とおまけのPushover版)

その他 その他-ワークフロー紹介

f:id:four_or_three:20170204134853j:plain

Pushbulletでテキスト、リンク、ファイルを送信するワークフローです。
通常起動、ウィジェット、Action Extensionの3通りの起動方法に対応しています。

機能

GET、POST、カスタムヘッダー、マルチパートと、Get Contents of URLアクションの機能をいろいろ使っていますので、参考になるかもしれません。

制限事項

PushbulletのAPIを無料アカウントで使用する際には、ひと月あたり500プッシュという回数制限が設けられています。

https://docs.pushbullet.com/#push-limit
http://www.androidpolice.com/2016/07/27/pushbullet-will-limit-api-based-pushes-500-per-month-free-accounts-starting-august-1

この回数に、ブラウザや純正アプリを使用した手動プッシュやIFTTTでのプッシュは含まれていないとのことです。
月500回というのは手動でポチポチやるぶんにはまあまあな数字だと思いますが、上限に到達してしまった場合はAPIの使用は一旦お休みです。

このワークフローを使って実行したプッシュリクエストをカウントして、当月中の回数を表示するようにしています(Quickbullet.txtという名前でiCloud Driveに保存)。

インポート

▼Pushbullet版
https://workflow.is/workflows/391ed140634f42bdbcfaf52626b58983

▼Pushover版
https://workflow.is/workflows/20a6625a8cb44ed1a0e298f35ef4cdbe

使用開始までの手続き

  1. アクセストークンを取得
    1.1 https://www.pushbullet.comにサインイン
    1.2 歯車マーク → Accountの順にタップ
    f:id:four_or_three:20170130134235p:plain:w250
    1.3 “Create Access Token"をタップしてアクセストークンを発行
    f:id:four_or_three:20170130134247p:plain:w250
    アクセストークンが表示されるのはこの時の一度きりです。
    わからなくなった場合は再取得します。

  2. フローの上から3番目のTextアクションに、取得したトークンをペースト

アクセストークンの取り扱いは慎重に

アクセストークンを使用すると、Pushbulletのアカウントにフルアクセスできるようになります。プッシュ等ができるというだけでなく、登録名やメールアドレス等も簡単にわかってしまいます。

重要度はパスワードと同等と考えておくといいかもしれません。
くれぐれも、ワークフローに書き込んだままシェアしてしまわないように気をつけてください。

やってしまうかも…と心配な場合は、テキストファイルとしてiCloud Driveに保存しておいて、Get Fileアクションで取得するようにしておくと、少なくとも、ワークフローをシェアすることで流出させてしまうリスクはなくなります。

やってしまった場合は、https://www.pushbullet.com/#settingsで"Reset All Access Tokens"します。

処理を高速化する設定

ちょっと面倒な作業ですが、これをやっておくとワークフローを快適に使用できるようになります。

初期設定では、ワークフローを実行するたびにAPIに問い合わせてプッシュできる端末とブラウザを取得しています。
登録内容に変更がなければ取得する情報は毎回同じなので、これを控えておけば問い合わせを省略できます。

手順

(1)
▼この場所に
f:id:four_or_three:20170204132648p:plain:w250

▼Combine Text(New Line)とCopy to Clipboardを差し込む
f:id:four_or_three:20170204132659p:plain:w250

(2)
Run Workflow → 選択肢が出たらキャンセル
これで、クリップボードに以下のようなテキストがコピーされました。

デバイス名1
◯◯◯◯◯◯◯◯◯◯◯◯
デバイス名2
◯◯◯◯◯◯◯◯◯◯◯◯
...

1で差し込んだCombine TextとCopy to Clipboardを削除して元通りにしておきます。

(3)
2で取得したテキストをメモ帳等で加工

デバイス名1|||◯◯◯◯◯◯◯◯◯◯◯◯  
デバイス名2|||◯◯◯◯◯◯◯◯◯◯◯◯  
...

このように書き換えます。

必要なデバイスだけにしておくといいと思います。記述する順番も自由です。
「デバイス名1」の部分は選択肢の表示に使用するだけですので、自由に記述してください。空白も使えます。縦棒3本は使えません。
ここに本名を記述したままワークフローをシェアしてしまわないよう。

(4)
3のテキストをフローの上から6番目のTextにペースト


以上で完了です。

この設定をすることにより、記述したテキストを使用してデバイス一覧が表示されるようになります。
問い合わせをしてデバイスを取得するように戻したい場合は、4で貼り付けを行ったTextアクションの中身を全削除して空っぽにしてください。

更なる高速化

手順4のTextアクションにデバイスが1つだけ記述されている場合は、選択肢の表示がスキップされます。
オススメの設定。

使い方色々

スクリーンショットウィジェットで即時送信

f:id:four_or_three:20170130122125p:plain:w250

枚数を指定してスクリーンショット送信して送信後に削除するやつ。
https://workflow.is/workflows/babc912215bb4a47a33ee3e657a6be21

メモアプリからデバイス指定でプッシュ
workflow://run-workflow?name=Quickbullet&input=[body]

純正アプリのURLスキームを使用した場合と比べて明らかに時間がかかりますが、純正アプリと違ってこちらは空振りをしません。
x-callback-urlも使えます。

他のワークフローの出力をプッシュ

f:id:four_or_three:20170130123459p:plain:w250

広告を非表示にする