Google Calendar with Rails3 - ruby-on-rails-3

I want to automtically add calendar entries to Google Calendar from within my Rails App. I am not able to find a gem which allows transparent integration to Gcal.
Problem with gdata - http://code.google.com/apis/gdata/articles/gdata_on_rails.html#AccessingFeeds is that its not maintained and it requires the user to go to authentication URL. I am reluctant to store user passwords to everytime authenticate them before posting to their calendar. I already have google based openid using omniauth.
I am looking for a solution which can : 1. Allow updates to user's google calendar. 2. Wont need the user to authenticate everytime they want to update their calendar.

Related

Unlimited personal use of Google Calendar API without refreshing token

I have my personal Python script that automatically creates events in one of my personal Google Calendars through the Google Calendar API. I can then share this calendar with other people by giving them the ICALL link.
My issue now is that the credentials token expires every 7 days. Is there a way to have unlimited use of a token if it's for personal use (meaning: I will be the only one using the Calendar API and only my personal Google account is given access to the API)? I don't think I can transition my Google Cloud project from "testing" to "production" if it's just for personal use and not really a company making the "app".
Or is there an alternative method to create an ICAL link of a calendar that can be modified through my Python script?

Login Via Twitter

It has been almost a month and I couldn't figure this out.
I am developing a social network application and I want the users to be able to log in via their Twitter and Facebook account Like the screenshot below:
The Facebook is done, and I am stock with the twitter, Note that these pictures are actually set as a buttons.
What I want exactly is:
The user can be able to login (sign up) on the application using their Twitter and I will retrieve the basic information from Twitter API "Name,Username,Profile picture" in my application and store them in my database.
Note: I am using Parse and I already have a table call user.
Please help me :'(
It sounds like you haven't tried anything with Twitter yet.
If this were my code, I'd probably use the Twitter API to login, which they introduce you to here.
Or you can use one of the handy Objective-C libraries they've listed here

Log in with a specific username with Google API

I am developing a web app for a group, and I want to be able to let anyone in the group create an event and add it to the group's calendar through the app. I was able to get the basic functionality working using Google Calendar API v3 for Javascript -- you could fill out a form with the event's start/end times, title, information, etc, and it could insert that event into the calendar.
But the problem is with authentication. If a user is logged in to a Google account that is not given permission to create events on the calendar, they are unable to add the event (Javascript writes "Forbidden" to the console). If I log out of all Google accounts and then sign in with the account that owns the calendar, the event is created with no problems (that makes sense).
Adding every single person in the group to the edit-permissions on the calendar seems like too much of a "brute force" method.
Is there a way to always authenticate the Google account that owns the calendar? Or, better yet, is there a way just to force authentication in general, even if someone is already logged in to Google / authorized to the app? Some people in the group know the calendar login/password, so if I could always bring up a Google login screen, they could just enter the calendar account information and then add the event from there. Again, I'm using Javascript (not much documentation on this...).
Thanks!
Have a look at Service Accounts. That way the calendar is owned by the application, and so the application will always have permission to update it.
If you want to avoid authentication problem from other opened session in user browser, you have to authenticate on the calendar, using server side library.
check this link:
https://developers.google.com/google-apps/calendar/auth
it bounces you from one article to other, but at the end you should get all information.

Google Tasks API authorization

I can see many related questions on SO, but none that answers exactly what I'm confused with.
I'm using Google Calendar API in a .NET desktop application that allows user to provide his/her username/password, logs in on his behalf and adds some events to the calendar. Now I want to do exactly the same thing for Tasks feature. I'm trying to use Google Tasks API for this, but have been told that I need to do some OAuth kind of authentication, and even before that, I need to go to my gmail account and set permissions and get my project "key" to enable it.
Now does every user of my application need to do these steps in their Gmail account? Or do I need to do this in MY gmail account once and then my application code will be able to use the generated project "key" to enable my users to add tasks to THEIR gmail tasks list?
Figured it out. For anyone having a hard time understanding this, here it is:
The "key" generation step needs to be done only once per application, not for each user who's going to use your application. To generate a key, login to your Google Account and go to Google APIs Console page. Click API Access button and that's where you can generate keys for different kinds of applications like browser apps, desktop apps, Android apps etc. After registration, you'll need to take Client ID, Client secret and API key from this page and put them into the code. Sample code (.NET) for task creation and several other Google features is available here.
Once your user runs your application, he'll be taken to his Google account in his default browser where he'll be asked if he wants to allow this application to write to his calendar/tasks list. This page will display your logo and description text too that you can provide at registration time. Once allowed, this step won't be required again in the next one hour (this may be adjustable, i don't know yet).

Accessing linkedin api without repetitive sign in?

I am new to linkedin api. I have a doubt regarding the api.
I am integrating the api in my application, so different user have to register in the linkedin to get the data using that api? Can it be pre registered and the user can get the data whatever he wants.
Suppose user wants to search about company. He will type the company name and will get the names of the company related to search. He should not log in in linked in before searching.
Is it possible?
If you are using the JavaScript API, then yes, you may need to have the user log in each time as the JavaScript API's authorization is cleared every time the user closes their browser.
If you are using the REST API, you can store the user's OAuth token and use that to make the calls on behalf of the user, saving them having to sign-in each time.