Add Events to Yahoo using curl - php

I've tried using curl to add new events to yahoo, succeeded in logging in and getting the calendar add events page, but when i try to post events using curl, it redirects me to login page. Please suggest what can i do...?
Thanks in advance

The Yahoo! Calendar web application most likely has mechanisms in place to prevent scripted access or screen scraping.
You might try the published API for accessing Yahoo! Calendar through the CalDAV interface:
http://help.yahoo.com/l/us/yahoo/calendar/yahoocalendar/misc/misc-01.html

Related

Google Hangouts in my website as a chat/messaging system

I currently have Google OAuth 2.0 for authentication. Next I want to be able to use google hangouts in my website so users can chat with each other, along with showing their contact list. So basically I want it to look like how it is on gmail but on my website for hangouts. Main reason for doing this, I want my users to be able use hangouts as a mode of communication. Please let me know if this is possible and provide the necessary resources, an example/demo of this working would really be helpful.
Im afraid there's no API at the moment available (nor plans for that) to access the text chat feature of Hangouts.
yes, you can. More information about google hangouts API here https://developers.google.com/+/hangouts/getting-started

How to add an event to other person's Google Calendar with PHP API client?

I am working on a web application with a build-in agenda. I want to add the items that have been added in this build-in agenda, to the user's Google Agenda. But there is one thing I am wondering. How to get access to that user's Google Agenda?
I was able to get access to my own agenda by adding the XXXXXX#developer.gserviceaccount.com email to the list of addresses that have access to my agenda. But asking everyone to do this isn't really user friendly.
So does someone know the best way to request access to another person's agenda so I can add events through the Google PHP API client?
Thanks in advance!
Consider using Oauth tokens. See https://developers.google.com/accounts/docs/OAuth2
and https://developers.google.com/google-apps/calendar/auth

How do I display Google Analytics reports or realtime report on my website page?

is that possible to display google analytics reports or realtime report on my website page?
i have created google analytics api and tested on the localhost and it is working and redirect url which i given into google analytics api Redirect URIs:
After all the process of google analytics api how do i display analytics
visitor reports on my website page?
How to display google analytics realtime report on my website page?
i want to display Analytics Standard Reports Like (Real-Time-Overview,Audience- Overview,Traffic-Sources-Overview,Content-Overview,Conversions-Overview) Reports Or Chart On My Website?
The real-time reports are not yet possible. If you take a look at:
https://code.google.com/p/analytics-issues/issues/list
On the top of the list is "Access to Real Time data".
Check out EmbeddedAnalytics.
This is a service which allows developers to easily embed GA based charts directly into websites. There is no need to know the API or any other charting software. All you do is create a chart on our site, grab a snippet of code, and embed on your site where you want the chart to show.
(disclaimer - I work with them)
Google has now launched a real time API. It is only in beta, however, you can sign up now, and it should be available to everyone later.
http://analytics.blogspot.co.uk/2013/08/google-analytics-launches-real-time-api.html
Google has launched the real-time API, To embed, Follow the steps, embed the code and have fun .
Here is the examples.
https://ga-dev-tools.appspot.com/embed-api/
You can use following API provided by Google.
https://developers.google.com/analytics/devguides/reporting/

Creating a Google Calendar remotely

I've been researching this question for the last few weeks and have had no success trying to connect to Google through OAuth1 OR 2.
I have a client that needs a separate Calendar for each of the homes they are building. On creation of a new home in the database, I want to create a calendar and save the Id of the created calendar.
What options do I have to do this?
It seems like the only way is to have the user get redirected to Google and login to add a calendar... I want to use a static Google account and simply create the calendar that way, without having the annoying "Login to google" screen.
Google api lets you to do whatever you need with a Calendar using their provided libraries. Let's take a look: Google Developer: Instantiate Google Calendar
This SO posts discusses that. Specifically pay attention to the line in the accepted answer where it is mentions the process for adding a new calendar is similar to adding an event.
SO: Google Calendar API Selecting and creating Calendars
I also came across this tutorial which may be helpful in terms of other actions on the calendar once it has been created.
IBM Developer Works: Integrate your PHP Application with Google Calendar

Integrating Outlook Calendar to Website / Other

When the users add events to the online calendar they also can be added to the outlook calendar (synchronize). Obviously a site built using PHP can not integrate with desktop application directly, so I am looking alternative options.
Options I found:
Using PHP ICAL library creates an .ics file and the user can download it and install. Not the most user friendly way of doing it, might work.
Use SharePoint or exchange server- but have no previous experience working Microsoft technologies, so it not ideal.
Use Google Calendar and Zend Library (gdata), create online calendar and add events to that. Then using Google Calendar Sync tool the user can sync the online calendar to outlook. But the problem here is the all users need a gmail account to use the Sync tool, it not ideal when you have thousands of users on the site. Unless I create one global gmail account and create many calendars on that account, if that even possible.
Questions:
Are there any outlook plug-ins paid or free (ideally) that can achieve this?
Are there any web service/ APIs that can achieve this?
Any other ideas or solutions?
Office 365 comes with an REST API that can be used to read/write to calendars.
Here's some documentation on this. http://msdn.microsoft.com/office/office365/api/calendar-rest-operations
Alternatively, the EWS Managed API might be able to help you: http://msdn.microsoft.com/en-us/library/office/dd633696(v=exchg.80).aspx and
http://msdn.microsoft.com/en-us/library/office/dd633702(v=exchg.80).aspx
you could do this by having the outlook subscribe to the online calendar.
with phpicalendar you can have other clients subscribe to your calendars (here)
you may want to tweak the generated .ics file to include X-PUBLISHED-TTL - Recommended update interval for subscription to the calendar
To get the calender event follow these step:
Sign in to Calendar
On the toolbar, click Share
Select the calendar that you want to export/embed.
Click Get a link.
Under Show event details (click Create)
Note: If step number 5 is already performed, just skip it and click Link to event details
Copy the link that you needed and paste it on the desired program/website.
Use EWS exchange webservice to achieve this.
If it is a website with a no. of users u will need to create OU in exchange server and add a admin user who has read permissions to all accounts in the DL.
EWS exposes endpoints where in u can fetch the calendar mail add read and do all kind of operations.
Building off Rahul's idea but using a different approach - Microsoft provides something similar to a "RSS feed" that auto updates each time you GET the URL, except it's an feed of "ICS" event data:
Open up Outlook Web Access (OWA), e.g. if you are using a microsoft.com account the URL might be https://outlook.live.com/calendar/ (if you are using some other Microsoft 365 account the URL may be different)
On the top right, click the Settings icon
Click View all Outlook Settings
Click Calendar > Shared Calendars > and under Publish a calendar, select the calendar, then under Select permissions, choose as appropriate, then click Publish
It will give you HTML and ICS links. Copy the ICS link URL.
Use your favourite programming language/tool/software to periodically do a HTTPS request (using CURL or AJAX or some other HTTP fetch) using GET method to the URL you got in step 5. You will get back a bunch of calendar data in ICS format. Use this however you need. You may be able to find some pre-written code from elsewhere that parses ICS data for you, or you can manually create your own parser code if you have to.

Categories