Penurunan Slack untuk Tautan Tidak Menyelesaikan


159

Apa yang saya lakukan salah? Tidak ada satu pun dari contoh tautan Penurunan Biaya yang berfungsi sejauh ini di aplikasi Slack saya.

Saya menempelkan pada contoh di bawah ini dalam obrolan di aplikasi Slack saya. Saya mendapatkan contoh ini dari sintaks slack markdown dan masih memperlakukannya sebagai teks literal di Aplikasi Slack:

[like this](http://someurl)

jadi saya akhirnya melihat bahwa alih-alih hanya "seperti ini" sebagai tautan di Slack chat.

Atau mungkin hal di atas salah, dalam hal ini pertanyaan saya kemudian bagaimana Anda membuat tautan secara eksplisit di Slack? Saya ingin beberapa teks yang saya tentukan dapat diklik ke URL tertentu (hyperlink).


1
Tampaknya menjadi bug yang tidak terselesaikan (tidak bekerja untuk saya juga) github.com/slackhq/hubot-slack/issues/114
Petr Gazarov

tidak hanya mereka yang tidak mengimplementasikan fungsi ini, mereka juga tidak memasukkan tema gelap! ini keterlaluan untuk alat yang begitu populer .. di sisi lain ini adalah bagaimana alat yang populer menjadi tidak populer tiba-tiba ...
pkaramol

Jawaban:


195

Slack saat ini tidak mendukung hyperlink; lihat tautan ini yang mengatakan:

Catatan : Hyperlink kata-kata dalam pesan Slack tidak dimungkinkan.


MEMPERBARUI:

Slack akhirnya menambahkan fungsi ini ke antarmuka obrolan ( sumber ) mereka:

  • Pilih teks, lalu klik ikon tautan di bilah alat pemformatan
  • Pilih teks, lalu tekan Cmd+ Shift+ Udi Mac atau Ctrl+ Shift+ Udi Windows / Linux.

Salin tautan yang ingin Anda bagikan dan tempel di bidang kosong di bawah Tautan , lalu klik Simpan .


14
Pertanyaannya adalah khusus tentang slack-apiyang tidak mendukung hyperlink teks.
spencer.sm

5
Ini sangat disayangkan. Hyperlink telah ada selama lebih dari 20 tahun, sulit untuk menganggap ini adalah masalah keamanan. Menyisipkan tautan super panjang benar-benar menjengkelkan, setidaknya slack harus menambahkan layanan pemendek URL otomatis (yang tentu saja opsional).
superarts.org

1
Sepertinya ini sekarang mungkin. Tapi saya tidak bisa membuatnya bekerja. Tidak peduli apa yang saya lakukan, Slack hanya menerima Arraysebagai pesan di saluran. Lihat contoh di sini: api.slack.com/messaging/composing/formatting#linking-urls
TJ Zimmerman

153

Slack menggunakan aroma markdown sendiri:
Slack Markdown Links bekerja dengan cara berikut:<http://someurl|like this>

Catatan: Anda hanya dapat melakukan ini melalui Slack API dan BUKAN hanya sebagai pesan sederhana yang Anda kirim melalui klien Slack.

Pembuat Pesan Contoh Info Lainnya di Documents
masukkan deskripsi gambar di sini


63
apakah ada cara untuk melakukan ini melalui klien Slack?
Chris Miller

5
Saya kira tidak. Slack secara eksplisit tidak ingin input berlebih yang rumit. Lebih banyak di bagian bawah artikel bantuan ini: get.slack.help/hc/en-us/articles/…
Wilhelm Klopp

262
Salah satu cara mereka dapat menghindari komplikasi berlebih adalah tetap menggunakan format yang populer dan mapan ... seperti Markdown. ;-)
joeytwiddle

74
+ joeytwiddle Itu berarti Slack sengaja melakukan sesuatu yang ramah pengguna dan intuitif, yang saya sangat yakin melanggar kebijakan perusahaan mereka.
Peter R



18

Mulai hari ini, 2020.02.14, di salah satu contoh Slack saya anggota, saya dapat membuat / menempelkan hyperlink! 🎉

tangkapan layar hyperlink

Contoh menyisipkan hyperlink dari salinan info rapat Tim ke Slack:

rekatkan contoh hyperlink


Slack telah memperbarui dokumentasinya . Masih belum ada cara penurunan harga untuk melakukannya 😢, artinya [blah](https://stackoverflow.com)tidak berfungsi.


Fitur rapi, pilih beberapa teks dan CTRL + V ketika URL ada di clipboard dan itu menciptakan hyperlink 🥳

pilih teks & ctrl + v video]


Melalui beberapa rekayasa terbalik, saya dapat menempatkan teks pada Windows Clipboard melalui C # dan membuatnya untuk disisipkan ke Slack:

var textToDisplay = "Test";
var url = "https://stackoverflow.com";
var arbitraryText = "Mike D.";
var dataObject = new DataObject();
//to my surprise, the Fragment comments ARE required
dataObject.SetData(DataFormats.Html, @$"<html><body>
    <!--StartFragment-->
    <a href=""{url}"">{textToDisplay}</a>
    <!--EndFragment-->
    </body></html>");
//have to set the Text format too otherwise it won't work
dataObject.SetData(DataFormats.Text, arbitraryText);
Clipboard.SetDataObject(dataObject);

6
Terpilih karena ini pada dasarnya jawabannya. Saya suka paste-to-linkify, love hotkey ... sayangnya saya telah menonaktifkan WYSIWYG mereka sehingga berhenti mengacaukan hal-hal lain yang saya coba tulis, dan sepertinya tidak ada alternatif bagi kita yang bahagia menggunakan format markdown (-ish) dalam teks biasa.
Tyler James Young

@Tyler . Saya senang saya bukan satu-satunya yang melakukan ini juga!
frakman1

1
Saya berhasil membuatnya bekerja tanpa komentar fragmen
tennabey

5

Ruben 's jawaban akan bekerja, tetapi akan terlihat seperti file upload diberi judul, seperti yang terlihat di sini: File untitled diposting ke Slack . Dengan sedikit modifikasi, Anda dapat dengan mudah memposting pesan yang tampak alami yang menampilkan hyperlink yang berfungsi seperti yang Anda lihat di sini: postingan Slack yang tampak alami dengan hyperlink dengan menggunakan metode chat.postMessage Slack api alih-alih "files.upload" dan mengadopsi Slack's format pesan sendiri alih-alih Penurunan harga. Itu akan dilakukan seperti ini:

curl -F text="*<https://someurl|like this>*" -F as_user=true -F link_names=true -F channel=C1.....7L -F token=xoxp-... https://slack.com/api/chat.postMessage

The link_names=trueArgumen tidak digunakan dalam contoh ini, tetapi berguna untuk dapat @menyebutkan pengguna dan #mengacu pada saluran.


5

Sertakan URL secara langsung dalam markdownteks dan akan diubah secara otomatis oleh server menjadi tautan.

tulis seperti ini. (Ini hanya akan bekerja dengan menggunakan slack API. Slack bots / slack apps)

<http://www.example.com|This message *is* a link>

Referensi: https://api.slack.com/messaging/composing/formatting#linking-urls


4
Agak menyesatkan untuk memulai posting ini dengan "Untuk menautkan ke URL dengan santai dalam percakapan" dan pada akhirnya menyatakan bahwa ini hanya berfungsi jika Anda memposting pesan melalui API (yang bukan bagaimana saya dengan santai berpartisipasi dalam percakapan sebagai manusia).
Tyler James Young

4

Sebagai alternatif untuk Slack Pesan (tercakup dalam Wilhem 's jawaban ), Anda dapat membuat Slack Posts melalui API dan penggunaan setidaknya beberapa penurunan harga. Keduanya menciptakan <h2><a href="https://someurl">like this</a></h2>:

curl -F filetype=post -F content="# [like this](https://someurl)" -F channels=C1.....7L -F token=xoxp-... https://slack.com/api/files.upload

atau swap content="..."untukfile=@post.md

curl -F filetype=post -F file=@post.md -F channels=C1.....7L -F token=xoxp-... https://slack.com/api/files.upload

Ini menggunakan files.upload . Saya pikir cara termudah untuk mencoba memposting seperti diri Anda adalah dengan token warisan . Dapatkan ID saluran dari URI saluran.


0

Saya menulis kode ini untuk mengonversi tautan penurunan harga dalam tubuh teks ke dalam format tautan yang diharapkan slack:

      // Pretty hacky, convert [sup](http://foo.com) to <http://foo.com|sup>
      const reformatLinks = /\[(.*?)\]\((.*?)\)/g
      const slackBody = body.replace(reformatLinks, (_m, text, url) => `<${url}|${text}>`)

Dari apa yang saya tahu slack tidak mendukung tautan gambar di dalam teks.


-2

Sangat terlambat ke pesta tetapi saya baru-baru ini menemukan bahwa Anda dapat menggunakan penyingkat URL untuk membuat tautan https yang kemudian dapat Anda rujuk menggunakan tautan penurunan harga.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.