slack-api:如何设置包含url的文本的格式?

时间:2019-03-22 14:15:40

标签: java slack-api

我想使用allbegrey Slack API在闲置状态下发布消息。该消息包含链接。怎么做?

  <dependency>
      <groupId>com.github.allbegray</groupId>
      <artifactId>slack-api</artifactId>
      <version>1.7.0.RELEASE</version>
    </dependency>

信息:

我的信息与此类似。

enter image description here

Udpate

如果要将简单消息发布到频道。并且您的消息包含一个URL。您可以使用松弛标记来格式化邮件,然后调用postMessage(String channel, String text)。可以,但是如果您有附件,则无法使用。


我的邮件带有附件,我这样做是这样的:

        val text = "Nostrum <https://codepen.io/anon/pen/VRRMNJ|similique> dolores eaque vero voluptatibus illum quibusdam ex sapiente!"
        val message = "Lorem ipsum dolor sit amet consectetur, adipisicing elit. Expedita tempora asperiores corporis hic quidem dicta maiores odit illo perferendis quaerat. Nostrum <https://codepen.io/anon/pen/VRRMNJ|similique> dolores eaque vero voluptatibus illum quibusdam ex sapiente!"


        val webApiClient = SlackWebApiClientImpl(slackApiToken, null, 8000)
        val channel = webApiClient.openDirectMessageChannel(author.slackId)
        val method = ChatPostMessageMethod(channel, text)
        val attachment = Attachment()

        attachment.author_name = author.name
        attachment.author_icon = author.profileImageUrl
        attachment.author_link = "https://XXXX.slack.com/team/${author.slackId}"
        attachment.text =  message
        attachment.pretext = message

        method.attachments = listOf(attachment)
        method.isLink_names = true
        webApiClient.postMessage(method)

这样做,我收到消息,但没有可单击的链接。

1 个答案:

答案 0 :(得分:2)

我从未使用过该库,但是经过粗略的浏览后,它似乎将所有标准API方法公开为类方法。

因此,您应该能够使用通常的Slack标记来格式化短信。

以下是有关如何在文本中包含URL的示例:

Check out this link at <http://www.google.com|Google>. Its pretty cool.

只需在您的消息postMessage()中调用方法text,它就会起作用。