IVR and Google Calendar

Rating: No reviews yet
Downloads: 142
Released: Jul 11, 2008
Updated: Jul 11, 2008 by jmneter
Dev status: -not yet defined by owner-

Recommended Download

Source Code GoogleCalendarAndIVRApp
source code, 126K, uploaded Jul 11, 2008 - 142 downloads

Release Notes

Introduction for the http://www.voicent.com/ivr.php?a=8223IVR and Google Calendar

Many people have the experience of using the Calendar,it does facilitate our works and lifes.But most of the Calendars are based on text alert, that means you can only get the reminder event in front of your computer.

So I think if the Calendar can remind me by phone.If I want to achieve this idea, I need a Calendar that can provide me APIs, a technology that can make me to call through programming.

Fortunately,these technologies for this idea have been provided by some company,Google Calendar and http://www.voicent.com/ivr.php?a=8223IVR(IVR is based on Skype,so your environment must have the http://www.voicent.com/skypeSkype installed first).

About the http://www.voicent.com/ivr.php?a=8223IVR,I've posted some articles to introduce it.You can view them:

www.codeproject.com/kb/aspnet/ivr.aspx
www.codeproject.com/KB/aspnet/IVRAndFacebook.aspx

Or, you can investigate it throught the Google Search,there are lots of article to introduce it.Now, we'll mainly concentrate on the Google Calendar.

Google Calendar allows client applications to view and update calendar events in the form of Google data API ("GData") feeds. Your client application can use the Google Calendar data API to create new events, edit or delete existing events, and query for events that match particular criteria.

There are many possible uses for the Calendar data API. For example, you can create a web front end for your group's calendar that uses Google Calendar as a back end. Or you can generate a public calendar for Google Calendar to display, based on your organization's event database. Or you can search relevant calendars to display a list of upcoming events on those calendars.

How to create Calendar Service

The CalendarService class represents a client connection (with authentication) to a Calendar service. To request a feed using the .NET client library, first instantiate a new CalendarService object and authenticate the user. Then use the Query method to retrieve a CalendarFeed object that contains entries for all of the user's calendars.

You can authenticate the user by WebForm or WinForm,the WebForm is called
AuthSub proxy authentication, and the WinForm is called ClientLogin username/password authentication.

In order to authenticate the applications using the AuthSub login protocol,you must get the Session token.
First,construct a AuthSubRequest URL for your application, make a .NET client library call as follows:

AuthSubUtil.getRequestUrl("http://www.example.com/RetrieveToken",
"http://www.google.com/calendar/feeds/",
false,
true);

The getRequestUrl method takes several parameters :

* "next" URL ,which is the URL that Google will redirect to after the user logs into their account and grants access;
* scope ,as determined in the previous section;
* two Booleans, one to indicate whether the token will be used in registered mode or not, and one to indicate whether the token will later be exchanged for a session token or not.
The above example shows a call in unregistered mode (the first Boolean is false), for a token that will be exchanged for a session token later (the second Boolean is true); adjust the Booleans appropriately for your application.

After the user follows the link to the AuthSub page at Google and logs in, the AuthSub system then redirects the user back to your application, using the "next" URL you provided.

When Google redirects back to your application, the token is appended to the "next" URL as a query parameter. So in the case of the above "next" URL, after the user logs in, Google redirects to a URL like http://www.example.com/RetrieveToken?token=DQAADKEDE. Therefore, the token is accessible as a variable in the ASP page's Request.QueryString object.

Reviews for this release

No reviews yet for this release.