残念ですが、これは少し長いです。アップグレード後に既存のスラックRTMボットを新しいMicrosoft Botフレームバックエンドに接続します
私はボットの2つのバージョンがあります:
バージョン1.0 - スラックRTMバックエンドに基づいています。これをインストールしたユーザーは数百人です。
バージョン2.0 - マイクロソフトボットフレームワーク(BF)、バックエンドに基づきます。数日前にリリースされてから数十人のユーザーがこのバージョンをインストールしました。
RTMの代わりにボットフレームワークのバックエンドを使用し、スラックの承認を受けて、スラックボットストアから新しいユーザーがすべてバージョン2.0をインストールするように、My Slackアプリをv2.0にアップグレードしました。期待どおりに良い。
しかし、たるみアプリの新バージョンいったんが公開されました - 私は古いRTMのバックエンドへの接続を切断し、新しいBFバックエンドに接続するためのスラックを期待しました。これは起こらず、数百人のユーザーが古いRTMバックエンドを使用しています。
はスラックサポートに連絡を - 彼らはそれを自動的に行うことができないと私はBFサービスからすでに認証トークンの接続を開始する必要が私に言いました。どうやってやるの?
私はそれらのチームのいずれかから情報を取得しようとしましたし、次のコードを使用してメッセージを送信しようとした:
var connector = new ConnectorClient(new Uri("https://slack.botframework.com/"));
var conversation = new ConversationAccount(true, "B0JMAJ8C8:T0ANH2CG3:C0ANKNHU5");
var botAccount = new ChannelAccount("B0JMAJ8C8:T0ANH2CG3", "Grasp");
IMessageActivity message = Activity.CreateMessageActivity();
message.From = botAccount;
message.Conversation = conversation;
message.ChannelId = "slack";
message.Text = "Upgrade Test!";
message.Locale = "en-En";
connector.Conversations.SendToConversation((Activity)message);
しかしSendToConversation()は私に例外を与えるための:
認証をマイクロソフトのApp ID 122dd7ca-XXXXX-XXXX-b679-c696e212987aは禁止ステータスコード で失敗しました
ユーザーが同じボットの新しいバージョンを再インストールしなくても、BFからの接続を強制できる他の方法はありますか?
ありがとうございます。ユーザーが「スラックに追加」ボタンをクリックすると、ユーザーが自分のスラックチームにボットの権限を付与し、ボットがスラックへの接続に使用するトークンを受信ところ