FB Page is subscribed to multiple webhooks - facebook

I've got a FB page, that I used on a bot creation platform, then I use it for another bot creation platform.
What I expected was FB to cancel the previous subscription before setting the second one but looks like no.
I always get 2 responses, one from each of the platform.
I'm testing a handmade webhook, now and I'm getting 3 responses, the previous 2 ones and mine.
Is there a way to make FB drop the 2 first webhooks ?

By going to your page Settings and then Messenger platform you can uninstall any applications you do not wish to receive postbacks and/or send messages.

I have done few things with the facebook. And one of the easiest is what you are asking for.
So go to https://developers.facebook.com
Log and find you app
Go to webhooks
There are listed all the webhooks and next to each of them there is a button "Unsubscribe"
It is working without any verifications etc..

Related

Messenger - Chatbot without creating FB App for each Page

I built a chatbot that I plan to use with my pages. It's nothing special, only for development purposes. I used fastapi + mongodb + RASA NLU. It's all working fine with the integration by creating the app and subscribe to the webhook. the only problem I have is that I need to create one app per page. How can I link my chatbot to my page without creating an app all the time? I noticed ManyChat and ChatFuel can do this but I'm lost the fb developer documentation.
for reference, here's my current webhook setup.
https://myapp.com/webhook/<pageid_01>/
https://myapp.com/webhook/<pageid_02>/
https://myapp.com/webhook/<pageid_03>/
it's a workaround, of course. it works but I don't really want to maintain too many fb apps. not that I have many but between me and my friends who want to use my chatbot, it's not a pretty sight.
You can use the same webhook to handle events from multiple pages, but i don't think there is a way to make one fb messenger app for multiple pages! because the app will be receiving page-scoped unique Ids
You can just connect multiple pages to same app. And when you receive the event on your webhook, you can check the page-id and based on page-id, perform that page specific actions.

App review is required to get Facebook Webhook working. How to develop?

I'm developing an app which must interact with Facebook API Graph and also use webhooks to get live updates. Now I'm facing a problem I can't receive a live webhook updates until my app is reviewed and is not in development mode.
I've found a thread on a Fecebook for developers site describing the same problem and it got official answer - it is not possible. Use Test button in app dashboard to test your webhook implementation they said.
The problem is the Test button sends only one predefined data packet for each of possible subscription with predefined set of fields with fake values, but documentation defines much more fields and little to none information about which fields are sent in different situations (i.e. post added, comment deleted, comment edited).
I'm wondering how other devs solving this? May be there are some community driven reference for a different webhook interaction cases or else.
For now I can't find any information on detailed webhook format except official documentation on available fields (but not supported payload shapes).
Our current workflow looks this way:
create test app
implement webhook handler using only documentation
prepare test payload and check it is working
create a screencast of the app functionality using test payloads
go through the review process
when app is approved
make it live and check your implementation against real webhook payloads
You need to create a test app for your existing Facebook app
Once you do this, just accept the permissions for your app and set the webhooks on your own Facebook account.
Since you are an admin of the test app, you will be able to set webhooks on yourself without having to get your app approved.

Facebook messenger bot review process

I need to replace existing company messenger bot with a new one. It is my first time when I am working with Facebook for developers, so I am a newbie. Could you help me and answer few questions? I tried to find them on the internet, but unfortunately, it is the first time I could not find something.
1) Could I deploy messenger bot from other developer application than current? I mean that I do not have access to current developer application, could I create a new app and deploy it to our page from that app?
2) Could I deploy new messenger bot without replacing the old one? If yes then could they coexist? I would like to choose users who will talk with a new bot, and the rest will speak with the old bot.
3) Do I need to submit my whole app for review? Alternatively, could I only review messenger app?
4) If I pass messenger bot review, then could I replace a fan page associated with the bot?
Thank you very much in advance :)
Ok, let me try to answer those questions.
Yes, the app is subscribed to the pages using https://developers.facebook.com/docs/graph-api/reference/page/subscribed_apps. You can drop it and install another one.
Yes, there can be as many in parallel. You find them at https://www.facebook.com/[page_id]/settings/?tab=messenger_platform and it looks like this (below). You can also select a role (primary or secondary receiver), so that one app just snatches some sort of messages.
Here it depends. There is "App Review" and "App Review for Messenger". I am assuming you mean Review for Messenger. Now, if the bot is pretty complex - which it is in most cases - you have to provide a video how to use it. So you are showing its features. First and formost for the "pages_messaging_subscriptions" approval, you need to show how to interact with subscriptions (adding, deleting, etc).
Once your bot (=your app) is approved, you can add it to as many pages you want. The review (sort of) checks if the app is a good piece of software, not on which page it will run later. Thats why you can add chatfuel to your personal, your brand or your fan page at the same time.
Hope that helps. Cheers

Multiple Bots per FB app

I am running into a problem with FB messenger bot. Here is what is happening:
I have one app ( I want to use the same APP_SECRET)
I have two pages with different names
I have two different bots - one per page
I have one server / webhook
When I send messages to each of them, they work fine. I am using Generic template for both - with buttons.
When I select any button on the first bot, it works - gets post back event
When I select any button the second bot, webhook doesn't even gets called
If I swap the bots (first with second), I see the same behavior, new first bot gets post back events and the new second doesn't.
Any idea if this is a problem with FB Messenger framework? Or any suggestions.
Can you please provide the snippet in which you handle the postback events?
I think I can help since I've managed to run 5 bots on the same webhook.

Facebook refusing to approve my application - Permission to mention pages

Facebook, a multi billion dollar organisation won't fork out for some live chat agents. Instead I'm stuck in a loop asking for approval, them not reviewing my app properly and giving me a cut/paste response. They say they monitor here, so here's hoping.
Nobody but me will ever use my app. It's a PHP page that posts to our radio station's Facebook page timeline www.facebook.com/BCnowplaying every hour or so, music that's playing on Budgie Collective.
We don't want to spam, this is why the nowplaying page is separate to our normal page.
The app works. All it does is grab a token, store it and post info to the page periodically.
I asked for permission to mention pages. And it was like I divided by zero. I only want this to mention pages of the DJ that compiled the mix that's on air (which is a sanctioned mention, as they have asked for this)... so that when their mix comes on, they are notified.
When I ask for the app to be granted this ability, I get told to show how the public will log in and use the app, and to give sample user accounts. Of course I have explained all this when requesting the permissions. But I keep getting knocked back. Nobody will talk to me directly and every time I re-explain and submit, I have to wait for several days to be given an answer that has nothing to do with how my app works. It's like they aren't even reading the submission.
What can I do next?
Since you're the only one using the application, there is no need to apply for approval. Owners of the application can already use the permission without going through the submission process.
By asking for approval you are basically telling Facebook that you want the public to use the mention feature as well.
So the solution here is to use the app as is and just change the settings to public in Settings > Status
Do you want to make this app and all its live features available to the general public?
Switch to yes.