README.rst 1.82 KB

Struktur Tabel Instant Messaging Gateway

Repository ini berisi struktur tabel dan beberapa fungsi terkait paket Debian bernama im-gw.

Sebelum Anda menggunakan ini pastikan Anda sudah memasangnya. Berikut penjelasan singkatnya.

Tambahkan GPG key ke apt sources keyring:

$ wget -qO - https://repo.opensipkd.com/debian/gpg.key | sudo apt-key add -

Buat file /etc/apt/sources.list.d/opensipkd.list:

deb [ arch=amd64 ] https://repo.opensipkd.com/debian jessie main

Perbarui daftar paket:

$ sudo apt-get update

Pasang paketnya:

$ sudo apt-get install im-gw

Sesuaikan database profile di /etc/im/gw/config.py, lalu:

$ sudo dpkg-reconfigure im-gw

Pasang paket pendukung terkait jalur SMS dan email:

$ sudo apt-get install im-modem im-mail

Setelah itu lanjutkan menggunakan repository ini untuk mengirim email:

import base64
import sys
from sqlalchemy import create_engine
from sqlalchemy.orm import sessionmaker
from imgw.mail import kirim

db_url = 'postgresql://sugiana:FIXME@localhost/imgw'
engine = create_engine(db_url)
session_factory = sessionmaker(bind=engine)
DBSession = session_factory()

files = []
filename = 'test.pdf'
with open(filename, 'rb') as f:
    content = f.read()
if sys.version_info.major == 2:
    content = base64.encodestring(content)
else:
    content = base64.encodebytes(content)
files.append([filename, content])

p = dict(
      penerima='sugiana@opensipkd.com', subject='Uji coba',
      pesan='Hello world', files=files)
a = kirim(DBSession, p)
DBSession.flush()
DBSession.commit()

Sedangkan untuk mengirim SMS:

from imgw.sms import kirim

p = dict(penerima='+628123456789', pesan='Hello world')
a = kirim(p)
DBSession.add(a)
DBSession.flush()
DBSession.commit()

Selamat mencoba.