There's a facility for sending email:
http://web2py.com/books/default/chapter/29/08#Sending-emails

Here is my code that sends SMSes through 4 services:

def send_sms(provider, src, dst, txt, uid, uname, pword):

    import urllib, json, base64, requests

    settings.plivo_send = 'https://api.plivo.com/v1/Account/%s/Message/'
    settings.twilio_send = 
'https://api.twilio.com/2010-04-01/Accounts/%s/Messages'
    settings.bandwidth_send = 
'https://api.catapult.inetwork.com/v1/users/%s/messages'
    settings.nexmo_send = 
'https://rest.nexmo.com/sms/json?api_key=%s&api_secret=%s&from=%s&to=%s&text=%s'

    if provider=='plivo':
        data = json.dumps({'src': src, 'dst': dst, 'text': txt})
        url = settings.plivo_send % uname
        headers = {'Content-Type': 'application/json',
            'Authorization': 'Basic %s' % base64.b64encode('%s:%s' % 
(uname, pword))}

    if provider=='twilio':
        data = urllib.urlencode({'From': '+%s' % src, 'To': dst, 'Body': 
txt})
        url = settings.twilio_send % uname
        headers = {'Authorization': 'Basic %s' % base64.b64encode('%s:%s' % 
(uname, pword))}

    if provider=='bandwidth':
        data = json.dumps({'from': '+%s' % src, 'to': '+%s' % dst, 'text': 
txt})
        logger.debug(settings.bandwidth_send % uid)
        url = settings.bandwidth_send % uid
        headers = {'Content-Type': 'application/json',
            'Authorization': 'Basic %s' % base64.b64encode('%s:%s' % 
(uname, pword))}

    if provider=='nexmo':
        url = settings.nexmo_send % (uid, uname, src, dst, txt)

    r = requests.post(url=url, headers=headers, data=data)

    return r

-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
"web2py-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to