Download the PHP package davidpiesse/facebook_messenger_php without Composer
On this page you can find all versions of the php package davidpiesse/facebook_messenger_php. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download davidpiesse/facebook_messenger_php
More information about davidpiesse/facebook_messenger_php
Files in davidpiesse/facebook_messenger_php
Package facebook_messenger_php
Short Description A PHP wrapper for the Facebook Messenger Platform
License MIT
Informations about the package facebook_messenger_php
Currently abandoned - Please use Marcel's Botman.io (its much better)
Facebook Messenger PHP Wrapper
This package is a wrapper around the majority of the functionality of the Facebook Messenger platform. A list of features not yet implemented is below.
This package is still in development; so please do submit pull requests / issues you are having.
Installation
Just use compser to bring it in.
Currently we are in dev mode so you may need to set in your composer.json
Demo
A demo project (Laravel based) is here In the meantime you can interact with a demo ChatBot created using this wrapper.
Search for @laravelmessengerbot in Facebook messenger and you can test a load of the function. Or go here https://www.facebook.com/laravelmessengerbot/
Todo
Things still to implement
- User Profile
- All Airline Templates
- Sending of a file stream
- Payments
Current dependencies are GuzzleHttp/Guzzle, rappasoft/laravel-helpers and illuminate/http. These allow the package to make easy requests to the FB Messenger API and also deal with arrays in a super amazing way.
License
MIT
Who to call for help
Just add an issue or send me an email at piesse [at] gmail [dot] com or on Twitter @mapdev
Sending Messages
Usage
To send messages to a user create an instance of the Messenger class and insert your token
and then to send a text message
Still writing this...
Incoming Webhook
For Facebook Messenger you provide a webhook URL for their API to contact your server when certain events occur. -Link-
Most of these revolve around incoming messages from a user; be it a text message, attachment, postback etc. these are all handled by the Callback object.
Pass in an array of data from the post request {in Laravel use }
The data incoming should look similar to this
The object parses all this information and allows you to easily retrieve it and determine what to do with it.
Structure
Below is a guide on how to find the data you want in the Callback object Within a normal Facbook Webhook POST request are two top level parameters:
- (always = )
- (almost always one & a collection of objects)
To get at the data you must iterate to make sure you do not miss a batch of messages.
The Callback also has three methods , , and . These give you quick access to an array of of these specific types.
Within an 'entry' are a couple of properties and a array of
- (Page ID)
- (Timestamp)
-
(Array of entry messages)
has the first two properties plus a array (Laravel Collection). This is the array of .
This array of entry messages is where all the real information is. There are two main parts to it. THe shell (EntryMessage) contains the and along with a .
It also provides you a set of boolean return methods to determine what type of message it is.
Each of these allow you to filter the type of message it is and access its or other dynamic property appropriately.
Read
If the message is of type Read then is set and is of type
Properties
Delivered
If the message is of type Read then is set and is of type
Properties
Authentication
If the message is of type Read then is set and is of type
Properties
Account Linking
If the message is of type Read then is set and is of type
Properties
- (bool)
- (bool)
Postback
If the message is of type Read then is set and is of type
Properties
Message
If the message is of type Read then is set and is of type
Properties
- (bool)
- (bool)
- (bool)
Echo
The same as except with some more properties attached.
Additional Properties
- (bool)
- (bool)
Examples
Here are some code snippets to get you started
As Laravel Collection is iuncluded it is a great way to delve into your callback easily
All versions of facebook_messenger_php with dependencies
rappasoft/laravel-helpers Version dev-master
nesbot/carbon Version ^1.21
illuminate/http Version ^5.3