Firebase invites - facebook and twitter options - firebase

I have Firebase invites working with email and SMS just fine. I'm clueless when it comes to sharing via Facebook or twitter however. What are my options for sharing data with invites to facebook via Firebase? I can't find any info on this anywhere - except that Facebook offers its own invite api. I'm trying to just use Firebase if possible though, so I'm just trying to figure out how to customize the "share sheet" that I see referenced in various loctions online (without much info associated with those references). I can't tell if the share sheet is just a list of actions that I need to handle my own way, with just the email and sms option handled by google and I handle the rest of the options using the various apis out there.
In my current implementation, I use the deep link that the invite exposes and store the id of some data that I want the specific user to have access to. Then store that data in a firebase database. But what is the correct method to share to facebook users? Is it to just use facebook's api and expose it somehow in my own "custom share sheet"? Where can I find documentation on the share sheet?
Thanks for clarifying any of this if you can!
Cheers,
Mike

Currently I believe the only way to share to sources other than Email & SMS you would need to implement your own custom sharing functionality. It's hinted at in the Invites Documentation Best Practices section titled "Build a Custom Share Sheet".
Firebase Invites is built on top of Firebase Dynamic Links so if you want a link that takes the users to the app store to install your app you can create a simple dynamic link using one of these methods.
For implementing custom share sheets it depends on your platform as each has a different way of implementing sharing functionality.

My answer might not be ideal as I am looking for an alternative as well, but you could manually add different social media shares manually. What I wanted to do was send a deep link using the share feature already implemented by google but with no luck.
// Regular share I want to use this and send deep link :(
Intent myShare = new Intent(Intent.ACTION_SEND);
myShare.setType("text/plain");
String shareBody= "Messsage here";
String sub = "Title";
myShare.putExtra(Intent.EXTRA_SUBJECT, sub);
myShare.putExtra(Intent.EXTRA_TEXT, shareBody);
startActivity(Intent.createChooser(myShare, "Share using"));
/FACEBOOK SHARE
/*ShareLinkContent content = new ShareLinkContent.Builder()
.setContentUrl(Uri.parse("deeplinkhere"))
.build();
ShareDialog shareDialog = new ShareDialog(HomepageActivity.this);
shareDialog.show(content);*/
// Google Invites
/* Intent inviteIntent = new AppInviteInvitation.IntentBuilder(getString(R.string.invitation_title))
.setMessage(getString(R.string.invitation_message))
.setDeepLink(Uri.parse(getString(R.string.invitation_deep_link)))
.setCustomImage(Uri.parse(getString(R.string.invitation_custom_image)))// the image address on server for invite by email.
.setCallToActionText(getString(R.string.invitation_cta))
.build();
startActivityForResult(inviteIntent, REQUEST_INVITE);*/
//startActivity(new Intent(HomepageActivity.this,InviteActivity.class));

Related

Flutter - Create sharable profile link

I am trying to create a Social media kind of networking Flutter app in which user can share his profile link. That link must redirect directly to user's profile if app is installed else redirect to link to download app. I am using Firebase as backend. Any resources or packages to work with?
You can use the package Share to enable the user to share their profile themselves. Its really easy to use.
If you would like to share a profile you will need to provide the navigational route to get to the profile screen, then provide the user's ID/data to get/view the desired data.
As far as getting a deep link to get the user to download the app if it is not installed, you can use firebase's dynamic link feature. You can customize what the link preview looks like and says. They have really good docs that you can follow.
You could use a Firebase dynamic link.
A dynamic link is basically a link pointing to possibly 3 resources:
Web URL
Android (Google Play) App ID
iOS (App Store) App ID
So once you configure it on Firebase (it's simple to configure), when the user access the link, Firebase will employ a decision tree to decide where to send the user.
In case the access is done on a mobile device, but if the app is not downloaded, it'll send the user to the store, and after returning from the store, will send the user to the correct path you've configured, following the link.
And on the app, you can implement the SDK to handle this link and when receiving this route request, redirect the user to the right profile they want to access.
I could go through the whole process, but I suggest you check the whole Firebase documentation:
https://firebase.google.com/docs/dynamic-links
In case you have a question on that where I can explain further, just let me know.

create unique links to send to users

I have been tasked with sending out a google forms link to a set of email addresses. I need each link to be unique so that a user can only answer the form once.
Is this possible with google forms?
The emails I send to will not necessarily have google accounts so the "limit to one response" will not be suitable as users will not be able to login to a google account to answer the form.
Many thanks for any pointers
No, its not possible to create unique links to prevent that a user without a Google account submit more than one answer.
Regarding official documentation to support this, there isn't as usually Google only include the supported features. The close that you could find are feature requests on the Google Issue Tracker, posts on the Google Docs Help Forum.

How to connect Facebook, Twitter & Google accounts in Java (Spring MVC)

I'm going through the features of social auth (http://code.google.com/p/socialauth/) & wondering if this is the best thing for my requirement. Please guide.
My web application currently has it's own login mechanism(native). But I'm planning to do the following:
Login through Facebook(F), Twitter(T) and Google(G) options
After login (either through F,T,G or native login), I want to give user the option of selecting F friends, T followers or G contacts (in a textbox with autosuggest facility)
So my doubt is: (social auth says that "..currently Facebook, Twitter and LinkedIn do not provide email addresses. UPDATE: Hotmail has stopped providing email addresses.")
So although I'll have a list of followers, friends or contacts will I be able to notify them once my user selects and submits his form?
Will it be through F,T or G respectively(through status updates, tweets or email?)
Moreover, I've one more scenario:
E.g. the user has logged in using Facebook. Now I want the user to be able to link her Twitter and Google account too. Can socialauth provide that?
If yes, how would I handle multiple profile objects of the same user?
Please guide or suggest any other library.
My application is in Spring MVC.
Or shall I use Spring Social?
Since your application uses Spring-MVC you should try Spring Social. It would be best for your application.
You can also use socialauth library. It also has spring version to connect with FB, twitter and others provider. Link for the same is as given below:-
http://code.google.com/p/socialauth/
Spring Social is best option for your requirement and in can be easily integrated with
There are 2 proven ways which can be used for this
Using Spring-security-oauth2
Using Spring Social
However, if you are using just Spring Social based on the facebook example, provided on the Spring Website then be mindful of these issues
It doesn't work for more than 1 user
Spring-social doesn't support Google either.
It is also difficult to change the redirect flow unless you override the methods
But the good thing is there are workarounds to fix them and they are quite simple.
Here is how to fix FB one user per application problem
For connecting/authenticating with Google
For Changing the default redirect flow
The Complete tutorial with step by step instructions can be found here
Having explored both oauth2 and Spring Social. I would suggest Spring-social as its lot more simpler and custom built for social logins only.

Access contacts from various email sites

How can i access various contacts associated with my any of gmail/yahoo/rediff account Or can i load inbox from there to my website. Just like gmail imports contacts from others sites or loading emails from other sites. I gone through thread How to import email contacts from various email service providers in a website? but could not find way to use this API.
Thanks
Just download the general API here. Assuming you have some basic php understanding you simply use the classes within the API to get the list of emails. check out the documentation for gmail here.
Hope this helps,

Google Chat in ASP.NET application

I want to provide chat facility to my website visitors. This should be same as google chat (person to person communication). Are there any free tools available to integrate in the website? Or is there any way that we can use Google Chat's API and can integrate in our website?
Pls help me.
You can embed google chat into your web page, instructions here
I think a reasonable approach would involve opening an iframe that talks to a dynamic page. The dynamic page would be auto-refreshed by two or more clients and continously post to/read from a table that stores the ID of the session, timestamp, user name(or IP), and message for the chats. The ID of the session would correspond to the dynamic page ID and bob's your uncle.
I'm sure there are various implementations floating around, but I'd want to control this on my own. No user accounts required if you set it up correctly, thought finding other users may be an issue without accounts.
There are a lot of good embeddable chat widgets you can insert into a page fairly easily that do all the work for you.
I've tried out a few of the ones listed in the link above (mostly MeeboMe and Geesee) and don't have any major complaints. With that many choices you should be able to find one that meets your needs. Most don't even require a login.

Resources