davidawad
5/7/2018 - 11:47 PM

fuck.md

├── messaging
│   ├── __init__.py
│   ├── fb_messenger.py
│   └── slack.py
└── server.py

inside __init__.py I defined an export for the messaging package:


from messaging.fb_messenger import *
from messaging.fb_messenger import fb_messenger_router

__all__ = ['fb_messenger', 'slack']

#  from fb_messenger import fb_messenger_router

inside fb_messenger.py I define the blueprint in this way :

# set up blueprint for fb_messenger
fb_messenger_router = Blueprint('fb_messenger', __name__)

@fb_messenger_router.route('/', methods=['GET'])
def messenger_webhook_verify():
    # when the server side endpoint is registered as a webhook, it must echo back
    # the 'hub.challenge' value it receives in the query arguments
    if request.args.get("hub.mode") == "subscribe" and request.args.get("hub.challenge"):
        if not request.args.get("hub.verify_token") == FB_VERIFY_TOKEN:
            return "Verification token mismatch", 403
        return request.args["hub.challenge"], 200

    return "Hello world", 200

I import it in server.py here:

from messaging import fb_messenger_router

application = Flask(__name__)

application.register_blueprint(fb_messenger_router,
                               url_prefix=FB_ROUTE)