Mercurial > pidgin-twitter
annotate twitter_api.h @ 357:732de90812d8
- fixed memory leaks
- some code cleanups
author | Yoshiki Yazawa <yaz@honeyplanet.jp> |
---|---|
date | Fri, 27 Aug 2010 01:13:44 +0900 |
parents | 0fe895195132 |
children |
rev | line source |
---|---|
254
c2620a99622b
- divided the source file into several parts.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff
changeset
|
1 #ifndef _PIDGIN_TWITTER_TWITTER_API_H_ |
c2620a99622b
- divided the source file into several parts.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff
changeset
|
2 #define _PIDGIN_TWITTER_TWITTER_API_H_ |
c2620a99622b
- divided the source file into several parts.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff
changeset
|
3 |
355
0fe895195132
implement OAuth authentication.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
345
diff
changeset
|
4 #include <cipher.h> /* from libpurple */ |
0fe895195132
implement OAuth authentication.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
345
diff
changeset
|
5 #include <request.h> |
0fe895195132
implement OAuth authentication.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
345
diff
changeset
|
6 #include <math.h> |
0fe895195132
implement OAuth authentication.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
345
diff
changeset
|
7 |
0fe895195132
implement OAuth authentication.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
345
diff
changeset
|
8 /* twitter API specific macros */ |
357 | 9 #define TWITTER_BASE_URL "http://twitter.com" |
355
0fe895195132
implement OAuth authentication.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
345
diff
changeset
|
10 #define TWITTER_API_BASE_URL "http://api.twitter.com" |
357 | 11 #define REQUEST_TOKEN_URL "http://twitter.com/oauth/request_token" |
12 #define ACCESS_TOKEN_URL "http://twitter.com/oauth/access_token" | |
13 #define AUTHORIZE_URL "http://twitter.com/oauth/authorize" | |
355
0fe895195132
implement OAuth authentication.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
345
diff
changeset
|
14 |
0fe895195132
implement OAuth authentication.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
345
diff
changeset
|
15 #define TWITTER_STATUS_GET "GET /1/statuses/home_timeline.xml?%s HTTP/1.1\r\n" \ |
0fe895195132
implement OAuth authentication.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
345
diff
changeset
|
16 "Host: api.twitter.com\r\n" \ |
0fe895195132
implement OAuth authentication.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
345
diff
changeset
|
17 "User-Agent: pidgin-twitter\r\n" |
0fe895195132
implement OAuth authentication.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
345
diff
changeset
|
18 |
0fe895195132
implement OAuth authentication.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
345
diff
changeset
|
19 #define TWITTER_STATUS_POST "POST /1/statuses/update.xml HTTP/1.1\r\n" \ |
0fe895195132
implement OAuth authentication.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
345
diff
changeset
|
20 "Host: api.twitter.com\r\n" \ |
0fe895195132
implement OAuth authentication.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
345
diff
changeset
|
21 "User-Agent: pidgin-twitter\r\n" \ |
0fe895195132
implement OAuth authentication.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
345
diff
changeset
|
22 "Content-Length: %d\r\n" |
0fe895195132
implement OAuth authentication.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
345
diff
changeset
|
23 |
0fe895195132
implement OAuth authentication.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
345
diff
changeset
|
24 #define TWITTER_FAV_POST "POST /1/favorites/create/%llu.xml HTTP/1.1\r\n" \ |
0fe895195132
implement OAuth authentication.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
345
diff
changeset
|
25 "Host: api.twitter.com\r\n" \ |
0fe895195132
implement OAuth authentication.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
345
diff
changeset
|
26 "User-Agent: pidgin-twitter\r\n" \ |
0fe895195132
implement OAuth authentication.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
345
diff
changeset
|
27 "Content-Length: %d\r\n" |
0fe895195132
implement OAuth authentication.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
345
diff
changeset
|
28 |
0fe895195132
implement OAuth authentication.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
345
diff
changeset
|
29 #define TWITTER_RETWEET_POST "POST /1/statuses/retweet/%llu.xml HTTP/1.1\r\n" \ |
0fe895195132
implement OAuth authentication.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
345
diff
changeset
|
30 "Host: api.twitter.com\r\n" \ |
0fe895195132
implement OAuth authentication.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
345
diff
changeset
|
31 "User-Agent: pidgin-twitter\r\n" \ |
0fe895195132
implement OAuth authentication.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
345
diff
changeset
|
32 "Content-Length: %d\r\n" |
0fe895195132
implement OAuth authentication.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
345
diff
changeset
|
33 |
0fe895195132
implement OAuth authentication.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
345
diff
changeset
|
34 #define TWITTER_STATUS_FORMAT "&source=pidgintwitter&status=%s" |
0fe895195132
implement OAuth authentication.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
345
diff
changeset
|
35 |
0fe895195132
implement OAuth authentication.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
345
diff
changeset
|
36 #define TWITTER_DEFAULT_INTERVAL (60) |
0fe895195132
implement OAuth authentication.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
345
diff
changeset
|
37 #define TWITTER_OLD_DEFAULT_ICON_URL "http://static.twitter.com/images/default_profile_bigger.png" |
0fe895195132
implement OAuth authentication.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
345
diff
changeset
|
38 #define TWITTER_DEFAULT_ICON_URL "http://s.twimg.com/images/default_profile_3_bigger.png" |
0fe895195132
implement OAuth authentication.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
345
diff
changeset
|
39 |
0fe895195132
implement OAuth authentication.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
345
diff
changeset
|
40 #define TWITTER_DEFAULT_RETRIEVE_COUNT (20) |
0fe895195132
implement OAuth authentication.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
345
diff
changeset
|
41 |
0fe895195132
implement OAuth authentication.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
345
diff
changeset
|
42 |
0fe895195132
implement OAuth authentication.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
345
diff
changeset
|
43 /* prototypes */ |
254
c2620a99622b
- divided the source file into several parts.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff
changeset
|
44 void post_status_with_api(PurpleAccount *account, char **buffer); |
c2620a99622b
- divided the source file into several parts.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff
changeset
|
45 gboolean get_status_with_api(gpointer data); |
345
2e37e715e4a6
add preliminary support for quotetweet and official retweet.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
254
diff
changeset
|
46 void fav_with_api(guint64 id); |
2e37e715e4a6
add preliminary support for quotetweet and official retweet.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
254
diff
changeset
|
47 void retweet_with_api(guint64 id); |
254
c2620a99622b
- divided the source file into several parts.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff
changeset
|
48 void signed_on_cb(PurpleConnection *gc); |
c2620a99622b
- divided the source file into several parts.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff
changeset
|
49 |
c2620a99622b
- divided the source file into several parts.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
diff
changeset
|
50 #endif |