Quote Parameter for Facebook Share method no longer working? - facebook

Per Facebook dev documentation, the share parameter "quote" should insert text:
https://developers.facebook.com/docs/sharing/reference/share-dialog/
This seemed to be working the other week, but now even using their own testing tool ( http://www.fbrell.com/Sharing/2%20-%20FB.ui%20Dialogs?fbclid=IwAR2TX_eOex-HmIqbIfz9sakxN_laCAVVW_g6p-dW54WwVZkXQ_u5VZi8OCE ), the quote parameter doesn't seem to be inserting any text into the share dialog that pops up.
Anyone else experiencing this?

Someone from the Meta team has said "the quote feature has been deprecated". The documentation had still not been updated at that time, though.
Pretty weird for them to remove a feature with no warning or update to their documentation, then call it "deprecated" (which typically refers to a feature that still works but will be removed in the future).

same problem for me
FB.ui({
method: 'share',
href: this.location,
quote: this.description
})
It worked a week ago, but now it doesn't. but the Facebook documentation does not mention anything about this change
https://developers.facebook.com/docs/sharing/reference/share-dialog
https://i.stack.imgur.com/CgSA0.png

Same problem here
FB.ui(
{
method: 'share',
href: 'https://my-url',
quote: encodeURIComponent('My quote')
}
);

Related

firebase dynamic links in stripe throws err_unknown_url_scheme

I've been developing an app with firebase and stripe payment. I've created a checkout session in stripe and added firebase dynamic links for the success_url and cancel_url. The URLs are working fine. I've tested them outside stripe with a simple html file and it opens the app and takes the user to the correct page. If the page doesn't exist it'll take the user to the assigned website. This is stripe checkout session code:
const session = await stripe.checkout.sessions.create({
line_items: [{
price_data: { currency: 'INR', unit_amount: amount, product_data: { name: 'name' } },
quantity: 1,
}],
mode: 'payment',
success_url: 'https://-------.page.link/payment-success',
cancel_url: 'https://-------.page.link/payment-failed',
payment_intent_data: {
application_fee_amount: fee
},
}, {
stripeAccount: req.query.stripeId,
});
I've changed up the actual link since I don't know how much I'm allowed to share. But I can guarantee the dynamic links works fine. But after payment, the test payment at least, it's suppose to open the app and take the user to a payment success page. AND it was working fine for the first 2 or 3 days. After payment it re-opened the app and took the user to the correct page. But when I tried a few days later, this is what it's taking us to:
Again, I've removed the link since I don't know how much I'm allowed to share. It won't even open the app right now. It just shows this message in the browser. Both success and cancel url are doing the same. Why does the links work outside the function but not in it? Has anyone ever faced any similar issues before? Any help will be greatly appreciated.
It seems like you're trying to open the Checkout Session in a WebView which causing the issue in the redirect. Webviews don't know how to handle an URL Scheme other than http:// or https://. That being said, your problem isn't uncommon and there are multiple ways of solving this.
Your first approach would be to open the Checkout Session in an external browser as described in this answer or try to create your own WebViewClient and override shouldOverrideUrlLoading method like described in this answer. Just note that since the last edit of that answer the signature of the shouldOverrideUrlLoading method has changed but the logic should still be used the same way but instead of dealing with the String url, you will have to deal with a WebResourceRequest.
Had the same issue. I solved it by changing the mode like following:
await launchUrl(
url,
mode: LaunchMode.externalApplication, // Add this line
)
url_launcher version => 6.1.7

Facebook: share custom story doesn't appear in the wall

I'm having problems with the way the custom story that I have is displayed on Facebook.
It's working fine but instead of publishing on the wall of the user, it appears in the Recent Activity section.
The steps I follow until now:
create the custom action 'Want'
set the 'Explicitly Shared' option on
run this code:
FB.api(
'me/mynamespace:want',
'post',
{
article: "https://developers.facebook.com/docs?locale=es_LA"
},
function (response) {
console.log(response);
}
);
Can anyone help me?
If you need more info let me know. Thanks
You don't set explicitly shared to on. You need to do that in the API call.

Facebook Share - Get just shared comment/description

I was looking for and I am interested is there any way to get just shared facebook description using maybe fb.ui/fb.init or some other way?
EXAMPLE: IMAGE LINK
After the share I could get the description on my website let's say this way:
document.write('The description you've shared!')
So maybe one of you know how to do it or maybe someone knows how to figure it out. I am really looking forward for it! Thanks!
When you use the feed/share dialog using FB.ui, you can specify a callback function that receives the new post's post_id. Then using the post_id, you can retrieve the contents of the post by using an FB.api call. So a basic example:
FB.ui({
method: 'feed',
link: 'https://developers.facebook.com/docs/dialogs/',
caption: 'An example caption',
}, function(response){
FB.api(response.post_id, function(resp) {
document.write(resp.description);
});
}
);
I'm not sure if all the fields are right, but that should give you the basic idea. Let me know if this makes sense :)
Feed and Share Dialogs: https://developers.facebook.com/docs/reference/dialogs/feed/
Post Object: https://developers.facebook.com/docs/reference/api/post/

"Fb.ui send dialog" returns error

I have a strange issue with the dialog.
Here is a simple code, that I'm using in my project:
FB.ui({
app_id: 'MY_APP_ID',
method: 'send',
name: 'Test',
link: 'MY_APP_LINK',
display: 'iframe'
}, function(response) {
console.log(response);
});
And after dialog opened, I got a common error, which nothing describes:
Here it is in original language:
"Обнаружена ошибка в APP_NAME. Пожалуйста, попробуйте ещё раз позже."
And I think in english it should sound like:
"An error occurred in APP_NAME. Please, try again later."
Could anybody help me, and explain why it is happens, please? I've read documentation at least three times, and didn't found anything useful.
Verify your domain settings for your app – calling dialogs from a page not allowed for the app is a common cause for this kind of error.
You have to give it a valid link - try setting my link to "http://www.google.com".
What kind of device are you using?
In case you are doing this on a tablet/phone, the "send" dialogue doesn't currently support those devices and will result in an error.
http://developers.facebook.com/docs/reference/dialogs/send/
From their doc:
You should specify a URL, and you can pre-populate a user in the ‘to’
field. The Send Dialog does not require any extended permissions. This
Dialog is currently not supported on mobile devices.

Is it possible to customize the apprequest notification message similar to BranchOut?

I've noticed that BranchOut requests have a custom notification message and stand apart from other app requests in my notifications.
Is this because BranchOut has a special partnership with Facebook?
The documentation states that the "message" value will not be displayed in the notification, so I'm curious how this is being done.
No it is not possible even with new_style_apprequest parameter in FB.ui options. This used to work earlier but it has stopped working lately. It was anyways an undocumented feature. This is my guess that you might require special permissions from Facebook to be able to achieve this.
it's definitely possible, using the parameter new_style_message set to true - you can double check this by reverse engineering their Javascript API library.
This is a sample code
FB.ui({
display: 'iframe',
method: 'apprequests',
new_style_message: true,
title: "Join my network",
message: "would like you to join his network",
to: [list of user ids to invite]
});