Membuat Notifikasi Slack dengan Python (WebHook)

Hi, kali ini saya ingin berbagi tutorial tentang membuat notifikasi Slack dengan Python. Script-nya sedikit panjang karena tidak menggunakan library python slack notification yang sudah jadi.

python-slack-lukmanlab
Membuat Notifikasi Slack dengan Python

Saya menggunakan urllib3 untuk melakukan hook ke Slack karena ingin memasangnya pada AWS Lambda Function. Jika teman-teman menggunakanya pada environment lain silahkan menggunakan library yang lebih mudah dan punya method banyak. Contoh: SlackClient, SlackNotification.

Instalasi library bisa menggunakan Pip:

pip install urllib3

Berikut code-nya:

import urllib3
import json

WEBHOOK_URL = 'https://hooks.slack.com/services/ABCDEFGHIJ/ABCDEFGHIJ/xxxxxxxxxxxxxxxxxxxx'

def postSlack(message):
    encoded_data = json.dumps(message).encode('utf-8')
    http = urllib3.PoolManager()
    response = http.request('POST',
        WEBHOOK_URL, body=encoded_data,
        headers={'Content-Type': 'application/json'}
    )
    status_code = response.status
    if status_code != 200:
        raise ValueError(
            'Request to slack returned an error %s'
            % (status_code)
        )

data = {'text': 'Testing!'}

postSlack(data)

Kuy, silahkan dicoba. Apabila ada yang error bisa kita diskusikan dibawah.

Code lengkap sudah saya push ke GitHub juga ya.

Leave a Reply