diff --git a/app/notifications/receive_notifications.py b/app/notifications/receive_notifications.py index 08122fb41..9c6b63c48 100644 --- a/app/notifications/receive_notifications.py +++ b/app/notifications/receive_notifications.py @@ -1,5 +1,5 @@ from flask import Blueprint -from flask import current_app +from flask import current_app, jsonify from flask import request from app.errors import register_errors @@ -15,3 +15,13 @@ def receive_mmg_sms(): current_app.logger.info("Recieve notification form data: {}".format(post_data)) return "RECEIVED" + + +@receive_notifications_blueprint.route('/notifications/sms/receive/firetext', methods=['POST']) +def receive_firetext_sms(): + post_data = request.get_json() + current_app.logger.info("Received Firetext notification form data: {}".format(post_data)) + + return jsonify({ + "status": "ok" + }), 200 diff --git a/tests/app/notifications/test_receive_notification.py b/tests/app/notifications/test_receive_notification.py index f325fe6f9..91eac620a 100644 --- a/tests/app/notifications/test_receive_notification.py +++ b/tests/app/notifications/test_receive_notification.py @@ -16,3 +16,16 @@ def test_receive_notification_returns_received_to_mmg(client): assert response.status_code == 200 assert response.get_data(as_text=True) == 'RECEIVED' + + +def test_receive_notification_returns_received_to_firetext(client): + data = {"some": "thing"} + response = client.post( + path='/notifications/sms/receive/firetext', + data=json.dumps(data), + headers=[('Content-Type', 'application/json')]) + + assert response.status_code == 200 + result = json.loads(response.get_data(as_text=True)) + + assert result['status'] == 'ok'