]> jfr.im git - erebus.git/blame - modules/sms.py
trivia - updated example json
[erebus.git] / modules / sms.py
CommitLineData
7e64e1a2 1# Erebus IRC bot - Author: Erebus Team
2# simple module example
3# This file is released into the public domain; see http://unlicense.org/
4
5# module info
6modinfo = {
7 'author': 'Erebus Team',
8 'license': 'public domain',
9 'compatible': [1], # compatible module API versions
10 'depends': [], # other modules required to work properly?
11}
12
13# preamble
14import modlib
15lib = modlib.modlib(__name__)
16modstart = lib.modstart
17modstop = lib.modstop
18
19# module code
20from twilio.rest import TwilioRestClient
21
22def client(bot):
23 return TwilioRestClient(
24 bot.parent.cfg.get('sms', 'account_sid'),
25 bot.parent.cfg.get('sms', 'auth_token')
26 )
27
28
3c23ab38 29@lib.hook(needchan=False, glevel=lib.MANAGER)
7e64e1a2 30def reply(bot, user, chan, realtarget, *args):
3c23ab38 31 raise NotImplementedError
7e64e1a2 32
33@lib.hook(('sms','w'), needchan=False, glevel=lib.OWNER)
5f03d045 34@lib.help("<number> <message>", "send an SMS")
7e64e1a2 35def sms(bot, user, chan, realtarget, *args):
36 number = "+%s" % (args[0])
37 message = ' '.join(args[1:])
38 client(bot).messages.create(body=message, to=number, from_=bot.parent.cfg.get('sms', 'mynumber'))
39 bot.msg(user, "Sent message to %s" % (number))