コード例 #1
0
	def test_database(self):
		db = Database()
		db.create_and_empty_tables()
		db.log(1234, 'test', 'content')
		logs = db.fetch_logs()
		self.assertEqual(logs[0]['event'],'test')
		db.new_participant(123456789, 987654321, '2014-05-04', '2014-06-05')
		db.update_participant(123456789,"twilio", 1111111111)
		participants = db.load_participants()
		self.assertEqual(participants[0][0],123456789)
		db.log_email('test@test','$0.36')
		emails = db.fetch_email()
		self.assertEqual(emails[0]['email'],'test@test')
		db.create_and_empty_tables()
コード例 #2
0
def valid_time(date_text): 
    try:
        return datetime.strptime(date_text, '%Y-%m-%d')
    except:
        return False

def valid_number(number):
    if len(str(number)) == 11:
        return int(number)
    return False


db = Database()
participants = dict()
participant_tuples = db.load_participants()
for p in participant_tuples:
    participants[p[0]] = Participant(p[0],p[1],p[2],valid_time(p[3]),p[4],p[5])
    participants[p[0]].next_message()

from flask import Flask, request, Response, render_template
app = Flask(__name__)

@app.route('/receiver', methods=['POST'])
def respond_to_text():
    number = valid_number(request.form['From'][1:])
    request_text = request.form['Body']
    if number:
        db.log(number, 'received', request_text)
    if number in participants: # message received from a number we've recently messaged
        if participants[number].expecting: