23
23
account_sid = "account_sid"
24
24
auth_token = "auth_token"
25
25
client = TwilioRestClient (account_sid , auth_token )
26
+ phone_number = "phone_number" # +10000000000
26
27
27
28
# create an S3 & Dynamo session
28
29
s3 = boto3 .resource ('s3' )
@@ -40,6 +41,10 @@ def sample_filter(im):
40
41
filter_image = ImageOps .colorize (ImageOps .grayscale (im ), black , white )
41
42
return filter_image
42
43
44
+ def send_message (event , response ):
45
+ client .messages .create (to = event ['fromNumber' ], from_ = phone_number ,
46
+ body = response )
47
+
43
48
def lambda_handler (event , context ):
44
49
45
50
message = event ['body' ]
@@ -53,11 +58,15 @@ def lambda_handler(event, context):
53
58
# a new user
54
59
if response_dynamo ['Count' ] == 0 :
55
60
if len (message ) == 0 :
56
- return "Please send us an SMS with your name first!"
61
+ response = "Please send us an SMS with your name first!"
62
+ send_message (event , response )
63
+ return response
57
64
else :
58
65
name = message .split (" " )
59
66
table_users .put_item (Item = {'fromNumber' : from_number , 'name' : name [0 ]})
60
- return "We've added {0} to the system! Now send us a selfie! " .format (name [0 ])
67
+ response = "We've added {0} to the system! Now send us a selfie! " .format (name [0 ])
68
+ send_message (event , response )
69
+ return response
61
70
else :
62
71
name = response_dynamo ['Items' ][0 ]['name' ]
63
72
@@ -86,6 +95,8 @@ def lambda_handler(event, context):
86
95
87
96
s3 .Bucket (bucket ).put_object (Key = key , Body = im_data , ACL = 'public-read' , ContentType = 'image/png' , Metadata = m_data )
88
97
else :
89
- twilio_resp = 'No image found'
90
-
98
+
99
+ twilio_resp = "No image found, try sending a selfie!"
100
+
101
+ send_message (event , twilio_resp )
91
102
return twilio_resp
0 commit comments