Help us understand the problem. What is going on with this article?

Shifterでなかなか実装されないアレを勝手に実装してみた

Shifter Advent Calendar 2019 の20日目の投稿です。

よなよなShifterのイースターエッグで遊んでいるんですが一向に上達しない立花です。
https://www.getshifter.io/hoge

5rxqj-ytf1z.gif

ちょうど一年前に行われたShifterのミートアップでShifterへ108個のフィードバックを出させてもらいました。

フィードバック
image.png

フィードバックの進捗チェック
image.png

私のフィードバックの効果があったのかなかったのかは定かではありませんが、
今年もたくさんの新機能がリリースされました。

今年、強化された機能の一つにTeam(旧Organisation)があります。
Shifter内のサイト毎にユーザーや権限を割り振ることができるため、
複数人、複数社での開発/運用が非常に楽になります。

実際に弊社でも、弊社のShifterアカウントを使って、
外部のデザイナー/コーダーさんにWordPressなサイトを構築してもらい、
エンドユーザーさんがコンテンツ運営を行うという案件をリリースすることができました。

テレサの丘 https://teresa-oka.com/
image.png

デザインやサイト制作を担当していただいたComfortable Designさんは初めてのShifterでの開発でしたが、

「UIが分かりやすく英語がわからなくても特にストレスなくできました。」
「ジェネレートする時にメモができるのでバージョン管理的な使い方が出来るものよかった。」

との感想をいただいております。

また、同様に今年追加されたWordPressへのログインレス機能により、
記事の更新が非常に簡単なフローとなりました。

素のWordPressに近い使い勝手になったので、
ニュースなどのコンテンツ更新は、テレサの丘のスタッフさんがご自身で行なっています。

し・か・し...!

機能リクエスト中の中にデプロイ時のSlackへの通知があります。
ブログでも検討中と言及されていますが、まだ今日現在リリースされていないようです チラッ ]ω-)

https://www.digitalcube.jp/shifter/8619/

通知の設定
Slackなどへの通知が欲しい場合はNetlify側のDeploy notificationsで設定できます。
ShifterではWebhookではなく外部への通知機能として機能拡張を検討中です。

でも、Webhookができるんなら...と思い勝手に実装してみました!

Slack側の設定

ShifterのWebhookはPOSTでのbodyが指定ができないので、
どうにかしてGETでslackへメッセージを送る方法を探しました。

https://qiita.com/mizuki_takahashi/items/3f77c2e5b6142563ce66

Slackのドキュメントではchat.postMessageはPOSTと指定がありますが、
この記事を見ると(今でいう)Legacy tokensを使えば(?)GETでもできそうな雰囲気です。

まずは以下URLからtokenを発行します。
https://api.slack.com/custom-integrations/legacy-tokens

SlackAPIへのリクエストURLはこんな感じです。

https://slack.com/api/chat.postMessage?token=xoxp-00000-00000&channel=general&as_user=false&username=GetShifter&icon_emoji=:shifter:&text=https%3A%2F%2Fheptagon.co.jp+%E3%81%8C%E6%9B%B4%E6%96%B0%E3%81%95%E3%82%8C%E3%81%BE%E3%81%97%E3%81%9F+by+Shifter
key value 備考
token 払い出したトークン
channel 投稿したいSlackチャンネル
as_user false trueの場合、差出人がToken発行ユーザーとなる。falseの場合Botが差出人となる。
username 投稿者名
icon_emoji 投稿者のアイコン 事前にSlackにShifterアイコンをslackに登録しておきましょう
text 投稿したいメッセージ 要URLエンコーディング

ブラウザやcurlでアクセスしてslackへ送信できたらOKです。

Shifter側の設定

あとは、ShifterのWebhookで追加してあげます。

image.png

これでサイトの静的化(Generate Artifact)をしてあげると...

image.png
(いろいろ頑張った形跡も併せてご覧ください)

ということでなかなか対応してくれないSlack通知を頑張って実装してみました〜
この技を使わずに済む日を心待ちにしております!

最後に

Shifterチームはユーザーの声にしっかりと寄り添い、ユーザーに必要な機能から開発をしてもらっていると感じています。

おかげさまで私もShifterLifeに非常に満足しています。ありがとうございます!

ユーザーとしっかり向き合ってくれて、ユーザーもともに成長していけることもShifterの大きな魅力だと思います!
これからもShifterを使い倒し、みんなでたくさんのフィードバックを送りましょう!

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away