Allow port configuration
[mercuryms.git] / mms-download.py
1 import os
2 import requests
3 from flask import Flask, request
4 from twilio.twiml.messaging_response import MessagingResponse
5
6 app = Flask(__name__)
7
8 @app.route("/mms", methods=['POST'])
9 def sms_reply():
10 """Respond to incoming multimedia messages with a confirmed download text."""
11 if request.form['NumMedia'] is not None:
12 urls = [request.form['MediaUrl' + str(idx)] for idx in range(int(request.form['NumMedia']))]
13 photos = {url.split("/")[-1]: requests.get(url) for url in urls}
14 for identifier, photo in photos.items():
15 with open(identifier + '.jpg', 'wb') as f:
16 f.write(photo.content)
17 resp = MessagingResponse()
18 resp.message("Upload received!")
19 return str(resp)
20
21 if __name__ == '__main__':
22 env_port = os.environ.get("MERCURYMS_PORT")
23 port = int(env_port) if env_port is not None else 9092
24 app.run(host='0.0.0.0', port=port, debug=True)