私はpython-rtmbotのプラグインを開発しており、次のようにそのプラグインから短いリンクを出力しようとしています:
<http://google.com|test>
. 私の目標は、これを Slack に表示することです:テスト- 完全な URL を表示せずにクリック可能なリンク。
ただし、私の Slack ボットは生のテキストを表示するだけです<http://google.com|test>
。ファイルrtmbot.pyのoutput()という関数を変更しました。
def output(self):
for plugin in self.bot_plugins:
limiter = False
for output in plugin.do_output():
channel = self.slack_client.server.channels.find(output[0])
if channel != None and output[1] != None:
if limiter == True:
time.sleep(.1)
limiter = False
message = output[1].encode('ascii','ignore') + "<http://google.com|test>"
#channel.send_message("{}".format(message))
self.slack_client.api_call('chat.postMessage', channel=output[0], text=message, as_user=True)
limiter = True
channel.send_message()を使用する代わりに、slackclientパッケージのSlackClientのインスタンスであるself.slack_client.api_call()を使用するように切り替えました。リンクは正しく表示されるようになりましたが、表示に時間がかかります (出力が遅くなります)。
ショートリンク機能でchannel.send_message()を引き続き使用する方法はありますか? その他のアイデア/提案は大歓迎です。