Skip to content

Latest commit

 

History

History
112 lines (84 loc) · 4.63 KB

File metadata and controls

112 lines (84 loc) · 4.63 KB

Sourcebot

A Facebook Messenger news bot for your Wordpress website.

Develop

Code Climate

Requirements

First time

  • Run composer install
  • Visit localhost to confirm you see index.php
  • Run cp .env.example .env
  • Edit .env
  • Run phpunit
  • Run ngrok http 80 to get the publicly accessible URL
  • Go to your Facebook App
  • Click Webhooks
  • Select Page from the drop-down
  • Click Subscribe to this topic
  • Enter the publicly accessible URL of your app and /webhook.php
  • Enter the FACEBOOK_VERIFY_TOKEN
  • Click Verify and Save
  • Visit Facebook Messenger
  • Search for your Facebook Page and send it a message

Test

Test Coverage

Tests are run with phpunit

Build

CircleCI

Sourcebot is configured to build on CircleCI.

You can run local CircleCI builds with circleci build using the CircleCI CLI.

Deploy

You can deploy Sourcebot to your own web-server or quickly and for free to Heroku.

Deploy

Requirements

Before Deploy

Before deploying you probably want to give your bot a nice home page as web/index.php currently displays this README.md.

After Deploy

Once you have Sourcebot running on a publicly accessible URL you need to set and verify your Facebook App's Webhook.

  • Go to your Facebook App
  • Click Webhooks
  • Select Page from the drop-down
  • Click Subscribe to this topic
  • Enter the URL of your app and /webhook.php
  • Enter the FACEBOOK_VERIFY_TOKEN
    • If you are using Heroku then it was autogenerated and you can get it from the Reveal Config Vars section of your Heroku app's Settings
  • Click Verify and Save
  • Visit Facebook Messenger
  • Search for your Facebook Page and send it a message

Run

To check Sourcebot can connect to your Wordpress go to /wordpress-api-status.php

Contribute

Contributions are welcome and follows the straightforward Github pull request process:

  • Fork
  • Code
  • Test
  • Submit a pull request

Notes

Facebook Page and App

  • Facebook Messenger requires SSL/HTTPS to communicate with Sourcebot.
  • The quickstart guide is useful for setting up your Facebook Page and Facebook App. You do not need to follow the Node.js instructions.
  • Make sure you associate your Facebook App with your Facebook Page in Settings -> Advanced -> App Page.
  • Your Facebook App has to be reviewed for the pages_messaging permission. Before it is approved only Administrators, Developers, and Testers on the Facebook App's Roles page can interact with the bot.
  • You can only have one webhook endpoint setup per Facebook App so you probably want a development and a production Facebook App at least.
  • You can only associate one Facebook App per Facebook Page so you probably want a development and a production Facebook Page at least.