PowerApps 、Microsoft Flow には標準でTwitterへ接続可能なコネクターが準備されています。それを利用すればアプリやFlowから任意のメッセージをツイートすることが可能です。
PowerApps から Twitter に接続する
Microsoft Flow Twitter
この仕組みではなくて、このQiitaにもあるような「Tweet Button」みたいな動作を PowerApps にも組み込みたいコトありませんか?今回は、そんな場合の対象方法です。
#完成イメージ
#PowerApps Tweet Icon pic.twitter.com/HPH9yztPoc
— やま (@yamad365) 2019年6月2日
Twitterアイコンの向きが微妙なのは、ご愛敬ですw
#PowerAppsでTweet画面を起動する方法
「Launch」関数を利用します。公式情報は下記を参照ください。
キャンバス アプリでの download、Launch、および Param 関数
ボタンや画像など、好きなコントロールを配置します。そのコントロールの[OnSelect]イベントへ下記のようにツイート用URLを記入します。
Launch("https://twitter.com/intent/tweet")
これで、PCのブラウザーで操作した場合は新規投稿画面がブランクで起動します。なお、上記のパラメーターにしているURLを直接ブラウザーのURL欄へ入力すると同じ動作をするはずです。
#ハッシュタグなどをパラメーターで渡す
特定のハッシュタグなどを付与したり、デフォルトの文字列を渡したい場合は、PowerAppsのLaunch関数ではなくてTwitter側の仕様に従ってURLを指定すればOKです。冒頭で紹介した動画だと、こんな感じ。
Launch("https://twitter.com/intent/tweet?text=%E3%81%BB%E3%81%92%E3%81%BB%E3%81%92&hashtags=PBIJP%2CJPAUG%2CJPSPS")
つまり、PowerAppsではLaunchしてるだけで、あとは全部Twitterの仕様なんですwww
なお、スマートフォンの場合はTweet投稿用のデフォルトアプリが起動します。
###Tweet Button 公式情報
https://developer.twitter.com/en/docs/twitter-for-websites/tweet-button/guides/web-intent.html
文字列はエンコードしてないとダメなどのルールがあります。アプリ内で動的に生成する場合は色々と処理を作る必要がありますが、単純に文字列やハッシュタグだけ指定したい場合は生成ツールを利用すると便利です。
#おまけ
Twitterの公式リソースからアイコンなどが入手できますよ。
#まとめ
- Launch 関数で PowerApps 以外のアプリも起動できるし、URLも投げられる
- Tweet Button の仕組みを丸ごとLaunch関数に指定することが可能
- 初期Textや、ハッシュタグなども簡単に初期指定できる
- 同じ仕組みのWebサービスなら、同様のテクニックが利用可能(なハズ)
PowerApps ってよりも、Webハックみたいな気もしなくも無いけど・・・
それでは、皆さま。素晴らしい Power Platform Life を!