Facebook webhook for pages not sending info to server - facebook

I'm trying to integrate facebook with my application.
I set up a server, webhook subscription went well (subscribed to fields: feed, conversation and messages), callback url is fine, test messages from app dashboard are coming to my server.
Then I have added my fb page to my fb app via graph api explorer and want to test creating posts. I created a post in two ways: via graph api explorer and via fb page. Anyway, no info is coming to my server.
I tested it while app is in development mode and in live mode.
What is wrong with my thinking? Any and all information will be appreciated.
=================================================================
CLOSING
My bad. I didn't noticed that facebook needs to review my app in order to start working

Related

How to make a messenger chat bot without a facebook app and webhook?

I went through the documentation for creating a chatbot for messenger platform.
All I find there, I need a server, which in the case used as a service for the Facebook platform.
The server also validates the webhook from facebook app.
Now I see, for a chatbot, I need a facebook app, webhook server and definitely a facebook page.
Then I find an application Flow XO, where I only put the page name and the bot is ready.
My question is, how they(flow.xo) can communicate facebook page without a Facebook app(appId, appSecret) and webHook.
My question is, how they can communicate facebook page without a Facebook app(appId, appSecret) and webHook.
They can’t.
They use their server and their app to communicate with the API, on behalf of the users that grant them access to their pages, by providing the necessary permissions when they log in to that app.
Facebook allows to create a Facebook App which integrates multiple chatbots. At Amio, we ask you for permission using Facebook OAuth. When you give us these permissions we send and receive message on your behalf. This allows you to create a chatbot using Amio API without need of creating a Facebook App.
Facebook Page is always needed as this is the entry point of users interacting with your bot. You can check Amio documentation for more detail.

Can't use test user to access Facebook page with Messenger Bot app

I am trying to setup my first Facebook bot by following this sample project in Glitch, connected to this quick start help page.
I have logged in with a real user, then created an app and added a messenger product as per the instructions. I have set the webhook, I have also created a page with this user, and subscribed the messenger bot to it using the app dashboard.
I can access the page with the real user and I can send messages to the page and the bot responds to those messages as expected. So far so good.
Now I would like to create test users, so that I can access this page and send messages with other users. I have followed the procedure indicated here to create such test users.
The problem is that those test users can't access the page: "Sorry, this content isn't available right now"
I have found this and this answers, which both point to this explanation.
Basically, the page the bot subscribes to must be created by one of the test users with manage_pages and pages_messaging permissions. Like this I can create other test users which can connect to the test page and send messages just fine. However, the bot is not properly subscribed to this new test page, despite following the provided steps. I followed all of them and got the success response in the subscription step:
https://graph.facebook.com/v2.9/me/subscribed_apps?method=POST&access_token=<TEST_USER_PAGE_ACCESS_TOKEN>
Still, the bot is not connected to the test page. I can send messages back and forth between test users on the test page, but the bot does not respond and I get no activity logs in the webhook.
In a nutshell:
If I create a page with a real user, I can subscribe the bot successfully to the page, but I can't access the page with test users.
If I create a page with a test user, I can access the page with other test users successfully, but I can't subscribe the bot to the page.
How can I solve this or at least troubleshoot it?
Facebook API v2.9
The test user cannot access your real facebook page but you can message your bot (logged in as a test user) via the messenger short link (m.me/your_bot_link).
I used that in the testing steps (and video screencast) for the app permissions review submission.

How do I create multiple Facebook bots with a single platform?

I have a Facebook bot and I have connected it with a Facebook page. However to have it publicly available I have to wait the approval from Facebook.
Not a problem if you have to make one single bot, huge problem if you have to do it on scale level (eg: 100+ bots).
Platform as Chatfuel or Content Api allow you to just select the page you own and connect the bot automatically.
In minutes the bot is publicly available, skipping the review phase (apparently) in Facebook.
I didn’t find any info about that on the Facebook developer guide, there is a sort of internal API not available for everyone? If so how can you request access to that?
Facebook Messenger bots are published for a page (which is the bot identity) using one or more applications (which defines the webhook where messages are sent).
So the application must be reviewed and approved by Facebook. After that, any page can be 'attached' to this application, using the standard Facebook authorization flow in order to get an access token for this page by the approved application.
So Chatfuel and others alreay have their application approved, and now any page can be connected to it.

Making Facebook Application in Sandbox mode Accessible to Company Page

I have a certain scenario that might be obscure but in any event here it is:
1) My overall objective is to stream Facebook updates for my company's Facebook page to Hadoop
2) I know how to do this for my FB page:
a) Requires a FB app
b) A FB Realtime subscription
c) A callback URL to a page that receives the GET/POST
d) A Flume HttpSource to receive the Http Post from FB
All of this has been done successfully for my personal FB page. The challenge is that I would like my company's page to add the App so that I can stream updates from their page to my company's Hadoop environment. My marketing department would like to capture interactions with the page followers for sentiment analysis. Finally I would like to do so with my FB app in sandbox mode.
Is it possible to have a FB app in sandbox mode and still have it visible to my company's FB page so that the page admin can go in and add the app that I created and is still in sandbox mode?
I tried adding the company as a test user and not surprisingly that attempt failed. Is there a proxy user for my company's page that I can setup as a test user?

Why are Facebook requests coming in as both POST and GET requests?

I am writing a Facebook Tab application. I have set it up to be dynamic based on the page that the Facebook user is adding our tab to. When developing, all of my requests are coming to my application as POST requests and included the signed_request parameter. As soon as I got this thing on our production server, it started sending all requests as GET nd did not include the signed_request. The only changes that I made prior to launching was to modify the URLs in the Facebook tab settings to point to our server as opposed to localhost. What is going on here? Why is Facebook changing the request type?