Slack

Versi integrasi: 23.0

Mengonfigurasi Slack agar dapat berfungsi dengan Google Security Operations

Untuk mengonfigurasi Slack agar berfungsi dengan Google SecOps, pertama-tama Anda perlu membuat Aplikasi Baru:

  1. Buka https://api.slack.com/, lalu klik Mulai Membangun.

  2. Masukkan parameter App Name dan Development Slack Workspace. Klik Create App.

    Membuat dialog Aplikasi Slack

  3. Buka tab OAuth & Izin, lalu scroll ke bawah ke bagian Cakupan.

    Tab OAuth & Izin

  4. Tambahkan Cakupan/Izin berikut. Slack merekomendasikan untuk menambahkan cakupan Token OAuth untuk bot, bukan izin pengguna:

    • channels:history
    • channels:manage
    • channels:read
    • chat:write
    • files:write
    • groups:history
    • groups:write
    • groups:read
    • im:read
    • im:write
    • im:history
    • mpim:read
    • mpim:history
    • mpim:write
    • users:read
    • users:read.email

    Dialog Cakupan Izin

  5. Untuk mengizinkan interaktivitas aplikasi untuk tindakan seperti "Kirim Pesan Interaktif" dan "Tunggu Balasan dengan Webhook", tambahkan URL permintaan untuk aplikasi Anda. Untuk informasi selengkapnya, lihat dokumen Menangani interaksi pengguna di aplikasi Slack yang tersedia dalam dokumentasi Slack.

  6. Scroll ke atas, lalu klik Instal Aplikasi ke Workspace.

    Tombol Instal Aplikasi ke Workspace

  7. Klik Izinkan.

    Akses izin LabBot
setelan

  8. Salin salah satu token yang dibuat, bergantung pada apakah Anda ingin menggunakan bot atau pengguna.

  9. Konfigurasi integrasi dengan salah satu token tersebut.

Jaringan

Fungsi Port Default Arah Protokol
API Multinilai Keluar apitoken

Mengonfigurasi integrasi Slack di Google SecOps

Untuk mendapatkan petunjuk mendetail terkait cara mengonfigurasi integrasi di Google SecOps, lihat Mengonfigurasi integrasi.

Parameter integrasi

Gunakan parameter berikut untuk mengonfigurasi integrasi:

Nama Tampilan Parameter Jenis Nilai Default Wajib diisi Deskripsi
Nama Instance String T/A Tidak Nama Instance yang ingin Anda konfigurasi integrasinya.
Deskripsi String T/A Tidak Deskripsi Instance.
Token API String T/A Ya Token API dibuat di konsol Slack.
Verifikasi SSL Kotak centang Tidak dicentang Tidak Gunakan kotak centang ini jika koneksi Slack Anda memerlukan verifikasi SSL (tidak dicentang secara default).
Menjalankan dari Jarak Jauh Kotak centang Tidak dicentang Tidak Centang kolom untuk menjalankan integrasi yang dikonfigurasi dari jarak jauh. Setelah dicentang, opsi akan muncul untuk memilih pengguna jarak jauh (agen).

Tindakan

Ajukan Pertanyaan

Deskripsi

Ajukan pertanyaan di Slack.

Parameter

Nama Parameter Jenis Nilai Default Wajib Deskripsi
Saluran String T/A Ya Target Channel.
Pertanyaan String T/A Ya Konten pertanyaan.

Run On

Tindakan ini dijalankan di semua entity.

Hasil Tindakan

Hasil Skrip
Nama Hasil Skrip Opsi Nilai Contoh
is_succeed Benar/Salah is_succeed:False
Hasil JSON
N/A

Blok Bangunan

Deskripsi

Buat blok pesan Slack berdasarkan kriteria input yang diberikan. Tindakan ini membuat blok dengan webhook yang nantinya dapat diteruskan ke tindakan "Kirim Pesan Interaktif" untuk mengirim pesan.

Parameter

Nama Parameter Jenis Nilai Default Wajib Deskripsi
Pertanyaan String T/A Ya Tentukan teks pertanyaan yang akan ditambahkan ke blok.
Tombol Jawaban String T/A Ya Tentukan tombol jawaban yang akan ditambahkan ke blok.
URL Dasar Siemplify String T/A Ya Tentukan URL dasar server Google SecOps yang akan ditambahkan ke pemblokiran.
ID kasus String T/A Ya Tentukan ID kasus Google SecOps yang akan ditambahkan ke blok.
UUID Token Webhook String T/A Ya Tentukan UUID token Webhook untuk memantau respons pengguna.

Contoh Kasus Penggunaan Playbook

Buat blok yang nantinya dapat diteruskan ke tindakan "Kirim Pesan Lanjutan" untuk mengirim pesan dengan blok.

Run On

Tindakan ini tidak dijalankan di entity.

Hasil Tindakan

Hasil Skrip
Nama Hasil Skrip Opsi Nilai Contoh
is_succeed Benar/Salah is_succeed:False
Hasil JSON
{
  "result": "[{\"type\": \"section\", \"block_id\": \"f99958f1-c1f1-4fdb-bb8b-a382d952d5bd\", \"text\": {\"type\": \"mrkdwn\", \"text\": \"yes?\", \"verbatim\": false}},{\"type\": \"actions\", \"block_id\": \"2850e684-472a-472f-9a32-96294cbe9046\", \"elements\": [{\"type\": \"button\", \"text\": {\"type\": \"plain_text\", \"text\": \"y\"}, \"action_id\": \"y\", \"url\": \"...\"}, {\"type\": \"button\", \"text\": {\"type\": \"plain_text\", \"text\": \"n\"}, \"action_id\": \"n\", \"url\": \"...\"}, {\"type\": \"button\", \"text\": {\"type\": \"plain_text\", \"text\": \"View Case in Siemplify\"}, \"action_id\": \"View Case in Siemplify\", \"url\": \"...\"}]}]"
}
Repositori Kasus
Jenis hasil Nilai / Deskripsi Jenis
Pesan output*

Tindakan tidak boleh gagal atau menghentikan eksekusi playbook:

Jika blok build berhasil dibuat (is_succeed=True): "Blok Slack berhasil dibuat."

Jika gagal membuat blok Slack karena beberapa error umum (is_succeed=False): "Failed to create a block because of the occurred error: {0}".format(error text)

Tindakan akan gagal dan menghentikan eksekusi playbook:

Jika URL berbasis webhook tidak ditentukan dalam konfigurasi integrasi: "Gagal menjalankan tindakan, tentukan parameter integrasi "URL Dasar Webhook"."

Jika error fatal, seperti kredensial salah, tidak ada koneksi ke server, atau lainnya dilaporkan: "Failed to execute "Send Advanced Message" action! Error adalah {0}".format(exception.stacktrace)

Umum

Membuat Saluran

Deskripsi

Buat channel Slack.

Parameter

Nama Parameter Jenis Nilai Default Wajib Deskripsi
Nama Channel String T/A Ya

Tentukan nama saluran.

Catatan: Nama channel hanya boleh berisi huruf kecil, angka, tanda hubung, dan garis bawah, serta maksimal 80 karakter.

ID Pengguna String T/A Ya

Tentukan ID pengguna yang harus diundang ke channel yang baru dibuat.

Contoh: U014JDHLW87, U08544ABC85.

Bersifat Pribadi Kotak centang Tidak dicentang Tidak Jika diaktifkan, tindakan ini akan membuat channel pribadi.

Run On

Tindakan ini dijalankan di semua entity.

Hasil Tindakan

Hasil Skrip
Nama Hasil Skrip Opsi Nilai Contoh
is_success Benar/Salah is_success:False
Hasil JSON
{
    "is_general": "False",
    "name_normalized": "12asd1237712318",
    "is_channel": "True",
    "creator": "U014J4NFQQG",
    "is_member": "True",
    "is_archived": "False",
    "topic": {
        "last_set": "0",
        "value": " ",
        "creator": " "
    },
    "parent_conversation": "None",
    "is_im": "False",
    "is_ext_shared": "False",
    "previous_names": [],
    "last_read": "0000000000.000000",
    "id": "C014S1G6DB4",
    "is_org_shared": "False",
    "pending_connected_team_ids": [],
    "is_pending_ext_shared": "False",
    "is_mpim": "False",
    "is_group": "False",
    "shared_team_ids": ["T013MJHSNCT"],
    "purpose": {
        "last_set": 0,
        "value": " ",
        "creator": " "
    },
    "is_private": "False",
    "is_shared": "False",
    "name": "12asd1237712318",
    "created": "1591194197",
    "pending_shared": [],
    "unlinked": 0,
    "priority": 0
}
Repositori Kasus
Jenis Hasil Nilai / Deskripsi Jenis
Pesan output*

Tindakan tidak boleh gagal atau menghentikan eksekusi playbook:

Jika "ok"== benar (true) dan parameter tindakan "Pribadi" adalah salah (false) dan parameter ID Pengguna kosong (is_success=true):

"Berhasil membuat saluran {0}".format(name)

Jika "ok"== benar (true) dan parameter tindakan "Private" benar (true) dan parameter ID Pengguna kosong (is_success=true): "Successfully created private channel {0}".format(name)

Jika "ok"== benar (true) dan parameter tindakan "Private" salah (false) serta ID Pengguna tersedia (is_success=true): "Berhasil membuat channel {0} dan menambahkan {1} pengguna".format(name, user_ids)

Jika "ok"== benar (true) dan parameter tindakan "Private" benar (true) dan ID Pengguna tersedia (is_success=true):

"Successfully created private channel {0} and added {1} users".format(name, user_ids)

Jika "ok" == false. Dalam permintaan pertama (is_success=false):

"Gagal membuat channel {0}. Alasan: {1}".format(name, value of error parameter from response)

Jika "ok" == false dalam permintaan kedua (is_success=false):

"Channel {0} telah dibuat, tetapi pengguna tidak diundang. Alasan:".format(name, value of error parameter from response)

If "ok" == false and error == "user_not_found" (is_success=false):

"Gagal menambahkan pengguna ke channel {0}. Alasan: {1} ID Pengguna yang ditentukan tidak ada di Slack".format(name, len(errors) from the response)

Tindakan akan gagal dan menghentikan eksekusi playbook:

Jika terjadi error fatal (kredensial salah, error koneksi, tindakan gagal): "Error saat menjalankan tindakan "Buat Channel". Alasan: {0}''.format(error.Stacktrace)

Umum

Mendapatkan Histori Percakapan Channel Atau Pengguna

Deskripsi

Mendapatkan histori percakapan untuk pengguna atau channel berdasarkan kriteria input yang diberikan. Tindakan ini berfungsi dengan ID saluran atau pengguna, yang dapat ditelusuri dengan tindakan "List Channels" atau "List User".

Parameter

Nama Parameter Jenis Nilai Default Wajib Deskripsi
ID Channel atau Pengguna String T/A Ya Tentukan ID channel atau pengguna untuk mengambil histori percakapan.
Jangka Waktu DDL

Sejam Terakhir

Nilai yang Mungkin:

  • Sejam Terakhir
  • 6 Jam Terakhir
  • 24 Jam Terakhir
  • Seminggu Terakhir
  • Sebulan Terakhir
  • Kustom
Tidak

Tentukan jangka waktu untuk hasil.

Jika "Kustom" dipilih, Anda juga perlu memberikan parameter "Waktu Mulai".

Waktu Mulai String T/A Tidak

Tentukan waktu mulai untuk hasil.

Parameter ini wajib diisi, jika "Kustom" dipilih untuk parameter "Rentang Waktu".

Format: ISO 8601.

Contoh: 2021-08-05T05:18:42Z

Waktu Berakhir String T/A Tidak

Tentukan waktu berakhir untuk hasil.

Jika tidak ada yang diberikan dan "Khusus" dipilih untuk parameter "Rentang Waktu", parameter ini akan menggunakan waktu saat ini.

Format: ISO 8601.

Contoh: 2021-08-05T05:18:42Z.

Jumlah Maksimum Data yang Akan Ditampilkan Bilangan bulat 20 Tidak

Tentukan jumlah data yang akan ditampilkan.

Jika tidak ada yang diberikan, tindakan akan menampilkan 20 data.

Contoh Kasus Penggunaan Playbook

Mengambil histori percakapan untuk menyelidiki peringatan.

Dijalankan pada

Tindakan ini tidak dijalankan di entity.

Hasil Tindakan

Hasil Skrip
Nama Hasil Skrip Opsi Nilai Contoh
is_success Benar/Salah is_success:False
Hasil JSON
[
  {
    "bot_id": "B02D9QYM7P0",
    "type": "message",
    "text": "test",
    "user": "U02D1RPLVST",
    "ts": "1665988448.627219",
    "app_id": "A02DDGD942Z",
    "team": "T02CX3N6B0B",
    "bot_profile": {
      "id": "B02D9QYM7P0",
      "deleted": false,
      "name": "Siemplify-test",
      "updated": 1630908872,
      "app_id": "A02DDGD942Z",
      "icons": {
        "image_36": "https://a.slack-edge.com/80588/img/plugins/app/bot_36.png",
        "image_48": "https://a.slack-edge.com/80588/img/plugins/app/bot_48.png",
        "image_72": "https://a.slack-edge.com/80588/img/plugins/app/service_72.png"
      },
      "team_id": "T02CX3N6B0B"
    },
    "blocks": [
      {
        "type": "rich_text",
        "block_id": "JbVUf",
        "elements": [
          {
            "type": "rich_text_section",
            "elements": [
              {
                "type": "text",
                "text": "test"
              }
            ]
          }
        ]
      }
    ]
  }
]
Repositori Kasus
Jenis hasil Nilai / Deskripsi Jenis
Pesan output*

Tindakan tidak boleh gagal atau menghentikan eksekusi playbook:

Jika histori percakapan berhasil ditemukan (is_succeed=True): "Histori percakapan berhasil diambil."

Jika percakapan dengan ID yang diberikan tidak ditemukan (is_succeed=False): "Gagal menemukan percakapan untuk ID {0} yang diberikan".format(channel_or_user_id)

Jika percakapan dengan ID yang diberikan ditemukan dan tidak ada pesan yang ditemukan untuk jangka waktu yang diberikan (is_succeed=False): "Percakapan dengan ID {0} ditemukan, tetapi tidak ada pesan yang ditemukan untuk jangka waktu yang diberikan.".format(channel_or_user_id)

Tindakan akan gagal dan menghentikan eksekusi playbook:

Jika error fatal, seperti kredensial salah, tidak ada koneksi ke server, atau lainnya dilaporkan: "Failed to execute "Send Advanced Message" action! Error adalah {0}".format(exception.stacktrace)

Jika nilai yang tidak valid diberikan untuk parameter "Jumlah Maksimum Data yang Akan Ditampilkan": "Error saat menjalankan tindakan "{nama tindakan}". Alasan: "Nilai tidak valid diberikan untuk "Jumlah Maksimum Data yang Akan Ditampilkan": . Angka positif harus diberikan"."

Jika "Kustom" dipilih untuk parameter "Rentang Waktu" dan parameter "Waktu Mulai" tidak ditentukan: "Error saat menjalankan tindakan "{nama tindakan}". Alasan: "Waktu mulai tidak diberikan untuk Jangka Waktu kustom.""

Umum

Mendapatkan Detail Pengguna

Deskripsi

Mendapatkan detail pengguna Slack berdasarkan kriteria input yang diberikan.

Parameter

Nama Parameter Jenis Nilai Default Wajib Deskripsi
Telusuri Menurut DDL

Email

Nilai yang Mungkin:

  • Email
  • Nama
  • ID
Ya Tentukan parameter untuk menelusuri detail pengguna.
Nilai Pengguna String T/A Ya Tentukan nilai pengguna yang akan ditelusuri.

Contoh Kasus Penggunaan Playbook

Dapatkan detail pengguna untuk meningkatkan kualitas pemrosesan pemberitahuan di Google SecOps.

Run On

Tindakan ini tidak dijalankan di entity.

Hasil Tindakan

Hasil Skrip
Nama Hasil Skrip Opsi Nilai Contoh
is_success Benar/Salah is_success:False
Hasil JSON
{
  "id": "U043FPEMATG",
  "team_id": "T02CX3N6B0B",
  "name": "example.user",
  "deleted": false,
  "color": "3c989f",
  "real_name": "Example User",
  "tz": "Europe/Europe",
  "tz_label": "Central European Summer Time",
  "tz_offset": 7200,
  "profile": {
    "title": "",
    "phone": "",
    "skype": "",
    "real_name": "Example User",
    "real_name_normalized": "Example User",
    "display_name": "Example User",
    "display_name_normalized": "Example User",
    "fields": null,
    "status_text": "",
    "status_emoji": "",
    "status_emoji_display_info": [],
    "status_expiration": 0,
    "avatar_hash": "gc297456197c",
    "email": "example.user@example.com",
    "first_name": "Example",
    "last_name": "User",
    "image_24": "https://secure.gravatar.com/avatar/c297456197c0de7baa8c4b9a2398ecd1.jpg?s=24&d=https%3A%2F%2Fa.slack-edge.com%2Fdf10d%2Fimg%2Favatars%2Fava_0011-24.png",
    "image_32": "https://secure.gravatar.com/avatar/c297456197c0de7baa8c4b9a2398ecd1.jpg?s=32&d=https%3A%2F%2Fa.slack-edge.com%2Fdf10d%2Fimg%2Favatars%2Fava_0011-32.png",
    "image_48": "https://secure.gravatar.com/avatar/c297456197c0de7baa8c4b9a2398ecd1.jpg?s=48&d=https%3A%2F%2Fa.slack-edge.com%2Fdf10d%2Fimg%2Favatars%2Fava_0011-48.png",
    "image_72": "https://secure.gravatar.com/avatar/c297456197c0de7baa8c4b9a2398ecd1.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2Fdf10d%2Fimg%2Favatars%2Fava_0011-72.png",
    "image_192": "https://secure.gravatar.com/avatar/c297456197c0de7baa8c4b9a2398ecd1.jpg?s=192&d=https%3A%2F%2Fa.slack-edge.com%2Fdf10d%2Fimg%2Favatars%2Fava_0011-192.png",
    "image_512": "https://secure.gravatar.com/avatar/c297456197c0de7baa8c4b9a2398ecd1.jpg?s=512&d=https%3A%2F%2Fa.slack-edge.com%2Fdf10d%2Fimg%2Favatars%2Fava_0011-512.png",
    "status_text_canonical": "",
    "team": "T02CX3N6B0B"
  },
  "is_admin": false,
  "is_owner": false,
  "is_primary_owner": false,
  "is_restricted": false,
  "is_ultra_restricted": false,
  "is_bot": false,
  "is_app_user": false,
  "updated": 1663939355,
  "is_email_confirmed": true,
  "who_can_share_contact_card": "EVERYONE"
}
Repositori Kasus
Jenis hasil Nilai / Deskripsi Jenis
Pesan output\*

Tindakan tidak boleh gagal atau menghentikan eksekusi playbook:

Jika detail pengguna berhasil ditemukan (is_succeed=True): "Detail pengguna berhasil diambil."

Jika detail pengguna tidak ditemukan berdasarkan kriteria yang diberikan (is_succeed=False): "Gagal menemukan detail pengguna berdasarkan kriteria yang diberikan: Telusuri menurut: <0> Nilai pengguna: <1>".format(search_by, user_value)

Jika detail pengguna ditemukan berdasarkan nama, dan lebih dari satu kecocokan ditemukan (is_succeed=True): "Untuk kriteria penelusuran yang diberikan, beberapa kecocokan ditemukan: Telusuri menurut: <0> Nilai pengguna: <1>".format(search_by, user_value)

Jika pengguna tidak ditemukan (is_succeed=False) karena beberapa error umum: "Failed to fetch user details because of occurred error: (0}" (teks error)

Tindakan akan gagal dan menghentikan eksekusi playbook:

Jika error fatal, seperti kredensial salah, tidak ada koneksi ke server, atau lainnya dilaporkan: "Failed to execute "Send Advanced Message" action! Error adalah {0}".format(exception.stacktrace)

Umum
Tabel Repositori Kasus

Nama Tabel: Detail Pengguna Slack

Kolom Tabel:

  • ID
  • ID Tim
  • Nama
  • Nama Asli
  • Nama Tampilan
  • Nama Depan
  • Nama Belakang
  • Waktu Diperbarui
  • Zona Waktu
  • Judul
  • Telepon
  • Adalah Admin
  • Adalah Pemilik
  • Adalah Pemilik Utama
  • Dibatasi
  • Sangat Dibatasi
  • Adalah Bot
  • Adalah Pengguna Aplikasi
  • Apakah Email Dikonfirmasi
Umum

Mendapatkan Detail Pengguna menurut ID

Deskripsi

Mendapatkan detail pengguna berdasarkan ID-nya.

Parameter

Nama Parameter Jenis Nilai Default Wajib Deskripsi
ID Pengguna String T/A Ya ID pengguna.

Run On

Tindakan ini dijalankan di semua entity.

Hasil Tindakan

Hasil Skrip
Nama Hasil Skrip Opsi Nilai Contoh
is_succeed Benar/Salah is_succeed:False
Hasil JSON
N/A

Mencantumkan Saluran

Deskripsi

Mendapatkan daftar saluran Slack.

Parameter

T/A

Run On

Tindakan ini dijalankan di semua entity.

Hasil Tindakan

Hasil Skrip
Nama Hasil Skrip Opsi Nilai Contoh
is_succeed Benar/Salah is_succeed:False
Hasil JSON
[
    {
        "is_org_shared": false,
        "is_general": true,
        "name_normalized": "general",
        "name": "general",
        "is_channel": true,
        "created": 1575550599,
        "is_member": true,
        "is_mpim": false,
        "is_archived": false,
        "creator": "URALP6WRJ",
        "topic": {
            "last_set": 1575550599,
            "value": "Company-wide announcements and work-based matters",
            "creator": "URALP6WRJ"
        },
        "num_members": 1,
        "purpose": {
            "last_set": 1575550599,
            "value": "This channel is for workspace-wide communication and announcements. All members are in this channel.",
            "creator": "URALP6WRJ"
        },
        "members": ["URALP6WRJ"],
        "unlinked": 0,
        "is_shared": false,
        "id": "CRB4ZHGNR",
        "is_private": false,
        "previous_names": []
    }, {
        "is_org_shared": false,
        "is_general": false,
        "name_normalized": "random",
        "name": "random",
        "is_channel": true,
        "created": 1575550599,
        "is_member": true,
        "is_mpim": false,
        "is_archived": false,
        "creator": "URALP6WRJ",
        "topic": {
            "last_set": 1575550599,
            "value": "Non-work banter and water cooler conversation",
            "creator": "URALP6WRJ"
        },
        "num_members": 1,
        "purpose": {
            "last_set": 1575550599,
            "value": "A place for non-work-related flimflam, faffing, hodge-podge or jibber-jabber you'd prefer to keep out of more focused work-related channels.",
            "creator": "URALP6WRJ"
        },
        "members": ["URALP6WRJ"],
        "unlinked": 0,
        "is_shared": false,
        "id": "CRD0KF9T9",
        "is_private": false,
        "previous_names": []
    }, {
        "is_org_shared": false,
        "is_general": false,
        "name_normalized": "website",
        "name": "website",
        "is_channel": true,
        "created": 1575550600,
        "is_member": true,
        "is_mpim": false,
        "is_archived": false,
        "creator": "URALP6WRJ",
        "topic": {
            "last_set": 0,
            "value": " ",
            "creator": " "
        },
        "num_members": 1,
        "purpose": {
            "last_set": 0,
            "value": " ",
            "creator": " "
        },
        "members": ["URALP6WRJ"],
        "unlinked": 0,
        "is_shared": false,
        "id": "CRDAUBZP0",
        "is_private": false,
        "previous_names": []
    }
]
Repositori Kasus
Jenis Hasil Nilai / Deskripsi Jenis
Pesan output*

Tindakan tidak boleh gagal atau menghentikan eksekusi playbook:

Jika "ok" == false (is_success=false): "Gagal membuat daftar saluran. Alasan: {0}".format(nilai parameter error dari respons)

Umum

Mencantumkan Pengguna

Deskripsi

Tindakan ini memiliki peran untuk mendapatkan daftar pengguna Slack.

Parameter

T/A

Run On

Tindakan ini dijalankan di semua entity.

Hasil Tindakan

Hasil Skrip
Nama Hasil Skrip Opsi Nilai Contoh
is_succeed Benar/Salah is_succeed:False
Hasil JSON
[
    {
        "profile": {
            "status_text": " ",
            "display_name": " ",
            "status_emoji": " ",
            "title": " ",
            "status_text_canonical": " ",
            "team": "TRALP6VNY",
            "real_name": "somerealname",
            "image_24": "https://secure.gravatar.com/avatar/2d62053d7f735bc096de59639eb8f350.jpg?s=24&d=https%3A%2F%2Fa.slack-edge.com%2Fdf10d%2Fimg%2Favatars%2Fava_0022-24.png",
            "phone": " ",
            "real_name_normalized": "somerealnamen",
            "image_512": "https://secure.gravatar.com/avatar/2d62053d7f735bc096de59639eb8f350.jpg?s=512&d=https%3A%2F%2Fa.slack-edge.com%2Fdf10d%2Fimg%2Favatars%2Fava_0022-512.png",
            "image_72": "https://secure.gravatar.com/avatar/2d62053d7f735bc096de59639eb8f350.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2Fdf10d%2Fimg%2Favatars%2Fava_0022-72.png",
            "image_32": "https://secure.gravatar.com/avatar/2d62053d7f735bc096de59639eb8f350.jpg?s=32&d=https%3A%2F%2Fa.slack-edge.com%2Fdf10d%2Fimg%2Favatars%2Fava_0022-32.png",
            "image_48": "https://secure.gravatar.com/avatar/2d62053d7f735bc096de59639eb8f350.jpg?s=48&d=https%3A%2F%2Fa.slack-edge.com%2Fdf10d%2Fimg%2Favatars%2Fava_0022-48.png",
            "skype": " ",
            "avatar_hash": "g2d62053d7f7",
            "display_name_normalized": " ",
            "status_expiration": 0,
            "email": "mail@seimplify.co",
            "image_192": "https://secure.gravatar.com/avatar/2d62053d7f735bc096de59639eb8f350.jpg?s=192&d=https%3A%2F%2Fa.slack-edge.com%2Fdf10d%2Fimg%2Favatars%2Fava_0022-192.png"
        },
        "updated": 1575550598,
        "tz": "Europe/Moscow",
        "name": "name",
        "deleted": false,
        "is_app_user": false,
        "is_bot": false,
        "tz_label": "Moscow Time",
        "real_name": "realname",
        "color": "9f69e7",
        "team_id": "TRALP6VNY",
        "is_admin": true,
        "is_ultra_restricted": false,
        "is_restricted": false,
        "is_owner": true,
        "tz_offset": 14400,
        "has_2fa": false,
        "id": "URALP6WRJ",
        "is_primary_owner": true
    }, {
        "profile": {
            "last_name": " ",
            "status_emoji": " ",
            "display_name_normalized": "Slackbot",
            "image_32": "https://a.slack-edge.com/80588/img/slackbot_32.png",
            "skype": " ",
            "image_72": "https://a.slack-edge.com/80588/img/slackbot_72.png",
            "status_expiration": 0,
            "image_192": "https://a.slack-edge.com/80588/marketing/img/avatars/slackbot/avatar-slackbot.png",
            "first_name": "slackbot",
            "display_name": "Slackbot",
            "title": " ",
            "real_name_normalized": "Slackbot",
            "always_active": true,
            "status_text_canonical": " ",
            "image_24": "https://a.slack-edge.com/80588/img/slackbot_24.png",
            "phone": " ",
            "image_48": "https://a.slack-edge.com/80588/img/slackbot_48.png",
            "fields": null,
            "real_name": "Slackbot",
            "image_512": "https://a.slack-edge.com/80588/img/slackbot_512.png",
            "team": "TRALP6VNY",
            "avatar_hash": "sv41d8cd98f0",
            "status_text": " "
        },
        "updated": 0,
        "tz": null,
        "name": "slackbot",
        "deleted": false,
        "is_app_user": false,
        "is_bot": false,
        "tz_label": "Pacific Standard Time",
        "real_name": "Slackbot",
        "color": "757575",
        "team_id": "TRALP6VNY",
        "is_admin": false,
        "is_ultra_restricted": false,
        "is_restricted": false,
        "is_owner": false,
        "tz_offset": -28800,
        "id": "USLACKBOT",
        "is_primary_owner": false
    }
]

Ping

Deskripsi

Uji Konektivitas.

Parameter

T/A

Run On

Tindakan ini dijalankan di semua entity.

Hasil Tindakan

Hasil Skrip
Nama Hasil Skrip Opsi Nilai Contoh
is_succeed Benar/Salah is_succeed:False
Hasil JSON
N/A

Mengganti Nama Saluran

Deskripsi

Ganti nama saluran Slack.

Parameter

Nama Parameter Jenis Nilai Default Wajib Deskripsi
Nama Channel String T/A Tidak

Tentukan nama saluran yang ingin Anda ganti namanya.

Catatan: Jika parameter "Nama Channel" dan "ID Channel" ditentukan, tindakan hanya berfungsi dengan ID.

ID Saluran String T/A Tidak

Tentukan ID channel yang ingin Anda ganti namanya.

Catatan: Jika parameter "Nama Channel" dan "ID Channel" ditentukan, tindakan hanya berfungsi dengan ID.

Nama Baru String T/A Ya

Tentukan nama baru untuk saluran.

Catatan: Nama channel hanya boleh berisi huruf kecil, angka, tanda hubung, dan garis bawah, serta maksimal 80 karakter.

Run On

Tindakan ini tidak dijalankan di entity.

Hasil Tindakan

Hasil Skrip
Nama Hasil Skrip Opsi Nilai Contoh
is_succeed Benar/Salah is_succeed:False
Hasil JSON

Jika "ok" == true:

{
    "channel": {
        "id": "C013ELA1YVC",
        "name": "project_old",
        "is_channel": true,
        "is_group": false,
        "is_im": false,
        "created": 1589444943,
        "is_archived": false,
        "is_general": false,
        "unlinked": 0,
        "name_normalized": "project_old",
        "is_shared": false,
        "parent_conversation": null,
        "creator": "U0136KZ0P5M",
        "is_ext_shared": false,
        "is_org_shared": false,
        "shared_team_ids": [
            "T013MJHSNCT"
        ],
        "pending_shared": [],
        "pending_connected_team_ids": [],
        "is_pending_ext_shared": false,
        "is_member": true,
        "is_private": false,
        "is_mpim": false,
        "last_read": "1595242486.000300",
        "topic": {
            "value": "",
            "creator": "",
            "last_set": 0
        },
        "purpose": {
            "value": "This *channel* is for working on a project. Hold meetings, share docs, and make decisions together with your team.",
            "creator": "U0136KZ0P5M",
            "last_set": 1589444943
        },
        "previous_names": [
            "project_new",
            "project"
        ]
    },
    "ok": true,
    "warning": "missing_charset",
    "response_metadata": {
        "warnings": [
            "missing_charset"
        ]
    }
}

Jika "ok" == false:

{
    "ok": false,
    "error": "name_taken",
    "warning": "missing_charset",
    "response_metadata": {
        "warnings": [
            "missing_charset"
        ]
    }
}
Repositori Kasus
Jenis Hasil Nilai / Deskripsi Jenis
Pesan output*

Tindakan tidak boleh gagal atau menghentikan eksekusi playbook:

Jika "ok"== benar (is_success=true): "Berhasil mengganti nama saluran {0} menjadi {1} {0}".format(name/ID, new name)

Jika "ok"== false (is_success=false): "Tindakan tidak dapat mengganti nama channel {0}. Alasan: {1}".format(name,error dari respons)

Jika channel tidak ditemukan berdasarkan nama channel (is_success=false): "Tindakan tidak dapat mengganti nama channel {0}. Alasan: Channel tidak ditemukan".format(name)

Tindakan akan gagal dan menghentikan eksekusi playbook:

Jika error fatal (kredensial salah, error koneksi, aplikasi tindakan error) dilaporkan: "Error saat menjalankan tindakan "Ganti Nama Channel". Alasan: {0}''.format(error.Stacktrace)

Jika parameter "Nama Channel" dan "ID Channel" tidak ditentukan: "Error saat menjalankan tindakan "Ganti Nama Channel". Alasan: Anda harus menentukan 'Nama Channel' atau 'ID Channel'."

Umum

Mengirim Pesan Lanjutan

Deskripsi

Mengirim pesan lanjutan ke channel atau pengguna Slack. Tindakan ini memberikan kemampuan untuk mengirim pesan teks sederhana dan pesan blok Slack kaya konten dengan tombol, pemformatan lanjutan, dan lainnya. Untuk mengetahui informasi selengkapnya tentang pesan blok, lihat Slack Block Kit .

Tindakan ini dapat digunakan bersama dengan tindakan "Tunggu Balasan dengan Webhook" untuk mengirim pesan blokir dengan webhook kepada pengguna terlebih dahulu, dan kemudian dengan tindakan "Tunggu Balasan dengan Webhook" untuk memeriksa respons pengguna.

Parameter

Nama Parameter Jenis Nilai Default Wajib Deskripsi
Jenis Pesan DDL

Teks

Nilai yang Mungkin:

  • Teks
  • Blokir
Ya Tentukan jenis pesan yang akan dikirim.
Jenis Penerima DDL

Nama

Nilai yang Mungkin:

  • Nama
  • ID
  • Email
Ya

Tentukan nama channel atau pengguna (nama lengkap) untuk mengirim pesan.

Secara opsional, tentukan ID saluran atau pengguna, atau alamat email pengguna.

Penerima String T/A Ya Tentukan penerima yang akan dikirimi pesan.
Pesan String T/A Ya Tentukan konten pesan yang akan dikirim.

Contoh Kasus Penggunaan Playbook

Mengirim pesan dengan konten multimedia seperti tombol, link, atau gambar.

Run On

Tindakan ini tidak dijalankan di entity.

Hasil Tindakan

Hasil Skrip
Nama Hasil Skrip Opsi Nilai Contoh
is_succeed Benar/Salah is_succeed:False
Hasil JSON
[
  {
    "Entity": "U043FPEMATG",
    "EntityResult": {
      "channel": "D044C3DUMB2",
      "message": {
        "bot_id": "B02D9QYM7P0",
        "type": "message",
        "text": "test msg",
        "user": "U02D1RPLVST",
        "ts": "1666008612.116169",
        "app_id": "A02DDGD942Z",
        "team": "T02CX3N6B0B",
        "bot_profile": {
          "id": "B02D9QYM7P0",
          "app_id": "A02DDGD942Z",
          "name": "test",
          "icons": {
            "image_36": "https://a.slack-edge.com/80588/img/plugins/app/bot_36.png",
            "image_48": "https://a.slack-edge.com/80588/img/plugins/app/bot_48.png",
            "image_72": "https://a.slack-edge.com/80588/img/plugins/app/service_72.png"
          },
          "deleted": false,
          "updated": 1630908872,
          "team_id": "T02CX3N6B0B"
        },
        "blocks": [
          {
            "type": "rich_text",
            "block_id": "RJvg",
            "elements": [
              {
                "type": "rich_text_section",
                "elements": [
                  {
                    "type": "text",
                    "text": "test msg"
                  }
                ]
              }
            ]
          }
        ]
      },
      "ts": "1666008612.116169",
      "ok": true
    }
  }
]
Repositori Kasus
Jenis hasil Nilai / Deskripsi Jenis
Pesan output*

Tindakan tidak boleh gagal atau menghentikan eksekusi playbook:

Jika pesan berhasil dikirim (is_succeed=True): "Pesan berhasil dikirim"

Jika pesan tidak berhasil dikirim (is_succeed=False) karena penerima yang ditentukan tidak ditemukan: "Message was not sent as the specified recipient {0} with type {1} was not found." (Pesan tidak dikirim karena penerima {0} dengan jenis {1} yang ditentukan tidak ditemukan.) (penerima, jenis penerima)

Jika pesan tidak berhasil dikirim (is_succeed=False) karena beberapa error umum: "Pesan tidak dikirim karena terjadi error: (0}" (teks error)

Tindakan akan gagal dan menghentikan eksekusi playbook:

Jika error fatal, seperti kredensial salah, tidak ada koneksi ke server, atau lainnya dilaporkan: "Failed to execute "Send Advanced Message" action! Error adalah {0}".format(exception.stacktrace)

Umum

Mengirim Pesan Interaktif

Deskripsi

Kirim pesan interaktif ke saluran atau pengguna dan, jika berdasarkan UUID Webhook yang diberikan, periksa respons pengguna. Tindakan ini mirip dengan tindakan "Kirim Pesan Lanjutan", tetapi hanya memungkinkan pengiriman konten blok (bukan pesan teks biasa) dan juga memerlukan UUID webhook untuk memeriksa respons pengguna terhadap webhook.

Tindakan bersifat asinkron, sesuaikan waktu tunggu tindakan di IDE sebagaimana mestinya.

Konfigurasi aplikasi Slack yang digunakan dalam integrasi untuk mengizinkan pesan interaktif. Untuk mengetahui informasi selengkapnya tentang konfigurasi aplikasi Slack, lihat Menyiapkan aplikasi untuk pesan interaktif.

Parameter

Nama Parameter Jenis Nilai Default Wajib Deskripsi
Jenis Penerima DDL

Nama

Nilai yang Mungkin:

  • Nama
  • ID
  • Email
Ya

Tentukan nama channel atau pengguna (nama lengkap) untuk mengirim pesan.

Secara opsional, tentukan ID saluran atau pengguna, atau alamat email pengguna.

Penerima String T/A Ya Tentukan penerima yang akan dikirimi pesan.
Pesan String T/A Ya Tentukan konten pesan yang akan dikirim.
UUID Token Webhook String T/A Ya Tentukan UUID token webhook untuk memantau respons pengguna.

Contoh Kasus Penggunaan Playbook

Mengirim pesan dengan konten multimedia seperti tombol, link, atau gambar.

Run On

Tindakan ini tidak dijalankan di entity.

Hasil Tindakan

Hasil Skrip
Nama Hasil Skrip Opsi Nilai Contoh
is_succeed Benar/Salah is_succeed:False
Hasil JSON
[
  {
    "uuid": "10953f8e-7ef8-4bde-9e9b-212005e0e737",
    "type": "web",
    "token_id": "47289ba5-277e-4ab9-9238-eb31080530ca",
    "ip": "0000:a000000:ad80:000:20ea:653:fb97",
    "hostname": "webhook.site",
    "method": "GET",
    "user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/15.4 Safari/605.1.15",
    "content": "",
    "query": {
      "Answer": "yes"
    },
    "headers": {
      "connection": [
        "close"
      ],
      "accept-encoding": [
        "gzip, deflate, br"
      ],
      "accept-language": [
        "en-US,en;q=0.9"
      ],
      "user-agent": [
        "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/15.4 Safari/605.1.15"
      ],
      "cookie": [
        "_ga=GA"
      ],
      "accept": [
        "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"
      ],
      "host": [
        "webhook.site"
      ],
      "content-length": [
        ""
      ],
      "content-type": [
        ""
      ]
    },
    "url": "https://webhook.site/47289ba5-277e-4ab9-9238-xx0000000xx?Answer=yes",
    "size": 0,
    "files": [],
    "created_at": "2022-10-14 19:45:40",
    "updated_at": "2022-10-14 19:45:40",
    "sorting": 1665776740032262,
    "custom_action_output": []
  }
]
Repositori Kasus
Jenis hasil Nilai / Deskripsi Jenis
Pesan output*

Tindakan tidak boleh gagal atau menghentikan eksekusi playbook:

Jika pesan berhasil dikirim (is_succeed=True): "Pesan berhasil dikirim"

Jika pesan tidak berhasil dikirim (is_succeed=False) karena penerima yang ditentukan tidak ditemukan: "Message was not sent as the specified recipient {0} with type {1} was not found." (Pesan tidak dikirim karena penerima {0} dengan jenis {1} yang ditentukan tidak ditemukan.) (penerima, jenis penerima)

Jika pesan tidak berhasil dikirim (is_succeed=False) karena beberapa error umum: "Pesan tidak dikirim karena terjadi error: (0}" (teks error)

Pesan Case Wall untuk fungsi asinkron:

Pesan dinding kasus untuk iterasi saat menunggu balasan: "Menunggu respons terhadap pesan yang dikirim dengan webhook. Webhook url with uuid: {0}".format(webhook url from integration configuration + web token uuid)

Jika respons berhasil diambil (is_succeed=True): "Berhasil mengambil respons pengguna ke webhook. Konten respons: {0}".format(payload yang dikirim dari pengguna ke webhook)

Jika gagal mengambil respons hingga waktu tunggu habis: "Respons pengguna terhadap webhook tidak ditemukan dan tindakan dihentikan karena waktu tunggu habis."

Tindakan akan gagal dan menghentikan eksekusi playbook:

Jika URL berbasis webhook tidak ditentukan dalam konfigurasi integrasi dan token UUID webhook ditentukan: "Gagal menjalankan tindakan, tentukan parameter integrasi "URL Dasar Webhook". "

Jika error fatal, seperti kredensial salah, tidak ada koneksi ke server, atau lainnya dilaporkan: "Failed to execute "Send Interactive Message" action! Error adalah {0}".format(exception.stacktrace)

Umum

Kirim Pesan

Deskripsi

Kirim pesan ke satu atau beberapa pengguna/channel.

Parameter

Nama Parameter Jenis Nilai Default Wajib Deskripsi
Saluran String T/A Ya

Nama channel Slack atau alamat email pengguna yang akan dikirimi pesan.

Nilai yang dimasukkan harus dipisahkan dengan koma.

Pesan String T/A Ya Konten pesan.

Run On

Tindakan ini dijalankan di semua entity.

Hasil Tindakan

Hasil Skrip
Nama Hasil Skrip Opsi Nilai Contoh
is_succeed Benar/Salah is_succeed:False
Hasil JSON
N/A

Upload File

Deskripsi

Tambahkan file ke Slack dan bagikan kepada rekan tim untuk membantu Anda berkolaborasi. Anda dapat memilih dan mengupload file ke Slack dari perangkat atau aplikasi pengelolaan file pilihan Anda. File yang diupload disimpan, dapat ditelusuri, dan dapat dibagikan di seluruh ruang kerja Anda.

Parameter

Nama Parameter Jenis Nilai Default Wajib Deskripsi
Nama File String T/A Ya Nama File Target.
Jalur File String T/A Ya Jalur File Target.
Saluran String T/A Ya Target Channel.

Run On

Tindakan ini dijalankan di semua entity.

Hasil Tindakan

Hasil Skrip
Nama Hasil Skrip Opsi Nilai Contoh
is_succeed Benar/Salah is_succeed:False
Hasil JSON
N/A

Menunggu Balasan

Deskripsi

Menunggu balasan rangkaian pesan untuk pesan di saluran.

Parameter

Nama Parameter Jenis Nilai Default Wajib Deskripsi
Saluran String T/A Ya Target Channel.
Stempel Waktu Pesan String T/A Ya Stempel waktu pesan untuk mendapatkan balasan (dalam milidetik).
ID Saluran String T/A Tidak ID saluran Slack target.

Kasus penggunaan Playbook

Playbook dengan tindakan kirim pesan dan setelah menunggu balasan (dengan saluran sebagai placeholder dari tindakan sebelumnya - ID Saluran)

Run On

Tindakan ini dijalankan di semua entity.

Hasil Tindakan

Hasil Skrip
Nama Hasil Skrip Opsi Nilai Contoh
is_succeed Benar/Salah is_succeed:False
Hasil JSON
N/A

Menunggu Balasan dengan Webhook

Deskripsi

Menunggu pengguna membalas pesan yang dikirim dengan webhook. Tindakan ini secara berkala memeriksa webhook yang diberikan untuk melihat apakah pengguna telah memberikan balasan. Tindakan dapat digunakan dengan tindakan "Kirim Pesan Lanjutan", jika pesan blok dengan webhook dikirim, untuk memeriksa apakah respons pengguna diberikan ke webhook.

Tindakan ini bersifat asinkron, sesuaikan nilai waktu tunggu skrip di IDE dengan tepat.

Parameter

Nama Parameter Jenis Nilai Default Wajib Deskripsi
UUID Token Webhook String T/A Ya Tentukan UUID token webhook untuk memantau respons pengguna.

Contoh Kasus Penggunaan Playbook

Menunggu balasan pesan dengan webhook.

Run On

Tindakan ini tidak dijalankan di entity.

Hasil Tindakan

Hasil Skrip
Nama Hasil Skrip Opsi Nilai Contoh
is_succeed Benar/Salah is_succeed:False
Hasil JSON
{
  "client_msg_id": "00000000-0000-0000-0000-000000000000",
  "type": "message",
  "text": "Yes",
  "user": "U0000000",
  "ts": "1578390603.001200",
  "team": "T0000000",
  "blocks": [
    {
      "type": "rich_text",
      "block_id": "2Bb=",
      "elements": [
        {
          "type": "rich_text_section",
          "elements": [
            {
              "type": "text",
              "text": "Example"
            }
          ]
        }
      ]
    }
  ],
  "thread_ts": "1578390492.001100",
  "parent_user_id": "U0000000"
}
Repositori Kasus
Jenis hasil Nilai / Deskripsi Jenis
Pesan output*

Tindakan tidak boleh gagal atau menghentikan eksekusi playbook:

Pesan dinding kasus untuk iterasi saat menunggu balasan: "Menunggu respons terhadap pesan yang dikirim dengan webhook. Webhook url with uuid: {0}".format(webhook url from integration configuration + web token uuid)

Jika respons berhasil diambil (is_succeed=True): "Successfully fetched the user's response to a webhook! Konten respons: {0}".format(payload yang dikirim dari pengguna ke webhook)

Jika gagal mengambil respons hingga waktu tunggu habis: "Respons pengguna terhadap webhook tidak ditemukan dan tindakan dihentikan karena waktu tunggu habis."

Tindakan akan gagal dan menghentikan eksekusi playbook:

Jika URL berbasis webhook tidak ditentukan dalam konfigurasi integrasi dan token UUID webhook ditentukan: "Gagal menjalankan tindakan, tentukan parameter integrasi "URL Dasar Webhook". "

Jika error fatal, seperti kredensial salah, tidak ada koneksi ke server, atau lainnya dilaporkan: "Failed to execute "Send Advanced Message" action! Error adalah {0}".format(exception.stacktrace)

Umum

Perlu bantuan lain? Dapatkan jawaban dari anggota Komunitas dan profesional Google SecOps.