Name Last Update
imgw Loading commit data...
.gitignore Loading commit data...
CHANGES.txt Loading commit data...
MANIFEST.in Loading commit data...
README.rst Loading commit data...
setup.py Loading commit data...

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.