【Slack】Replyの指定先をExcel等から引用したい

お世話になっております。

Slackの特定の書き込みにReplyを送信しています。
Replyを送信したい投稿が固定かつ、送信先のチャンネルに投稿が多いため、
GetMessageを使用せず、投稿情報(ConversationID等)をExcelか何かに保存しておいて
そのデータを使用してReplyを送信したいと思っています。

SlackのReplyのアクティビティには「UiPath.Slack.Model.Message」型を使用するのですが、
上手く代入することができません。
「UiPath.Slack.Model.Message」型にExcel等からデータを代入することはできないでしょうか。
もしくは、Excel等のデータからReplyを送る方法はありますでしょうか。

よろしくお願いいたします。

UiPath.Slack.Model.Message型の変数を宣言し、Newしたオブジェクトの「ConversationId」と「ts」プロパティに値を入れたものを使用すれば、Replyアクティビティで返信できます。(他のプロパティは無くても大丈夫です)

以下、代入コードイメージ

msg = New uipath.Slack.Model.Message()
msg.ConversationId = "XXXXXXXX" ※メッセージのConversationID
msg.Ts = "XXXXXXXXXXX.XXXXXX" ※ メッセージのタイムスタンプ値
1 Like

お世話になっております。
今回も回答ありがとうございます!

Newしてから代入するのですね。

回答と見比べていて気付いたのですが、現在使っているアクティビティがv0.3.1のものであり、
使用している変数も「UiPath.Slack.Models.Message」型を使用しておりました…。
記載間違いや、説明不足で申し訳ありません。

回答いただいたものを活用して最新バージョンのアクティビティで
リプライを送ることは可能だったのですが、
運用に使用したい物が古いバーション(v0.3.1)のため、
よろしければそちらのアドバイスもいただけないでしょうか。

古いバージョンでは変数配列に「Ts」の項目がなく、おそらく同じような項目として
「Id」が存在するのですが「Ts」への代入方法と同じ方法を行うと
「割り当てられません」と表示されてしまいます。
こちら解決策ありましたらご教授いただけますと助かります…。

なるほど、そうなんですね。

ざっくり「UiPath.Slack.xx」のコードを調べましたが、v0.3.1の「Models.Message」とv1.0.3の「Model.Message」では、Tsプロパティのアクセス修飾子(許可)が違うようです。

「UiPath.Slack.Models.Message」は「UiPath.Slack.Models.SlackEntity」を継承しており、
継承元のSlackEntityには「ts」プロパティがありますが、継承先では隠蔽されていてアクセスできません。
引数付きコンストラクタ「public Message(SearchResponse.MatchedMessage msg)」を経由すればできそうに見えますが
そのためには「Uipath.Slack.Responses.SearchResponse.MatchedMessage」を別途生成する必要があり、手数が必要な割に出来るか微妙です。

と技術的な話になってしまいました。不快であればすいません。

v0.3.1では難しそうなのでv1.0.3を使うか、InvokeCodeでSlackのAPIを直接呼び出すほうが楽で良いかもと思います。

1 Like

古いバージョンの情報を調べてくださり、ありがとうございます。
難しそうということが分かっただけでも大きいです!

不快だなんて…非常に感謝しております。

v1.0.3にすることや、記載いただいた情報をもとに対応策を検討してみます。

This topic was automatically closed 3 days after the last reply. New replies are no longer allowed.