Skip to content

JohnnyTheTank/apiNG-plugin-facebook

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

67 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

apiNG

Join the chat at https://gitter.im/JohnnyTheTank/apiNG npm version Bower version

apiNG-plugin-facebook is a Facebook Graph API plugin for apiNG.

Information

Documentation

  1. INSTALLATION
    1. Get file
    2. Include file
    3. Add dependency
    4. Add plugin
  2. ACCESS TOKEN
    1. Generate your access_token
    2. Insert your access_token into aping-config.js
  3. USAGE
    1. Models
    2. Requests
    3. Rate limit

1. INSTALLATION

I. Get file

Install via either bower, npm, CDN (jsDelivr) or downloaded files:

II. Include file

Include aping-plugin-facebook.min.js in your apiNG application

<!-- when using bower -->
<script src="bower_components/apiNG-plugin-facebook/dist/aping-plugin-facebook.min.js"></script>

<!-- when using npm -->
<script src="node_modules/aping-plugin-facebook/dist/aping-plugin-facebook.min.js"></script>

<!-- when using cdn file -->
<script src="https://cdn.jsdelivr.net/npm/aping-plugin-facebook@latest/dist/aping-plugin-facebook.min.js"></script>

<!-- when using downloaded files -->
<script src="aping-plugin-facebook.min.js"></script>

III. Add dependency

Add the module jtt_aping_facebook as a dependency to your app module:

angular.module('app', ['jtt_aping', 'jtt_aping_facebook']);

IV. Add the plugin

Add the plugin's directive aping-facebook="[]" to your apiNG directive and configure your requests

<aping
    template-url="templates/social.html"
    model="social"
    items="20"
    aping-facebook="[{'page':'<PAGE_NAME>'}]">
</aping>

2. ACCESS TOKEN

I. Generate your access_token

  1. Login on developers.facebook.com
    • Create an new app
    • Choose website/webapp
  2. Open Graph API Explorer
    • Press on Graph API Explorer dropdown button
    • Choose your app
    • Press on Get Token dropdown buton
    • Choose Get App Token
    • Copy generated access_token

II. Insert your access_token into aping-config.js

Create and open js/apiNG/aping-config.js in your application folder. It should be look like this snippet:

angular.module('jtt_aping').config(['$provide', function ($provide) {
    $provide.value("apingDefaultSettings", {
        apingApiKeys : {
            facebook: [
                {'access_token':'<YOUR_FACEBOOK_TOKEN>'}
            ],
            //...
        }
    });
}]);

⚠️ Replace <YOUR_FACEBOOK_TOKEN> with your facebook access_token

3. USAGE

I. Models

Supported apiNG models

model content support max items
per request
(native) default items
per request
social last posts from users wall full 100 25
image last images from users wall full 100 25
video last videos from users wall full 100 25
event last events from users wall full 100 25

support:

  • full: the source platform provides a full list with usable results
  • partly: the source platfrom provides just partly usable results

II. Requests

Every apiNG plugin expects an array of requests as html attribute.

Requests by Page

parameter sample default description optional
page michaeljackson name or id of any facebook page no
items 0-100 25 items per request yes
showAvatar true false Use true for show users avatar as image if post has no own image yes

Samples:

  • [{'page':'muenchen'}, {'page':'Berlin'}, {'page':'Koeln'}]
  • [{'page':'muenchen', 'items':10}, {'page':'Berlin', 'items':70}]

III. Rate limit

Visit the official API rate limit documentation

Here's how rate limiting on the Facebook Graph API works:

  • Rate limiting is done on your Facebook AppId. If your app reaches a rate limit, all calls made for that app will be limited not just on a per-user basis.
  • Rate limiting is calculated by taking the number of users your app had the previous day and adding today's new logins. This gives a base number of users that your app has.
  • Each app is given an allotment of 200 API calls per user in any given 60 minute window.

Licence

MIT