Messenger Bot template message giving error for subscription permission - facebook

I have developed a messenger bot and also got approval for the page_messaging from facebook and it works great. Now as per the Facebook terms and guidelines for subscription messaging mentioned here(https://developers.facebook.com/docs/messenger-platform/policy-overview#subscription_messaging) for Standard Messaging means the page_messaging permission which we have it says:
"Messages cannot be sent beyond 24 hours from any triggering action, as described above. Exceptions include template messages and one additional bonus message outside of the 24 hours to follow up on the conversation."
Here it's clearly mentioned that template messages are exceptional and can be sent even after 24 hour period but when we are trying to send message after 24 hour it is asking for subscription permission and giving following error:
{"error":{"message":"(#230) Requires pages_messaging_subscriptions permission to manage the object","type":"OAuthException","code":230,"fbtrace_id":"FAfXwRoT\/ta"}}
So, when facebook says that the template messages are exceptional and can be sent after 24 hour period then why it is giving subscription permission error for template message?
Any help will be appreciated. Thanks in advance.

At the bottom of the policy page you mentioned, it clearly states that
Exceptions include receipt and airlines templates as well as tagged
generic template
If you're sending generic template messages outside the 24+1 window, make sure that they're tagged. If they're not, they'll throw the error above.

Related

Amazon Lex - Enabling responses from Slack mentions

I am creating an Amazon Lex bot as a POC to see what it can do. I have a version of the bot working where I can direct message it and receive responses back. The logging for both Lex and Lambda shows the conversations that are occurring.
I decided to move forward and attempt the same conversation by inviting my bot to a public channel I created. In doing so, I added app_mentions:read, channels:history, chat:write, and chat:write.customize permission to my bot via the OAuth scopes in the app configurations.
When trying to mention my app, the amazon lex logs do not show a conversation is occurring nor is the lambda function executing. It appears that slack is either not receiving the request or the request never calls lex, to begin with.
Does anyone know what is required for slack configurations to at minimum have it call Lex? I don't know if it is reading the mentions though I would think so because it has permissions.

Is is possible to create a custom messenger bot on Facebook?

I would like to know that we are having a lead generation campaign running on Facebook but few of the times our staff isn't available to answer the query on Facebook messenger, so based on that short-coming I am thinking to devise a mechanism that "If within 1 hour of user's message no one replies to him then an automated BOT message should get sent to him."
Please don't deprecate this question as it is based entirely on knowledge. And if perhaps someone has hints or links on how to achieve this thing then I will really appreciate it.
Thanks.
Some options:
You can query your /conversations edge every X minutes to detect when there is a message from a user which has not been replied to, then you would send the automated message using Send API.
https://developers.facebook.com/docs/graph-api/reference/v10.0/conversation
https://developers.facebook.com/docs/messenger-platform/reference/send-api/
You can use webhook data for incoming messages to create a task that will run at received_time + 60 minutes, find the thread in your conversations edge based on PSID and then check if there has been a reply
Alternatively you can check out Handover Protocol which allows a Page to simultaneously use a Messenger Bot and Live chat agent to handle messaging
https://developers.facebook.com/docs/messenger-platform/handover-protocol/

Facebook Api Bulk message as Page

I'd like to use the endpoint '{conversation-id}/messages' to send bulk messages. According to the latest update on policies i can send 1 message to each user (says nothing about the users count) outside the 24 hours window ( when i can send multiple messages ).
Can anyone confirm to me that "The restriction on promotional content has been removed for standard messaging." includes the Api endpoint i stated above? is it standard as in non-'bot-like'? or standard as in using the web app ?
Also, if i break the policies in this regard, do they ban the app, the developer or the page?:D

Suddenly, pages_messaging_subscriptions permission is required

I have a simple message bot that was set up according to the Messenger Platform guide. It has been working fine for the last few months, with about half a dozen messages sent a day. I have not touched it at all, but suddenly, sending a message, ie calling https://graph.facebook.com/v2.6/me/messages?access_token=..., returns:
{"message":"(#230) Requires pages_messaging_subscriptions permission to manage the object","type":"OAuthException","code":230,"fbtrace_id":"DVs...."}
This was out of the blue. Things were working fine, I did not even log on to Facebook during this time, and I haven't even looked at my webhook callback website. But some time from Aug 17 onward, this exception was returned for every attempted message send.
Has something changed? Anyway, I could not find a subscription field by the name pages_messaging_subscriptions in the Webhooks Page Subscription page.
What do I need to get my message bot to work again?
August 15 was Updater Messenger Platform Policies.
official post in blog
Now, to send a message a day after the activity of the user is necessary to request additional permission in the application settings.

Facebook "pre-filling" policy unclear with regards to empty message and the link parameter

I'm trying to get publish_actions permissions approved for an iPhone app and been denied twice. The first time was because, as the policy says not to, we were populating the message parameter automatically when posting to the user's wall using the graph api. So we removed the message field entirely and kept only the link parameter.
The app was rejected again with the same message so I figured I'd try to get a definitive answer here before I get three strikes on app submission.
Both the 2.3 platform policy video and written policy explicitly say do not pre-fill the message parameter but say nothing about the link parameter. Beyond simply not pre-filling any of the message parameter must we also provide a way for the user to enter a message? If so that is not clear in the policy.
Graph Api Publish Documentation:
https://developers.facebook.com/docs/graph-api/reference/v2.1/user/feed#publish
"Pre-fill" Video: https://developers.facebook.com/docs/apps/review/prefill
I was rejected three times with the same response - which was you can not pre-populate the message field. But with the second and third submission, I was not pre-populating the message field. Of course I was expecting the Facebook reviewer to operate the application according to my instructions to see this. They don't, and the refusal was because they could not tell from my submission that this was the case. The response they give is not hand typed, but a stamped response given when they click "REFUSE!".
The solution is not only to get the application to behave according to policy, but to provide clear pictures with the step by step instructions of how your application shows the user the post, allows for the user to input a message, and the finished post on his time line.