「Microsoft Teams」>「チャネル内のメッセージで応答します」というアクションがあります。このアクションはチャネルのスレッドに返信を行うためのアクションのようです。
ですが、2022年5月31日 現在 、このアクションで返信をしようとするとエラーになります。
数日前に、Twitterでこのエラーのことをつぶやいたら回避方法を教えてくれるかたが現れました。そのとき教えてもらった、回避方法の話です。
まずはエラーを再現してみる
「Microsoft Teams」>「チャネル内のメッセージで応答します」を配置します。
botではなくユーザーとして返信を行います。そのため、「投稿者」欄で"User"を選びます。
「投稿先」も選択します。"チャネル"か"カスタム値の入力"のどちらかを選べるようです。
チャネルかチャネル以外か…
チャネルで返信を行いたいので「チャネル」を選択します。
「チャネル」を選択しました。
Σ(´・ω・`)
フローを保存とかエラーチェックとかするまでもなくエラーになったよ。
(´・ω・`) ショボーン
エラーメッセージ内容:
API 'teams' 操作 'GetUnifiedActionSchema' への動的操作要求は、状態コード 'BadRequest' で失敗しました。これは、入力パラメーターが無効であることを示している可能性があります。エラー応答: { "error": { "code": "MissingOrInvalidTeamsFlowbotRecipientType", "message": "指定された Teams flowbot 受信者の種類が見つからないか、無効です。" } }
「あなたが選んだ種類の投稿先は存在しないよ」という内容のメッセージが表示されました。そんなばかな。
エラーの発生原因は? 発生している範囲は?
アクションのコードビューを見たところ、ドロップダウンで選択した"チャネル"という文字列が「location」パラメータに渡されています。ここに本来渡されるべき値が"channel" であるため、日本語での"チャネル"がアクション側で理解できていない状況のように見えます。 つまり実装のバグだと思われます。
Twitterで同じエラーの目撃情報を何名かから教えていただきました。どうやら特定の環境のみで発生しているのではなく、(いま判明している範囲では)すべての環境で発生しているようです。
なぜこんな事象が発生したのか?
Teams のコネクタには以前「チャットまたはチャネルでメッセージを投稿する 」というアクションがありました。そのアクションでは期待通り、Teamsへの返信を行うことができていました。しかしながら、現在、新規で作成するフローではこのアクションを配置することができなくなっています。
「チャットまたはチャネルでメッセージを投稿する 」このアクションがメニューから非表示になる前に既にフローに配置しているものは、現時点で継続して使用できています。
この「チャットまたはチャネルでメッセージを投稿する 」アクションに代わるものが「チャネル内のメッセージで応答します」アクションです。新しいアクションであるために機能として不十分な状態がまだ残っている状況なのかもしれません。
エラーの回避方法は?
回避方法は以下の通りです。
「投稿先」欄で"カスタム値の入力"を選択します。そして、「channel」という文字列を手入力します。
「c」「h」「a」「n」「n」「e」「l」... (´・ω・`)カタタ
Σ(´・ω・`)
追加の入力欄が表示されました。どうやら期待通り動作している雰囲気。
これなら返信を実行できそう。
(´・ω・`)
(´・ω・`) できた。
この状態でコードビューを表示した図が以下の通りです。フォームに表示された各種パラメータが表示されているのが分かります。
そのようなわけで、このアクションで返信を行う際には「カスタム値」に "channel" と入力してください。おそらく、しばらく待てばこの不具合も直されると思います。それまでの暫定対処です。
最後に
この情報は、私がTwitter で困っていたら、おいしみさんが教えてくれました。
※ コードビューにあるパラメータを見たら云々も含めて。
おいしみさんの情報でブログ各のはこれで2回目です。ありがとうございます。
投稿先をカスタム値「Channel」にすると動きます
— おいしみ (@ksgiksg) May 5, 2022
なぜかは知りません…(∵) pic.twitter.com/MujSenCh73
今回は以上です。