Re: [twitter-dev] A new permission level

2011-05-18 Thread Jim Cortez

Matt,
You say:
This means applications which use xAuth and want to access direct 
messages must send a user through the full OAuth flow.
What if the client using xAuth has no browser and therefore cannot go 
through oAuth? Does this mean that direct messages cannot be accessed? 
Is there a process I can go through to get our app approved for use of 
direct messages without using oAuth?


Thanks,
Jim Cortez


On 5/18/11 10:01 AM, Matt Harris wrote:

Hey everyone,

We recently updated our OAuth screens to give users greater 
transparency about the level of access applications have to their 
accounts. The valuable feedback Twitter users and developers have 
given us played a large part in that redesign and helped us identify 
where we can do more.


In particular, users and developers have requested greater granularity 
for permission levels.


In response to this feedback, we have created a new permission level 
for applications called “Read, Write & Direct Messages”. This 
permission will allow an application to read or delete a user's direct 
messages. When we enforce this permission, applications without a 
“Read, Write & Direct Messages” token will be unable to read or delete 
direct messages. To ensure users know that an application is receiving 
access to their direct messages, we are also restricting this 
permission to the OAuth /authorize web flow only. This means 
applications which use xAuth and want to access direct messages must 
send a user through the full OAuth flow.



What does this mean for your application?
If you do not need access to direct messages: you won’t need to make 
any changes to your application. When we enforce the new permission 
level your read or read/write token will automatically lose access to 
direct messages.


If you do need access to direct messages: you will need to edit your 
application record on https://dev.twitter.com/apps and change the 
permission level of your application to “Read, Write and Direct 
Messages”. The new permission will not affect existing tokens which 
means existing users or your app or service will need to reauthorize.


We know this will take some time so we are allowing a transition 
period until the end of this month. During this time there will be no 
change to the access Read/Write tokens have to a users account. 
However, at the end of the month any tokens which have not been 
upgrade to “Read, Write and Direct Messages” will be unable to access 
and delete direct messages.



Affected APIs and requests
On the REST API, Read and Read/Write applications will no longer be 
able to use these API methods:

/1/direct_messages.{format}
/1/direct_messages/sent.{format}
/1/direct_messages/show.{format}
/1/direct_messages/destroy.{format}

For the Streaming API, both User Streams and Site Streams will only 
receive direct messages if the user has authorised an application to 
access direct messages.


Applications that use “Sign-in with Twitter” or xAuth will only be 
able to receive Read or Read/Write tokens.


What this means is only applications which direct a user through the 
OAuth web flow will be able to receive access tokens that allow access 
to direct messages. Any other method of authorization, including 
xAuth, will only be able to receive Read/Write tokens.



What will happen when the permission is activated
When we activate the new permission, all Read and Read/Write 
user_tokens issued to third-party applications will lose their ability 
to read direct messages. Any attempt to read direct messages will 
result in an HTTP 403 error being returned.


For example, a GET request to 
https://api.twitter.com/1/direct_messages/sent.json will return an 
HTTP 403 Forbidden with the response body:


{"errors":[{"code":93,"message":"This application is not allowed to 
access or delete your direct messages"}]}



Key Points
* If you wish to access a user’s direct messages you will need to 
update your application and reauthorize existing tokens.
* The only way to get direct message access is to request access 
through the OAuth /authorize web flow. You will not be permitted to 
access direct messages if you use xAuth.
* When we enforce the permission Read/Write and Read tokens will be 
unable to access and delete direct messages.
* Read/Write tokens will be able to send direct messages after the 
permission is enforced.


We’ll be collating responses and adding more information on our 
developer resources permission model page: 
https://dev.twitter.com/pages/application-permission-model


We have also blogged about this on the Twitter blog: 
http://blog.twitter.com/2011/05/mission-permission.html


Best,
@themattharris
--
Twitter developer documentation and resources: https://dev.twitter.com/doc
API updates via Twitter: https://twitter.com/twitterapi
Issues/Enhancements Tracker: 
https://code.google.com/p/twitter-api/issues/list
Change your membership to this group: 
https://gro

Re: [twitter-dev] Incorrect signature

2011-04-04 Thread Jim Barcelona
It looks like you need to do the OAuth dance:
http://stackoverflow.com/questions/3516931/twitter-oauth-returning-incorrect-signature-please-help


On Mon, Apr 4, 2011 at 3:19 PM, geltogel  wrote:

> Hi everybody..
> Im trying to change twitter user status through my app..
> I already have the acces token but when i try to post I keep reciving
> "Incorrect signature"
>
> Im using php
>  and this is the main code:
>
> $config = array
>  (
> "requestTokenURL" => "https://api.twitter.com/1/statuses/
> update.json",
>  "requestTokenMethod" => "POST",
>  "signatureMethod" => "HMAC-SHA1",
> "consumerKey" => "",
>  "consumerSecret" => "**"
>);
>
> $requestParameters2 = array
>  (
>"oauth_consumer_key" => $config['consumerKey'],
>"oauth_nonce" => md5(time()),
>"oauth_signature_method" => $config['signatureMethod'],
>"oauth_token" =>  $oauthToken,
>"oauth_timestamp" => time(),
>"oauth_verversion" => "1.0",
>"status" => urlencode("HeyThere")
>   );
>
> $signatureParameters2 = array();
> foreach ($requestParameters2 as $parameter2 => $value2)
> {
>$signatureParameters2[] = rfc3986_encode($parameter2) . '=' .
> rfc3986_encode($value2);
> }
>
> $signatureParameters2 = rfc3986_encode(implode('&',
> $signatureParameters2));
>
>
> $baseString =
> urlencode(rfc3986_encode($config['requestTokenMethod'])
> ."&".rfc3986_encode($config['requestTokenURL'])
> ."&".$signatureParameters2);
>
> $key = rfc3986_encode($config['consumerSecret']) ."&".
> rfc3986_encode($tokenSecret);
>
> $signature = base64_encode(hash_hmac('sha1', $baseString, $key,
> true));
> $RFC3986signature = rfc3986_encode($signature);
>
> / Im olso using this function to code:
> function rfc3986_encode($string)
> {
>$result = rawurlencode($string);
>$result = str_replace('%7E', '~', $result);
>$result = str_replace('=', '%3D', $result);
>$result = str_replace('+', '%2B', $result);
>
>return $result;
> }
>
> //this is my header///
>
> Authorization: OAuth oauth_consumer_key="MIEedQq2dC0ttGgZQ0x***",
> oauth_nonce="6c6a3cf504125e84f563c668b622",
> oauth_signature_method="HMAC-SHA1", oauth_timestamp="1301954345",
> oauth_token="114032855-6Lc1pnLLx2qhy0YrerDGDlUEucLJAPTgUpytYiPT",
> oauth_signature=aw2S42pl%2BXuJKgua06y8kNQ2zoI%3D, oauth_version=1.0,
> status="HeyThere"
>
> /// thats it /
> I know is much to ask to see all this code but Im so stuck and the
> fact to be so close to have it done makes it worst hehe..
>
> Thanks..
>
> --
> Twitter developer documentation and resources: http://dev.twitter.com/doc
> API updates via Twitter: http://twitter.com/twitterapi
> Issues/Enhancements Tracker:
> http://code.google.com/p/twitter-api/issues/list
> Change your membership to this group:
> http://groups.google.com/group/twitter-development-talk
>



-- 
Jim "Barce" Barcelona

ba...@appdevandmarketing.com

http://appdevandmarketing.com/

http://twitter.com/barce

-- 
Twitter developer documentation and resources: http://dev.twitter.com/doc
API updates via Twitter: http://twitter.com/twitterapi
Issues/Enhancements Tracker: http://code.google.com/p/twitter-api/issues/list
Change your membership to this group: 
http://groups.google.com/group/twitter-development-talk


Re: [twitter-dev] Please help me

2011-04-03 Thread Jim Barcelona
I tried running nslookup api.twitter.com and the host resolves and is up:
[foo ~]$ nslookup api.twitter.com
Server: xxx.xxx.xxx.xxx
Address: xxx.xxx.xxx.xxx

Non-authoritative answer:
Name: api.twitter.com
Address: 199.59.148.87
Name: api.twitter.com
Address: 199.59.148.88
Name: api.twitter.com
Address: 199.59.148.20
Name: api.twitter.com
Address: 199.59.148.30

Ping works, too.

Are you able to get an IP address for api.twitter.com from your server?



On Sun, Apr 3, 2011 at 7:10 AM, Johan Lim  wrote:

> I've got an error in my twitter client, it showing : "Twitter timed
> out
>
> Dabr gave up on waiting for Twitter to respond. They're probably
> overloaded right now, try again in a minute.
> 6:Couldn't resolve host 'api.twitter.com'."
> See it at my website http://wassabi.co.tv/tweet/oauth
> How to resolve it? Thanks
>
> --
> Twitter developer documentation and resources: http://dev.twitter.com/doc
> API updates via Twitter: http://twitter.com/twitterapi
> Issues/Enhancements Tracker:
> http://code.google.com/p/twitter-api/issues/list
> Change your membership to this group:
> http://groups.google.com/group/twitter-development-talk
>



-- 
Jim "Barce" Barcelona

ba...@appdevandmarketing.com

http://appdevandmarketing.com/

http://twitter.com/barce

-- 
Twitter developer documentation and resources: http://dev.twitter.com/doc
API updates via Twitter: http://twitter.com/twitterapi
Issues/Enhancements Tracker: http://code.google.com/p/twitter-api/issues/list
Change your membership to this group: 
http://groups.google.com/group/twitter-development-talk


Re: [twitter-dev] get users by profile location?

2011-03-30 Thread Jim Barcelona
Not via the API, but I'm not quite sure which users and whose profile you
mean. Can you give an example?

On Wed, Mar 30, 2011 at 8:17 AM, Lauren Sperber wrote:

> Anyone know if there is a way to search twitter users by the location
> provided in their profile?
>
> --
> Twitter developer documentation and resources: http://dev.twitter.com/doc
> API updates via Twitter: http://twitter.com/twitterapi
> Issues/Enhancements Tracker:
> http://code.google.com/p/twitter-api/issues/list
> Change your membership to this group:
> http://groups.google.com/group/twitter-development-talk
>



-- 
Jim "Barce" Barcelona

ba...@appdevandmarketing.com

http://appdevandmarketing.com/

http://twitter.com/barce

-- 
Twitter developer documentation and resources: http://dev.twitter.com/doc
API updates via Twitter: http://twitter.com/twitterapi
Issues/Enhancements Tracker: http://code.google.com/p/twitter-api/issues/list
Change your membership to this group: 
http://groups.google.com/group/twitter-development-talk


Re: [twitter-dev] convert large number of usernames to userids

2011-03-28 Thread Jim Barcelona
The solution for this would involve coding if it were me.

Store the usernames in an array.
Loop through the array while calling:
http://api.twitter.com/1/users/show.json?screen_name=
Parse out the id.

Cheers, Barce

On Mon, Mar 28, 2011 at 1:14 PM, Riley  wrote:

> How would I go about converting a large number of usernames (300+) to
> userids? My plan is to use user/follow, which uses userids. I have
> tried using users/lookup (http://dev.twitter.com/doc/get/users/
> lookup), but I need the OAuth of the users I am looking up, which I
> don't have.  I could use user/show but that would take a long time, I
> am hoping to find something more efficient.  Thank you.
>
> --
> Twitter developer documentation and resources: http://dev.twitter.com/doc
> API updates via Twitter: http://twitter.com/twitterapi
> Issues/Enhancements Tracker:
> http://code.google.com/p/twitter-api/issues/list
> Change your membership to this group:
> http://groups.google.com/group/twitter-development-talk
>



-- 
Jim "Barce" Barcelona

ba...@appdevandmarketing.com

http://appdevandmarketing.com/

http://twitter.com/barce

-- 
Twitter developer documentation and resources: http://dev.twitter.com/doc
API updates via Twitter: http://twitter.com/twitterapi
Issues/Enhancements Tracker: http://code.google.com/p/twitter-api/issues/list
Change your membership to this group: 
http://groups.google.com/group/twitter-development-talk


[twitter-dev] Re: "You can't follow yourself"

2011-01-20 Thread Jim Spath
NM, I solved my own problem, the correct syntax is indeed:

T.User.find( name_to_follow ).follow();

On Jan 20, 5:08 pm, Jim Spath  wrote:
> I'm trying to use twitter anywhere to initiate a follow, but it's not
> behaving as expected?
>
> I'm trying to do:
>
> T.User.current().follow( name_to_follow );
>
> Is this not how it works?  Should I actually be doing this:
>
> T.User.find( name_to_follow ).follow();
>
> Thanks!
> Jim

-- 
Twitter developer documentation and resources: http://dev.twitter.com/doc
API updates via Twitter: http://twitter.com/twitterapi
Issues/Enhancements Tracker: http://code.google.com/p/twitter-api/issues/list
Change your membership to this group: 
http://groups.google.com/group/twitter-development-talk


[twitter-dev] "You can't follow yourself"

2011-01-20 Thread Jim Spath
I'm trying to use twitter anywhere to initiate a follow, but it's not
behaving as expected?

I'm trying to do:

T.User.current().follow( name_to_follow );

Is this not how it works?  Should I actually be doing this:

T.User.find( name_to_follow ).follow();

Thanks!
Jim

-- 
Twitter developer documentation and resources: http://dev.twitter.com/doc
API updates via Twitter: http://twitter.com/twitterapi
Issues/Enhancements Tracker: http://code.google.com/p/twitter-api/issues/list
Change your membership to this group: 
http://groups.google.com/group/twitter-development-talk


[twitter-dev] Names already taken

2011-01-07 Thread Jim
When you try to give your app a name at dev.twitter.com and get the
"this name is already taken" message does this mean that there's
already an app with that name? Or a Twitter user with that name?

And does the app name have to be unique across the sets of both
usernames and app names?

Finally, is there any way to find out if a taken app name is actually
being used? I tried Googling for my taken app name and can't find a
Twitter app by that name.

-- 
Twitter developer documentation and resources: http://dev.twitter.com/doc
API updates via Twitter: http://twitter.com/twitterapi
Issues/Enhancements Tracker: http://code.google.com/p/twitter-api/issues/list
Change your membership to this group: 
http://groups.google.com/group/twitter-development-talk


[twitter-dev] @Anywhere follow and update events?

2010-12-13 Thread Jim Spath
Hi,

I am using the hovercards and T.Status.update() functionality in
@Anywhere.

I was wondering if it possible to specify event callbacks when the
user has successfully followed or tweeted.

I've looked through the documentation and searched and didn't seen
anything, but maybe I missed something?

Thanks!
Jim

-- 
Twitter developer documentation and resources: http://dev.twitter.com/doc
API updates via Twitter: http://twitter.com/twitterapi
Issues/Enhancements Tracker: http://code.google.com/p/twitter-api/issues/list
Change your membership to this group: 
http://groups.google.com/group/twitter-development-talk


[twitter-dev] Does @Anywhere shorten URLs automatically?

2010-12-09 Thread Jim Spath
I've successfully setup @anywhere on my development site, but noticed
it didn't automatically shorten the URLs using t.co like the Tweet
Button does.

Is there an option to enable this, or is it simply not offered as part
of @Anywhere?

Thanks!
Jim

-- 
Twitter developer documentation and resources: http://dev.twitter.com/doc
API updates via Twitter: http://twitter.com/twitterapi
Issues/Enhancements Tracker: http://code.google.com/p/twitter-api/issues/list
Change your membership to this group: 
http://groups.google.com/group/twitter-development-talk


[twitter-dev] Re: Languages available on Twitter.

2010-12-05 Thread Jim DeLaHunt
Adam:

On Dec 5, 5:59 am, "a.przewo...@yahoo.pl" 
wrote:
> Hello,
>
> I'd like to ask will Twitter available in other languages? I think
> twitter might gain more popularity if it might be available in many
> languages. I hope You will think about that.

Twitter is gradually translating the UI of their web site into other
languages. See their blog posts: "Growing Around the World"  and "Coming Soon:
Twitter in More Languages" . Perhaps you are interested in
Twitter.com localised into Polish. I'm only an outside developer, not
a Twitter decision maker, but I expect that Twitter agrees with the
value of translating Twitter.com into many languages. It's only a
matter of when, with what priority relative to other projects.

If you use a different Twitter client than Twitter.com, then of course
the developer of that client is responsible for making it available in
other languages.

And, of course, the Twitter message stream has been open to messages
in most languages from the very start.

I hope this is helpful for you.

-- 
Twitter developer documentation and resources: http://dev.twitter.com/doc
API updates via Twitter: http://twitter.com/twitterapi
Issues/Enhancements Tracker: http://code.google.com/p/twitter-api/issues/list
Change your membership to this group: 
http://groups.google.com/group/twitter-development-talk


[twitter-dev] Re: Followers RSS?

2010-11-08 Thread Jim Chevalier
Someone else's follower's tweets?
Or your follower's tweets?

It sounds like your asking about the former, but I figured I'd ask
since http://myfollowerlist.com could help with your follower's
tweets...

-Jim

On Nov 8, 7:32 am, SteeleR  wrote:
> Is there a way to get a RSS of someone's followers tweets. Something
> likehttp://twitter.com/statuses/followers/username.rss

-- 
Twitter developer documentation and resources: http://dev.twitter.com/doc
API updates via Twitter: http://twitter.com/twitterapi
Issues/Enhancements Tracker: http://code.google.com/p/twitter-api/issues/list
Change your membership to this group: 
http://groups.google.com/group/twitter-development-talk


Re: [twitter-dev] Javascript, Snowflake, and Direct Message id's

2010-11-02 Thread Jim Cortez
Thanks Tom. I am not doing any real data analysis, so timestamps (even 
if they are the same) is just fine for me.

Jim

On 11/2/10 10:35 AM, Tom van der Woerdt wrote:

The first 41 bits of the ID are the timestamp, so yes, they can be used
to sort. However, be aware that they won't always have a perfect
accuracy: only the first 41 bits can be used to sort, the other 23 bits
are to make sure that the ID is unique. If you have two tweets where the
first 41 bits are the same, there is no way to know which one was first.

Tom


On 11/2/10 6:25 PM, Jim Cortez wrote:

Can anyone help out on this? My question is: If I compare Direct Message
ID's to each other to determine send/receive order, will it work under
Snowflake?
Thanks,
Jim

On 11/1/10 12:27 PM, Jim Cortez wrote:

When 2 numeric strings are compared, they are done by magnitude. Some
tests:

"10765432100123456789">  "10765432100123456790"
=>  false
"1076543210012345678901010101">"10765432100123456789"
=>  true
"1076543210012345678901010101"<  "10765432100123456789"
=>  false
"10765432100123456789" === "10765432100123456789"
=>  true
"10765432100123456789" == "10765432100123456789"
=>  true
"10765432100123456789" === "10765432100123456789010101011001"
=>  false

The only problem with this approach occurs when the numeric strings
have a different length:
"10"<  "2"
=>  true

I get around this by checking length first. See this sort comparison
function:

function(b,a){
var aLen = a.id_str.length;
var bLen = b.id_str.length;
if(aLen == bLen){
   return a.id_str>  b.id_str ? 1 : a.id_str == b.id_str ? 0 : -1;
}else{
   return aLen>  bLen ? 1 : 0-1;
}
}

As for the JSON parser in our environment, I might be OK if what you
say is true:

var j = JSON.parse('{"id": 10765432100123456789, "id_str":
"10765432100123456789"}');
_dump(j);
id:  10765432100123458000
id_str: 10765432100123456789

So my question about theoretical safety is still outstanding. If I
compare Direct Message Snowflake ID's, will it blend?
Jim

On 11/1/10 12:00 PM, Tom van der Woerdt wrote:

Yes, and no. Javascript has problems using numbers larger than 53 bits.
Comparing them anyway (after conversion from string to int) may cause
loss of accuracy. This itself is not very much an issue: only the first
41 bits of the ID can be used for comparison, the rest is simply to make
sure it is actually an unique ID.

The question remains where the loss of accuracy is: in the first 11 bits
or the last 11 bits. If it's the last 11 bits that get ignored, there is
no problem with comparing the numbers. If it's the first 11 bits that
get ignored, you will have to shift the numbers 11 bits before comparing
them.

Tom


On 11/1/10 7:47 PM, Jim Cortez wrote:

I have learned that I can safely compare 2 long integer strings without
any problem. Is comparing Snowflake direct message id's in the manner
described safe?
Jim

On 11/1/10 11:29 AM, Jim Cortez wrote:

Hello all,
  I have an non-browser xAuth client written in Javascript. I am in
the process of changing up the codebase to use id_str in anticipation
of Snowflake. One popular design decision we have made is to
interleave sent and received direct messages into one unified list.
Currently, we sort by message ID to figure out which message comes
before the other. Since JS cannot parse the new 64bit integers, we can
no longer do this. The only way I see to do this under Snowflake is to
sort based on created_at, is that a valid approach? Is there a better
way to approach this problem?
Thank you,
Jim Cortez



--
Twitter developer documentation and resources: http://dev.twitter.com/doc
API updates via Twitter: http://twitter.com/twitterapi
Issues/Enhancements Tracker: http://code.google.com/p/twitter-api/issues/list
Change your membership to this group: 
http://groups.google.com/group/twitter-development-talk


Re: [twitter-dev] Javascript, Snowflake, and Direct Message id's

2010-11-02 Thread Jim Cortez
Can anyone help out on this? My question is: If I compare Direct Message 
ID's to each other to determine send/receive order, will it work under 
Snowflake?

Thanks,
Jim

On 11/1/10 12:27 PM, Jim Cortez wrote:
When 2 numeric strings are compared, they are done by magnitude. Some 
tests:


"10765432100123456789" > "10765432100123456790"
=> false
"1076543210012345678901010101" >"10765432100123456789"
=> true
"1076543210012345678901010101" < "10765432100123456789"
=> false
"10765432100123456789" === "10765432100123456789"
=> true
"10765432100123456789" == "10765432100123456789"
=> true
"10765432100123456789" === "10765432100123456789010101011001"
=> false

The only problem with this approach occurs when the numeric strings 
have a different length:

"10" < "2"
=> true

I get around this by checking length first. See this sort comparison 
function:


function(b,a){
   var aLen = a.id_str.length;
   var bLen = b.id_str.length;
   if(aLen == bLen){
  return a.id_str > b.id_str ? 1 : a.id_str == b.id_str ? 0 : -1;
   }else{
  return aLen > bLen ? 1 : 0-1;
   }
}

As for the JSON parser in our environment, I might be OK if what you 
say is true:


var j = JSON.parse('{"id": 10765432100123456789, "id_str": 
"10765432100123456789"}');

_dump(j);
id:  10765432100123458000
id_str: 10765432100123456789

So my question about theoretical safety is still outstanding. If I 
compare Direct Message Snowflake ID's, will it blend?

Jim

On 11/1/10 12:00 PM, Tom van der Woerdt wrote:

Yes, and no. Javascript has problems using numbers larger than 53 bits.
Comparing them anyway (after conversion from string to int) may cause
loss of accuracy. This itself is not very much an issue: only the first
41 bits of the ID can be used for comparison, the rest is simply to make
sure it is actually an unique ID.

The question remains where the loss of accuracy is: in the first 11 bits
or the last 11 bits. If it's the last 11 bits that get ignored, there is
no problem with comparing the numbers. If it's the first 11 bits that
get ignored, you will have to shift the numbers 11 bits before comparing
them.

Tom


On 11/1/10 7:47 PM, Jim Cortez wrote:

I have learned that I can safely compare 2 long integer strings without
any problem. Is comparing Snowflake direct message id's in the manner
described safe?
Jim

On 11/1/10 11:29 AM, Jim Cortez wrote:

Hello all,
 I have an non-browser xAuth client written in Javascript. I am in
the process of changing up the codebase to use id_str in anticipation
of Snowflake. One popular design decision we have made is to
interleave sent and received direct messages into one unified list.
Currently, we sort by message ID to figure out which message comes
before the other. Since JS cannot parse the new 64bit integers, we can
no longer do this. The only way I see to do this under Snowflake is to
sort based on created_at, is that a valid approach? Is there a better
way to approach this problem?
Thank you,
Jim Cortez





--
Twitter developer documentation and resources: http://dev.twitter.com/doc
API updates via Twitter: http://twitter.com/twitterapi
Issues/Enhancements Tracker: http://code.google.com/p/twitter-api/issues/list
Change your membership to this group: 
http://groups.google.com/group/twitter-development-talk


Re: [twitter-dev] Javascript, Snowflake, and Direct Message id's

2010-11-01 Thread Jim Cortez

When 2 numeric strings are compared, they are done by magnitude. Some tests:

"10765432100123456789" > "10765432100123456790"
=> false
"1076543210012345678901010101" >"10765432100123456789"
=> true
"1076543210012345678901010101" < "10765432100123456789"
=> false
"10765432100123456789" === "10765432100123456789"
=> true
"10765432100123456789" == "10765432100123456789"
=> true
"10765432100123456789" === "10765432100123456789010101011001"
=> false

The only problem with this approach occurs when the numeric strings have 
a different length:

"10" < "2"
=> true

I get around this by checking length first. See this sort comparison 
function:


function(b,a){
   var aLen = a.id_str.length;
   var bLen = b.id_str.length;
   if(aLen == bLen){
  return a.id_str > b.id_str ? 1 : a.id_str == b.id_str ? 0 : -1;
   }else{
  return aLen > bLen ? 1 : 0-1;
   }
}

As for the JSON parser in our environment, I might be OK if what you say 
is true:


var j = JSON.parse('{"id": 10765432100123456789, "id_str": 
"10765432100123456789"}');

_dump(j);
id:  10765432100123458000
id_str: 10765432100123456789

So my question about theoretical safety is still outstanding. If I 
compare Direct Message Snowflake ID's, will it blend?

Jim

On 11/1/10 12:00 PM, Tom van der Woerdt wrote:

Yes, and no. Javascript has problems using numbers larger than 53 bits.
Comparing them anyway (after conversion from string to int) may cause
loss of accuracy. This itself is not very much an issue: only the first
41 bits of the ID can be used for comparison, the rest is simply to make
sure it is actually an unique ID.

The question remains where the loss of accuracy is: in the first 11 bits
or the last 11 bits. If it's the last 11 bits that get ignored, there is
no problem with comparing the numbers. If it's the first 11 bits that
get ignored, you will have to shift the numbers 11 bits before comparing
them.

Tom


On 11/1/10 7:47 PM, Jim Cortez wrote:

I have learned that I can safely compare 2 long integer strings without
any problem. Is comparing Snowflake direct message id's in the manner
described safe?
Jim

On 11/1/10 11:29 AM, Jim Cortez wrote:

Hello all,
 I have an non-browser xAuth client written in Javascript. I am in
the process of changing up the codebase to use id_str in anticipation
of Snowflake. One popular design decision we have made is to
interleave sent and received direct messages into one unified list.
Currently, we sort by message ID to figure out which message comes
before the other. Since JS cannot parse the new 64bit integers, we can
no longer do this. The only way I see to do this under Snowflake is to
sort based on created_at, is that a valid approach? Is there a better
way to approach this problem?
Thank you,
Jim Cortez



--
Twitter developer documentation and resources: http://dev.twitter.com/doc
API updates via Twitter: http://twitter.com/twitterapi
Issues/Enhancements Tracker: http://code.google.com/p/twitter-api/issues/list
Change your membership to this group: 
http://groups.google.com/group/twitter-development-talk


Re: [twitter-dev] Javascript, Snowflake, and Direct Message id's

2010-11-01 Thread Jim Cortez
I have learned that I can safely compare 2 long integer strings without 
any problem. Is comparing Snowflake direct message id's in the manner 
described safe?

Jim

On 11/1/10 11:29 AM, Jim Cortez wrote:

Hello all,
I have an non-browser xAuth client written in Javascript. I am in 
the process of changing up the codebase to use id_str in anticipation 
of Snowflake. One popular design decision we have made is to 
interleave sent and received direct messages into one unified list. 
Currently, we sort by message ID to figure out which message comes 
before the other. Since JS cannot parse the new 64bit integers, we can 
no longer do this. The only way I see to do this under Snowflake is to 
sort based on created_at, is that a valid approach? Is there a better 
way to approach this problem?

Thank you,
Jim Cortez



--
Twitter developer documentation and resources: http://dev.twitter.com/doc
API updates via Twitter: http://twitter.com/twitterapi
Issues/Enhancements Tracker: http://code.google.com/p/twitter-api/issues/list
Change your membership to this group: 
http://groups.google.com/group/twitter-development-talk


[twitter-dev] Javascript, Snowflake, and Direct Message id's

2010-11-01 Thread Jim Cortez

Hello all,
I have an non-browser xAuth client written in Javascript. I am in 
the process of changing up the codebase to use id_str in anticipation of 
Snowflake. One popular design decision we have made is to interleave 
sent and received direct messages into one unified list. Currently, we 
sort by message ID to figure out which message comes before the other. 
Since JS cannot parse the new 64bit integers, we can no longer do this. 
The only way I see to do this under Snowflake is to sort based on 
created_at, is that a valid approach? Is there a better way to approach 
this problem?

Thank you,
Jim Cortez

--
Twitter developer documentation and resources: http://dev.twitter.com/doc
API updates via Twitter: http://twitter.com/twitterapi
Issues/Enhancements Tracker: http://code.google.com/p/twitter-api/issues/list
Change your membership to this group: 
http://groups.google.com/group/twitter-development-talk


Re: [twitter-dev] WHAT THE HELL ARE YOU THINKING

2010-10-25 Thread Jim Cortez

 Use xAuth: http://dev.twitter.com/pages/xauth
No web server required.
Jim

On 10/25/10 12:28 PM, Keiya Bachhuber wrote:

Is the next version of twitter going to be written in C++ and use GTK+
for rendering? Because that's what you're asking desktop developers to
do by forcing OAuth. I have to include a web server in my app to work
with twitter? What the hell! It's probably simpler just to pretend to
be Chrome or Firefox. Seriously. Working through the mess that is HTML
(any HTML, not just yours) is easier than getting the nice clean
feeds.

Good job. You made me hate you.
Keiya.



--
Twitter developer documentation and resources: http://dev.twitter.com/doc
API updates via Twitter: http://twitter.com/twitterapi
Issues/Enhancements Tracker: http://code.google.com/p/twitter-api/issues/list
Change your membership to this group: 
http://groups.google.com/group/twitter-development-talk


[twitter-dev] Re: Reminder: Status IDs are changing at 10am PDT/5pm UTC Tuesday 12th October 2010

2010-10-12 Thread Jim Chevalier
Hey Ryan,

The link that Matt Harris pointed to states:
"...parameters such as max_id and since_id will work as
expected...things like counting Tweets by subtracting status IDs will
not be possible."

So, on the one hand it seems like you'll be able to continue without
modification ... but on the other hand, it seems like you will have to
modify your methods - specifically, the "minus one to stop the same
tweet appearing" part.

I'm guessing that you'll have to slightly modify your code to not use
a 'less one' approach, but hopefully someone else can give you a more
solid answer.

-Jim

On Oct 12, 4:51 am, artesea  wrote:
> Quick question, for the timeline I've been using max_id=123456789 as a
> method of paging backwards instead of page=2. This stops the last few
> tweets from the previous page appearing at the top as more people
> tweet.
> So if the last tweet on the current page has an ID of 123456790, I
> make a request for max_id=123456789 (minus one to stop the same tweet
> appearing).
> However if the tweets will no longer be directly incremental, will
> this method still work or could the odd tweet disappear (I assume they
> would need to be posted at the same millisecond, but it could be
> possible)?
>
> Thanks
> Ryan
>
> On Oct 12, 7:03 am, Matt Harris  wrote:
>
> > Hey everyone,
>
> > Just a quick reminder that Snowflake (the new way we will generate
> > Status IDs) is scheduled to go live at 10am PDT/5pm UTC Tuesday 12th
> > October 2010 - today for many of you and tomorrow for those of you who
> > are on PDT. We'll send a Tweet on @twitterapi as a reminder just
> > before we do this, and another after Snowflake is enabled.
>
> > The original announcement along with more information can be found in
> > our Announcements archive:
> >  http://groups.google.com/group/twitter-api-announce/browse_thread/thr...
>
> > Best,
>
> > @themattharris
> > Developer Advocate, Twitterhttp://twitter.com/themattharris

-- 
Twitter developer documentation and resources: http://dev.twitter.com/doc
API updates via Twitter: http://twitter.com/twitterapi
Issues/Enhancements Tracker: http://code.google.com/p/twitter-api/issues/list
Change your membership to this group: 
http://groups.google.com/group/twitter-development-talk


[twitter-dev] Re: list api create_all method not working

2010-09-14 Thread Jim Chevalier
Hello,

I find that pushing 99 users into a create_all call will fall over
fairly often with a 502 error.  To get around that, I've backed down
as far as 5...
Although, and I might be just totally & completely wrong about this,
it seems like the response codes don't *completely* line up with the
actual result.  It could be due to the methods I'm using, but it seems
like I could get 502 response codes & still have success.  I haven't
had the time to set up strict testing on this, yet.

I've also found that the 500-user max for lists isn't a hard-set
rule.  I've seen lists that I create go into the 600s... They usually
get corrected later on, though, so I'm not sure what causes that
glitch.

-Jim

On Sep 14, 1:11 pm, Ken  wrote:
> Finally, after discovering this thread, I added /members/ to 
> thecreate_allendpoint and was able to add 98 members to alist. As
> twitter would say, 'Yay'...
>
> I filed a bug to have the documentation corrected.
>
> Are there still problems adding lots of members, as reported earlier
> in this thread? Since rate-limiting as listed as false in the doc,
> would it be more reliable to just loop over :user/:list_id/members 100
> times? I need to go for "reliable" wherever possible... That way we
> could add up to the 500 members maximum. Recommended ornotreally?
>
> Thanks
> -Ken
>
> On Aug 23, 9:07 pm, Jim Chevalier  wrote:
>
> > Hello,
>
> > Ah-ha! I didnothave /members/ in my POST URL.  Thanks for pointing
> > that out!
> > This actually make it seem 
> > likehttp://dev.twitter.com/doc/post/:user/:list_id/create_all
> > should be changed to state:
> > POSThttp://api.twitter.com/version/:user/:list_id/members/create_all.format
>
> > I also didn't realize I could/should check on $connection->http_code
> > so often.  Thanks for pointing that out as well.
> > It's funny, now that you mention it, I notice the test.php file you
> > included in twitteroauth has that call *everywhere*.
>
> > It seems like I should rewrite my calls to be more like the
> > "twitteroauth_row" function you define in the test.php file so that I
> > can use the $connection->http_code results as error-checking.
> > I'll also have to test if setting "public $retry = TRUE;" in the
> > twitteroauth.php file helps with the 502 response that comes when
> > attempting to push 99 users through thecreate_allcall...
>
> > Thanks for all the help!
> > -Jim
>
> > On Aug 23, 2:44 pm, Abraham Williams <4bra...@gmail.com> wrote:
>
> > > After each TwitterOAuth call you should check $connection->http_code to
> > > check what the result is. 200 on success, 404 onnotfound, etc.
>
> > > My quick findings:
> > > Works: $connection->post('abraham/test3/members/create_all', 
> > > array('user_id'
> > > => $user_ids));
> > > AKA: $connection->post('{$screen_name/{$list}/members/create_all',
> > > array('user_id' => $user_ids));
>
> > > But with the 99 user_ids it would usually return a 502 after adding ~60
> > > users to thelist:http://goo.gl/Zur3
>
> > > Abraham
> > > -
> > > Abraham Williams | Hacker Advocate |http://abrah.am
> > > @abraham |http://projects.abrah.am|http://blog.abrah.am
> > > This email is: [ ] shareable [x] ask first [ ] private.
>
> > > On Mon, Aug 23, 2010 at 10:54, Jim Chevalier  wrote:
> > > > hrm, back to square one then...
>
> > > > Abraham - the value of $users is:
>
> > > > 2142731,14125623,15998931,19560364,16559320,17036420,14791918,16908659,5538992,14984281,20188175,14277276,111226850,14327961,20257060,94168006,107679193,54567920,18171797,8886022,16390772,69422500,171538302,818340,168929218,141333525,132534968,14124542,14408989,138293290,2039761,6752072,111896485,175801197,14912789,22907920,15099178,16583906,10870772,94269486,174521748,82002786,15395087,39407092,123734452,17193910,16362662,7762662,21514744,7596972,31563269,23147529,27440127,14337563,1528701,82497472,19251912,15292430,17005679,7192042,14600753,97484744,2023641,92086501,15447441,98735657,16950385,2023191,14411651,23111875,2900,15039436,14479810,16024218,57933102,8453452,18363508,16569530,21034443,17007607,7029452,54997124,47397228,15226527,18193201,22278762,15127641,14204449,60616288,16465359,10371312,15805506,14995035,27727035,19211127,35279958,18023868,9369722,8088412
>
> > > > That's 99 users, in what I believe to be the correct format.
>
> > > > I also ran a test with just 8088412 like this, with the same (blank)
> &g

[twitter-dev] List of all users who tweeted in the last 30 seconds

2010-09-09 Thread Jim Goodling
I'm trying to get a list of all the users who tweeted in the last 30
seconds. Currently I'm using the seach api with since=  and
result_type=recent subsetting on result on my server and then calling
the users api. Is there any way I can specify a datetime on the
since=?  Is there a better way to get a list of all the users who
tweeted in the last 30 seconds?

-- 
Twitter developer documentation and resources: http://dev.twitter.com/doc
API updates via Twitter: http://twitter.com/twitterapi
Issues/Enhancements Tracker: http://code.google.com/p/twitter-api/issues/list
Change your membership to this group: 
http://groups.google.com/group/twitter-development-talk?hl=en


[twitter-dev] Re: list api create_all method not working

2010-08-23 Thread Jim Chevalier
Hello,

Ah-ha! I did not have /members/ in my POST URL.  Thanks for pointing
that out!
This actually make it seem like 
http://dev.twitter.com/doc/post/:user/:list_id/create_all
should be changed to state:
POST http://api.twitter.com/version/:user/:list_id/members/create_all.format

I also didn't realize I could/should check on $connection->http_code
so often.  Thanks for pointing that out as well.
It's funny, now that you mention it, I notice the test.php file you
included in twitteroauth has that call *everywhere*.

It seems like I should rewrite my calls to be more like the
"twitteroauth_row" function you define in the test.php file so that I
can use the $connection->http_code results as error-checking.
I'll also have to test if setting "public $retry = TRUE;" in the
twitteroauth.php file helps with the 502 response that comes when
attempting to push 99 users through the create_all call...

Thanks for all the help!
-Jim

On Aug 23, 2:44 pm, Abraham Williams <4bra...@gmail.com> wrote:
> After each TwitterOAuth call you should check $connection->http_code to
> check what the result is. 200 on success, 404 on not found, etc.
>
> My quick findings:
> Works: $connection->post('abraham/test3/members/create_all', array('user_id'
> => $user_ids));
> AKA: $connection->post('{$screen_name/{$list}/members/create_all',
> array('user_id' => $user_ids));
>
> But with the 99 user_ids it would usually return a 502 after adding ~60
> users to the list:http://goo.gl/Zur3
>
> Abraham
> -
> Abraham Williams | Hacker Advocate |http://abrah.am
> @abraham |http://projects.abrah.am|http://blog.abrah.am
> This email is: [ ] shareable [x] ask first [ ] private.
>
> On Mon, Aug 23, 2010 at 10:54, Jim Chevalier  wrote:
> > hrm, back to square one then...
>
> > Abraham - the value of $users is:
>
> > 2142731,14125623,15998931,19560364,16559320,17036420,14791918,16908659,5538992,14984281,20188175,14277276,111226850,14327961,20257060,94168006,107679193,54567920,18171797,8886022,16390772,69422500,171538302,818340,168929218,141333525,132534968,14124542,14408989,138293290,2039761,6752072,111896485,175801197,14912789,22907920,15099178,16583906,10870772,94269486,174521748,82002786,15395087,39407092,123734452,17193910,16362662,7762662,21514744,7596972,31563269,23147529,27440127,14337563,1528701,82497472,19251912,15292430,17005679,7192042,14600753,97484744,2023641,92086501,15447441,98735657,16950385,2023191,14411651,23111875,2900,15039436,14479810,16024218,57933102,8453452,18363508,16569530,21034443,17007607,7029452,54997124,47397228,15226527,18193201,22278762,15127641,14204449,60616288,16465359,10371312,15805506,14995035,27727035,19211127,35279958,18023868,9369722,8088412
>
> > That's 99 users, in what I believe to be the correct format.
>
> > I also ran a test with just 8088412 like this, with the same (blank)
> > result:
> > $users = 8088412;
> > $added = $connection->post("{$user->screen_name}/lists/$listid->id/
> > create_all", array('user_id' => $users));
> > print_r($added);
>
> > Since it seems like the 'create_all' call itself that's the problem, I
> > decided to run another test:
> > $blahblah = $connection->post("{$user->screen_name}/{$list->id}/
> > qhweoi", array('user_id' => $users));
> > print_r($blahblah);
>
> > This returned nothing, similar to my 'create_all' call.  Since
> > 'qhweoi' is not a valid Twitter API call, I'm wondering if either
> > twitteroauth just doesn't do the "create_all" call for lists or if my
> > implementation of it is broken...
>
> > Thanks everyone!
> > -Jim
>
> > On Aug 23, 12:56 pm, Taylor Singletary 
> > wrote:
> > > I'm filled with misinformation today.
>
> > > But after being set straight by my colleague Matt Harris, I can tell you
> > > that the correct end point for this method is in actuality:
>
> > >http://api.twitter.com/1/:user/:list_id/members/create_all.format
>
> > > Our list methods are obviously confusing in their lack of a
> > distinguished,
> > > consistent namespace.
>
> > > Taylor
>
> > > On Mon, Aug 23, 2010 at 9:07 AM, Abraham Williams <4bra...@gmail.com>
> > wrote:
> > > > Jim,
>
> > > > What is your value for $users?
>
> > > > Abraham
> > > > -
> > > > Abraham Williams | Hacker Advocate |http://abrah.am
> > > > @abraham |http://projects.abrah.am|http://blog.abrah.am
> > > > This email is: [ ] shareable [x] ask firs

[twitter-dev] Re: list api create_all method not working

2010-08-23 Thread Jim Chevalier
hrm, back to square one then...

Abraham - the value of $users is:
2142731,14125623,15998931,19560364,16559320,17036420,14791918,16908659,5538992,14984281,20188175,14277276,111226850,14327961,20257060,94168006,107679193,54567920,18171797,8886022,16390772,69422500,171538302,818340,168929218,141333525,132534968,14124542,14408989,138293290,2039761,6752072,111896485,175801197,14912789,22907920,15099178,16583906,10870772,94269486,174521748,82002786,15395087,39407092,123734452,17193910,16362662,7762662,21514744,7596972,31563269,23147529,27440127,14337563,1528701,82497472,19251912,15292430,17005679,7192042,14600753,97484744,2023641,92086501,15447441,98735657,16950385,2023191,14411651,23111875,2900,15039436,14479810,16024218,57933102,8453452,18363508,16569530,21034443,17007607,7029452,54997124,47397228,15226527,18193201,22278762,15127641,14204449,60616288,16465359,10371312,15805506,14995035,27727035,19211127,35279958,18023868,9369722,8088412

That's 99 users, in what I believe to be the correct format.

I also ran a test with just 8088412 like this, with the same (blank)
result:
$users = 8088412;
$added = $connection->post("{$user->screen_name}/lists/$listid->id/
create_all", array('user_id' => $users));
print_r($added);


Since it seems like the 'create_all' call itself that's the problem, I
decided to run another test:
$blahblah = $connection->post("{$user->screen_name}/{$list->id}/
qhweoi", array('user_id' => $users));
print_r($blahblah);

This returned nothing, similar to my 'create_all' call.  Since
'qhweoi' is not a valid Twitter API call, I'm wondering if either
twitteroauth just doesn't do the "create_all" call for lists or if my
implementation of it is broken...

Thanks everyone!
-Jim

On Aug 23, 12:56 pm, Taylor Singletary 
wrote:
> I'm filled with misinformation today.
>
> But after being set straight by my colleague Matt Harris, I can tell you
> that the correct end point for this method is in actuality:
>
> http://api.twitter.com/1/:user/:list_id/members/create_all.format
>
> Our list methods are obviously confusing in their lack of a distinguished,
> consistent namespace.
>
> Taylor
>
> On Mon, Aug 23, 2010 at 9:07 AM, Abraham Williams <4bra...@gmail.com> wrote:
> > Jim,
>
> > What is your value for $users?
>
> > Abraham
> > -
> > Abraham Williams | Hacker Advocate |http://abrah.am
> > @abraham |http://projects.abrah.am|http://blog.abrah.am
> > This email is: [ ] shareable [x] ask first [ ] private.
>
> > On Mon, Aug 23, 2010 at 08:55, Jim Chevalier  wrote:
>
> >> Hello,
>
> >> Thanks for the clarification!
> >> It seems I'm still having trouble with the 'create_all' command.
>
> >> I've updated my code:
> >> $added = $connection->post("{$user->screen_name}/lists/$listid->id/
> >> create_all", array('user_id' => $users));
> >> print_r($added);
>
> >> This still has no output.
> >> I noticed you specified "/create_all.json" in your example, so I
> >> double checked and twitteroauth does default to having the response
> >> format as json.
> >> The 'create_all' call isn't just off at the moment, is it?...
>
> >> Thanks for your help,
> >> Jim
>
> >> On Aug 23, 10:51 am, Taylor Singletary 
> >> wrote:
> >> > Hi Everyone,
>
> >> > Think we found a nasty documentation bug around lists here, and we'll
> >> get
> >> > them fixed as soon as we can.
>
> >> > I believe the issue here is that we haven't indicated a necessary path
> >> > component.
>
> >> > The API call should be to:
>
> >> > POSThttp://api.twitter.com/1/:user/lists/:list_id/create_all.json
>
> >> > Sorry about the confusion!
>
> >> > Taylor
>
> >> > On Sun, Aug 22, 2010 at 12:41 PM, Jim Chevalier  >> >wrote:
>
> >> > > I'm getting no response from 'create_all' (
> >>http://dev.twitter.com/doc/
> >> > > post/:user/:list_id/create_all) when using twitteroauth (http://
> >> > > github.com/abraham/twitteroauth).
>
> >> > > This is the code that I'm using:
> >> > > $added = $connection->post("{$user->screen_name}/{$list->id}/
> >> > > create_all", array('user_id' => $users));
> >> > > print_r($added);
>
> >> > > Nothing is displayed; no error is provided.
> >> > > Other POST calls are functioning pro

[twitter-dev] Re: list api create_all method not working

2010-08-23 Thread Jim Chevalier
Hello,

Thanks for the clarification!
It seems I'm still having trouble with the 'create_all' command.

I've updated my code:
$added = $connection->post("{$user->screen_name}/lists/$listid->id/
create_all", array('user_id' => $users));
print_r($added);

This still has no output.
I noticed you specified "/create_all.json" in your example, so I
double checked and twitteroauth does default to having the response
format as json.
The 'create_all' call isn't just off at the moment, is it?...

Thanks for your help,
Jim

On Aug 23, 10:51 am, Taylor Singletary 
wrote:
> Hi Everyone,
>
> Think we found a nasty documentation bug around lists here, and we'll get
> them fixed as soon as we can.
>
> I believe the issue here is that we haven't indicated a necessary path
> component.
>
> The API call should be to:
>
> POSThttp://api.twitter.com/1/:user/lists/:list_id/create_all.json
>
> Sorry about the confusion!
>
> Taylor
>
> On Sun, Aug 22, 2010 at 12:41 PM, Jim Chevalier wrote:
>
> > I'm getting no response from 'create_all' (http://dev.twitter.com/doc/
> > post/:user/:list_id/create_all) when using twitteroauth (http://
> > github.com/abraham/twitteroauth).
>
> > This is the code that I'm using:
> > $added = $connection->post("{$user->screen_name}/{$list->id}/
> > create_all", array('user_id' => $users));
> > print_r($added);
>
> > Nothing is displayed; no error is provided.
> > Other POST calls are functioning properly, and the 'members' (http://
> > dev.twitter.com/doc/post/:user/:list_id/members) call is working just
> > fine.
>
> > So, you're not alone Aditya...
> > -Jim
>
> > On Aug 18, 9:30 pm, whizcreed  wrote:
> > > Hi,
>
> > > I am using ruby-auth gem to interact with twitter api.
>
> > > Unfortunately in situation of an error I am unable to find out much
> > > information on the cause.
>
> > > I am facing quite a strange problem. Consider following output:
>
> > > >> r = u.twitter.post("/adityaraj/19567361/members.json", "id" =>
> > '35671043')
>
> > > => {"slug"=>"ruby-on-rails", "name"=>"Ruby-on-rails", "uri"=>"/
> > > adityaraj/ruby-on-rails", "subscriber_count"=>0, "member_count"=>8,
> > > "mode"=>"public", "id"=>19567361, "full_name"=>"@adityaraj/ruby-on-
> > > rails", "description"=>"", "user"=>{}, "following"=>false}
>
> > > >> r = u.twitter.post("/adityaraj/19567361/create_all.json", "user_id" =>
> > '35671043')
>
> > > TwitterAuth::Dispatcher::Error: An error occurred processing your
> > > Twitter request.
> > >         from /home/aditya/work/twitter/vendor/plugins/twitter-auth/lib/
> > > twitter_auth/dispatcher/shared.rb:35:in `handle_response'
> > >         from /home/aditya/work/twitter/vendor/plugins/twitter-auth/lib/
> > > twitter_auth/dispatcher/oauth.rb:22:in `request'
> > >         from /var/lib/gems/1.8/gems/oauth-0.4.1/lib/oauth/tokens/
> > > access_token.rb:44:in `post'
> > >         from (irb):12
> > >         from :0
>
> > > I have tried using create_all method with multiple screen_names but no
> > > luck.
>
> > > API link:http://dev.twitter.com/doc/post/:user/:list_id/create_all
>
> > > Can anyone please point out if there is any obvious mistake in this or
> > > if you are able to make it work.
>
> > > Regards,
> > > Aditya Raj


[twitter-dev] Re: list api create_all method not working

2010-08-22 Thread Jim Chevalier
I'm getting no response from 'create_all' (http://dev.twitter.com/doc/
post/:user/:list_id/create_all) when using twitteroauth (http://
github.com/abraham/twitteroauth).

This is the code that I'm using:
$added = $connection->post("{$user->screen_name}/{$list->id}/
create_all", array('user_id' => $users));
print_r($added);

Nothing is displayed; no error is provided.
Other POST calls are functioning properly, and the 'members' (http://
dev.twitter.com/doc/post/:user/:list_id/members) call is working just
fine.

So, you're not alone Aditya...
-Jim


On Aug 18, 9:30 pm, whizcreed  wrote:
> Hi,
>
> I am using ruby-auth gem to interact with twitter api.
>
> Unfortunately in situation of an error I am unable to find out much
> information on the cause.
>
> I am facing quite a strange problem. Consider following output:
>
> >> r = u.twitter.post("/adityaraj/19567361/members.json", "id" => '35671043')
>
> => {"slug"=>"ruby-on-rails", "name"=>"Ruby-on-rails", "uri"=>"/
> adityaraj/ruby-on-rails", "subscriber_count"=>0, "member_count"=>8,
> "mode"=>"public", "id"=>19567361, "full_name"=>"@adityaraj/ruby-on-
> rails", "description"=>"", "user"=>{}, "following"=>false}
>
> >> r = u.twitter.post("/adityaraj/19567361/create_all.json", "user_id" => 
> >> '35671043')
>
> TwitterAuth::Dispatcher::Error: An error occurred processing your
> Twitter request.
>         from /home/aditya/work/twitter/vendor/plugins/twitter-auth/lib/
> twitter_auth/dispatcher/shared.rb:35:in `handle_response'
>         from /home/aditya/work/twitter/vendor/plugins/twitter-auth/lib/
> twitter_auth/dispatcher/oauth.rb:22:in `request'
>         from /var/lib/gems/1.8/gems/oauth-0.4.1/lib/oauth/tokens/
> access_token.rb:44:in `post'
>         from (irb):12
>         from :0
>
> I have tried using create_all method with multiple screen_names but no
> luck.
>
> API link:http://dev.twitter.com/doc/post/:user/:list_id/create_all
>
> Can anyone please point out if there is any obvious mistake in this or
> if you are able to make it work.
>
> Regards,
> Aditya Raj


Re: [twitter-dev] t.co issue -- querying for original url in streaming & search apis

2010-06-09 Thread Jim Gilliam
Fantastic, thank you!

On Wed, Jun 9, 2010 at 2:48 PM, Mark McBride  wrote:

> We will have this support in the streaming API.  Track terms will work
> against tweet text as well as entity text.  Currently streaming does
> *not* work as Abraham describes below.  We only match against tweet
> text, and don't do any link expansion/contraction.
>
>   ---Mark
>
> http://twitter.com/mccv
>
>
>
> On Wed, Jun 9, 2010 at 12:13 PM, Jim Gilliam  wrote:
> > I'm creating a new thread for this because a few others have mentioned
> it,
> > and we haven't gotten a response yet.  My hunch is that changing those
> APIs
> > involve other teams within Twitter, so figuring out a solution could be
> > challenging.
> > Here is the issue.  We need to be able to get matches on the original URL
> > through the streaming and search APIs.   For me, I'm tracking "act" so
> I can
> > match tweets that link to 'http://act.ly'.  This is not a link shortener
> > service, the actual pages live at act.ly, and it was all designed
> > specifically for Twitter so there would be no need for url shorteners.
> > As far as I'm concerned, it's fine if that link changes to t.co, as long
> as
> > I can still get matches on act.ly (or act) through the streaming API
> (the
> > search API is going to be important for people too, but less of an issue
> for
> > me personally).
> > The most elegant way to fix this would be to allow tracking of the
> original
> > URL.  So I can put in a domain name, or URL substring, and match
> everything
> > that way.  Same with search. This would be useful to a lot of people, and
> > virtually all link oriented web apps with APIs provide a way to get all
> the
> > matches for a particular domain. (digg, google, yahoo, etc)
> > I'm sure there are other workaround ways of doing this, and I'm all ears.
> >  It would be SUPER NICE (wink wink) to hear some kind of assurance that
> > there will be a way for us to query this type of information before the
> t.co
> > changes go live.
> > Thanks guys...
> > Jim Gilliam
> > http://act.ly/
> > http://twitter.com/jgilliam
> > On Tue, Jun 8, 2010 at 4:43 PM, Jim Gilliam  wrote:
> >>
> >> Will we be able to get matches on the original URL through the streaming
> >> API?
> >> For example, I'm tracking "act" so I can match tweets that link to
> >> 'http://act.ly'.  Will I still be able to do that?
> >> Jim Gilliam
> >> http://act.ly/
> >> http://twitter.com/jgilliam
> >>
> >> On Tue, Jun 8, 2010 at 4:33 PM, Dewald Pretorius 
> wrote:
> >>>
> >>> Raffi,
> >>>
> >>> I'm fine with everything up to the new 140 character count.
> >>>
> >>> If you count the characters *after* link wrapping, you are seriously
> >>> going to mess up my system. My short URLs are currently 18 characters
> >>> long, and they will be 18 long for quite some time to come. After that
> >>> they will be 19 for a very long time to come.
> >>>
> >>> If you implement this change, a ton, and I mean a *huge* number of my
> >>> system's updates are going to be rejected for being over 140
> >>> characters.
> >>>
> >>> On Jun 8, 7:57 pm, Raffi Krikorian  wrote:
> >>> > hi all.
> >>> >
> >>> > twitter has been wrapping links in e-mailed DMs for a couple months
> >>> > now<http://bit.ly/twttldmemail>.
> >>> > with that feature, we're trying to protect users against phishing and
> >>> > other
> >>> > malicious attacks. the way that we're doing this is that any URL that
> >>> > comes
> >>> > through in a DM gets currently wrapped with a twt.tl URL -- if the
> URL
> >>> > turns
> >>> > out to be malicious, Twitter can simply shut it down, and whoever
> >>> > follows
> >>> > that link will be presented with a page that warns them of
> potentially
> >>> > malicious content. in a few weeks, we're going to start slowly
> enabling
> >>> > this
> >>> > throughout the API for all statuses as well, but instead of twt.tl,
> we
> >>> > will
> >>> > be using t.co.
> >>> >
> >>> > practically, any tweet that is sent through statuses/update that has
> a
> >>> > link
> >>> > on it will have the link 

[twitter-dev] t.co issue -- querying for original url in streaming & search apis

2010-06-09 Thread Jim Gilliam
I'm creating a new thread for this because a few others have mentioned it,
and we haven't gotten a response yet.  My hunch is that changing those APIs
involve other teams within Twitter, so figuring out a solution could be
challenging.

Here is the issue.  We need to be able to get matches on the original URL
through the streaming and search APIs.   For me, I'm tracking "act" so I can
match tweets that link to 'http://act.ly'.  This is not a link shortener
service, the actual pages live at act.ly, and it was all designed
specifically for Twitter so there would be no need for url shorteners.

As far as I'm concerned, it's fine if that link changes to t.co, as long as
I can still get matches on act.ly (or act) through the streaming API (the
search API is going to be important for people too, but less of an issue for
me personally).

The most elegant way to fix this would be to allow tracking of the original
URL.  So I can put in a domain name, or URL substring, and match everything
that way.  Same with search. This would be useful to a lot of people, and
virtually all link oriented web apps with APIs provide a way to get all the
matches for a particular domain. (digg, google, yahoo, etc)

I'm sure there are other workaround ways of doing this, and I'm all ears.
 It would be SUPER NICE (wink wink) to hear some kind of assurance that
there will be a way for us to query this type of information before
the t.cochanges go live.

Thanks guys...

Jim Gilliam
http://act.ly/
http://twitter.com/jgilliam

On Tue, Jun 8, 2010 at 4:43 PM, Jim Gilliam  wrote:

> Will we be able to get matches on the original URL through the streaming
> API?
>
> For example, I'm tracking "act" so I can match tweets that link to '
> http://act.ly'.  Will I still be able to do that?
>
> Jim Gilliam
> http://act.ly/
> http://twitter.com/jgilliam
>
>
> On Tue, Jun 8, 2010 at 4:33 PM, Dewald Pretorius  wrote:
>
>> Raffi,
>>
>> I'm fine with everything up to the new 140 character count.
>>
>> If you count the characters *after* link wrapping, you are seriously
>> going to mess up my system. My short URLs are currently 18 characters
>> long, and they will be 18 long for quite some time to come. After that
>> they will be 19 for a very long time to come.
>>
>> If you implement this change, a ton, and I mean a *huge* number of my
>> system's updates are going to be rejected for being over 140
>> characters.
>>
>> On Jun 8, 7:57 pm, Raffi Krikorian  wrote:
>> > hi all.
>> >
>> > twitter has been wrapping links in e-mailed DMs for a couple months
>> > now<http://bit.ly/twttldmemail>.
>> > with that feature, we're trying to protect users against phishing and
>> other
>> > malicious attacks. the way that we're doing this is that any URL that
>> comes
>> > through in a DM gets currently wrapped with a twt.tl URL -- if the URL
>> turns
>> > out to be malicious, Twitter can simply shut it down, and whoever
>> follows
>> > that link will be presented with a page that warns them of potentially
>> > malicious content. in a few weeks, we're going to start slowly enabling
>> this
>> > throughout the API for all statuses as well, but instead of twt.tl, we
>> will
>> > be using t.co.
>> >
>> > practically, any tweet that is sent through statuses/update that has a
>> link
>> > on it will have the link automatically converted to a t.co link on its
>> way
>> > through the Twitter platform. if you fetch any tweet created after this
>> > change goes live, then its text field will have all its links
>> automatically
>> > wrapped with t.co links. when a user clicks on that link, Twitter will
>> > redirect them to the original URL after first confirming with our
>> database
>> > that that URL is not malicious.  on top of the end-user benefit, we hope
>> to
>> > eventually provide all developers with aggregate usage data around your
>> > applications such as the number of clicks people make on URLs you
>> display
>> > (it will, of course, be in aggregate and not identifiable manner).
>> > additionally, we want to be able to build services and APIs that can
>> make
>> > algorithmic recommendations to users based on the content they are
>> > consuming. gathering the data from t.co will help make these possible.
>> >
>> > our current plan is that no user will see a t.co URL on twitter.com but
>> we
>> > still have some details to work through. the links wi

Re: [twitter-dev] Favorites/:id/create.json returns not found

2010-06-08 Thread Jim Cortez
Thanks Dana, it worked. Any chance you will be fixing the documentation? 
http://dev.twitter.com/doc/post/favorites/:id/create. Note also it is 
impossible to do this api request using the online api console.

Jim

On 6/8/10 5:13 PM, Dana Contreras wrote:

Hi Jim,

Change the URL to 
https://api.twitter.com/1/favorites/create/15738870223.json and it 
should work.


On Tue, Jun 8, 2010 at 5:04 PM, Jim Cortez <mailto:j...@jimcortez.com>> wrote:


Hi all,
   I am having trouble with setting favorites through the oAuth
API (with xAuth). Must other api's work (exception being
blocks/exists, see previous emails).

Here is an example request:

location: https://api.twitter.com/1/favorites/15738870223/create.json
authorizationHeader: OAuth oauth_consumer_key="",
oauth_nonce="", oauth_signature="",
oauth_signature_method="HMAC-SHA1", oauth_timestamp="1276041800",
oauth_token="", oauth_version="1.0",
postData: id=15738870223

responseData:
{"request":"/1/favorites/15738870223/create.json","error":"Not found"}

Now on the web, this is fine:
http://twitter.com/twitterapi/status/15738870223

I tried removing the id as post data, but then I got an invalid
signature error. Any ideas?
Thanks,
Jim Cortez




--
Dana Contreras
Twitter Platform Team
http://twitter.com/DanaDanger




[twitter-dev] Favorites/:id/create.json returns not found

2010-06-08 Thread Jim Cortez

Hi all,
I am having trouble with setting favorites through the oAuth API 
(with xAuth). Must other api's work (exception being blocks/exists, see 
previous emails).


Here is an example request:

location: https://api.twitter.com/1/favorites/15738870223/create.json
authorizationHeader: OAuth oauth_consumer_key="", 
oauth_nonce="", oauth_signature="", 
oauth_signature_method="HMAC-SHA1", oauth_timestamp="1276041800", 
oauth_token="", oauth_version="1.0",

postData: id=15738870223

responseData: 
{"request":"/1/favorites/15738870223/create.json","error":"Not found"}


Now on the web, this is fine:
http://twitter.com/twitterapi/status/15738870223

I tried removing the id as post data, but then I got an invalid 
signature error. Any ideas?

Thanks,
Jim Cortez


Re: [twitter-dev] Re: link wrapping on the API

2010-06-08 Thread Jim Gilliam
Will we be able to get matches on the original URL through the streaming
API?

For example, I'm tracking "act" so I can match tweets that link to '
http://act.ly'.  Will I still be able to do that?

Jim Gilliam
http://act.ly/
http://twitter.com/jgilliam

On Tue, Jun 8, 2010 at 4:33 PM, Dewald Pretorius  wrote:

> Raffi,
>
> I'm fine with everything up to the new 140 character count.
>
> If you count the characters *after* link wrapping, you are seriously
> going to mess up my system. My short URLs are currently 18 characters
> long, and they will be 18 long for quite some time to come. After that
> they will be 19 for a very long time to come.
>
> If you implement this change, a ton, and I mean a *huge* number of my
> system's updates are going to be rejected for being over 140
> characters.
>
> On Jun 8, 7:57 pm, Raffi Krikorian  wrote:
> > hi all.
> >
> > twitter has been wrapping links in e-mailed DMs for a couple months
> > now<http://bit.ly/twttldmemail>.
> > with that feature, we're trying to protect users against phishing and
> other
> > malicious attacks. the way that we're doing this is that any URL that
> comes
> > through in a DM gets currently wrapped with a twt.tl URL -- if the URL
> turns
> > out to be malicious, Twitter can simply shut it down, and whoever follows
> > that link will be presented with a page that warns them of potentially
> > malicious content. in a few weeks, we're going to start slowly enabling
> this
> > throughout the API for all statuses as well, but instead of twt.tl, we
> will
> > be using t.co.
> >
> > practically, any tweet that is sent through statuses/update that has a
> link
> > on it will have the link automatically converted to a t.co link on its
> way
> > through the Twitter platform. if you fetch any tweet created after this
> > change goes live, then its text field will have all its links
> automatically
> > wrapped with t.co links. when a user clicks on that link, Twitter will
> > redirect them to the original URL after first confirming with our
> database
> > that that URL is not malicious.  on top of the end-user benefit, we hope
> to
> > eventually provide all developers with aggregate usage data around your
> > applications such as the number of clicks people make on URLs you display
> > (it will, of course, be in aggregate and not identifiable manner).
> > additionally, we want to be able to build services and APIs that can make
> > algorithmic recommendations to users based on the content they are
> > consuming. gathering the data from t.co will help make these possible.
> >
> > our current plan is that no user will see a t.co URL on twitter.com but
> we
> > still have some details to work through. the links will still be
> displayed
> > as they were sent in, but the target of the link will be the t.co link
> > instead. and, we want to provide the same ability to display original
> links
> > to developers. we're going to use the entities attribute to make this
> > possible.
> >
> > let's say i send out the following tweet: "you have to check outhttp://
> dev.twitter.com!"
> >
> > a returned (and truncated) status object may look like:
> >
> > {
> >   "text" : "you have to check outhttp://t.co/s9gfk2d4!";,
> >   ...
> >   "user" : {
> > "screen_name" : "raffi",
> > ...
> >   },
> >   ...
> >   "entities" : {
> > "urls" : [
> >   {
> > "url" : "http://t.co/s9gfk2d4";,
> > "display_url" : "http://dev.twitter.com";,
> > "indices" : [23, 43]
> >   }
> > ],
> > ...
> >   },
> >   ...
> >
> > }
> >
> > two things to note: the text of the returned status object doesn't have
> the
> > original URL and instead it has a t.co URL, and the entities block now
> has a
> > display_url attribute associated with it. what we're hoping is that with
> > this data, it should be relatively easy to create a UI where you replace
> thehttp://t.co/s9gfk2d4in the text with the equivalent of
> >
> > http://t.co/s9gfk2d4";>http://dev.twitter.com
> >
> > this means the user would not see the t.co link, but we all can still
> > provide the protection and gather data from the wrapped link. for the
> > applications that don't choose to update, the t.co link will be shown
> (and
> > the goal to protect user

[twitter-dev] Twitter API "blocks/exists" does not work

2010-06-03 Thread Jim
Hello All,
When accessing the blocks/exists api, I do not get valid reponses:

In the console:

{
  "request": "/1/blocks/exists.json",
  "error": "Not found"
}
(example:
http://dev.twitter.com/console/recall?client_application_id=144824&content_type=json&method=GET¶m-keys[]=id¶m-vals[]=twitterapi&path=blocks%2Fexists&version=1)

When using xAuth:
{"request":"/1/blocks/exists.json?
screen_name=twitterapi","error":"Incorrect signature"}

All my other requests (including authentication and posting) work just
fine.

Any ideas?
Thanks,
Jim


[twitter-dev] API Entry "blocks/exists" does not work

2010-06-03 Thread Jim
Hello all,


In the API console, I get:
{
  "request": "/1/blocks/exists.json",
  "error": "Not found"
}
http://dev.twitter.com/console/recall?client_application_id=144824&content_type=json&method=GET¶m-keys[]=id¶m-vals[]=twitterapi&path=blocks%2Fexists&version=1


[twitter-dev] Re: parsing out entities from tweets (a.k.a. parsing out hashtags is hard!)

2010-05-13 Thread Jim DeLaHunt
Raffi:



On May 13, 2:25 pm, Raffi Krikorian  wrote:
> as shown above, we'll be parsing out all mentioned users, all lists, all
> included URLs, and all hashtags

This is an interesting step forward.  The internationalisation
considerations can be sticky, though.  I did some entity-parsing from
tweets as part of my "Twanguages" project (a language census of
Twitter). One discover was that people are in fact using hashtags with
non-latin scripts. Another is that some people are using the '#'
character without intending to create a hashtage (e.g. "we are #2 in
line"). How will your entity parsing handle non-latin hashtags, latin-
character hashtags with accented characters, and strings starting with
'#' not intended as hashtags?

Also note that URLs can now have non-Latin top-level domain names as
well as second-level domain names and other path parts. For instance,
http://وزارة-الأتصالات.مصر is a valid URL in the .مصر top-level
domain. Will your entity parsing code handle such URLs?

In any case, it would be very helpful if the platform team would
document exactly what regular expressions govern the entities you
recognise. I might not agree with your definition of hashtag syntax,
but at least I want to know what it is.  See for example the running
questions on how to measure the length of a status message. <>

> matt sanford
> (@mzsanford) on our internationalization team released the twitter-text
> library (http://github.com/mzsanford/twitter-text-rb) to help making parsing
> easier and standardized (in fact, we use this library ourselves), but we on
> the Platform team wondered if we could make this even easier for our
> developers. ...

I wasn't aware of this, and I'll take a look.  Thank you for the tip!
— Jim DeLaHunt, Vancouver, Canada


[twitter-dev] Re: Application Suspended

2010-02-16 Thread Jim Fulford
I'm assuming that it was the modules that sent tweets into the
timeline. (based on the email)  My auto_follow and un_follow is very
tame compared to most.  For example, Smart Follow show you who is
following you that you are not following, but it lets you chose who
you want to follow, and then only does 30 at a time.  Plus I limited
api hits per user to 1000 per day which is enough to follow or
unfollow about 200 people, which I thought was reasonble for someone
working on their account and not doing something fishy.

Jim

On Feb 16, 5:58 pm, Dewald Pretorius  wrote:
> How do you know it is not the follower acquisition nature of your
> application that caused the suspension?
>
> That URL that Brian linked to also has a section titled, Automated
> Following and Un-Following.
>
> On Feb 16, 6:11 pm, Jim Fulford  wrote:
>
>
>
> > I turned off everything in my application that can send a tweet in an
> > automated fashion.  (Kind of like killing a fly with a sledgehammer)
> > If I try to determine how many tweets can be sent per hour or per day,
> > etc.  I'll never get my site back on.  And this feature is a new
> > addition and and not the main focus of my site.  My site is primarily
> > used to send cool looking invitations to people to get other people
> > to follow them on twitter.  Until this is turned back on, all my users
> > invitations and signature lines like the one below are inoperable.
> > I'm getting email from users every day asking why the site is not
> > working.  I need to get this back on ASAP.
>
> > Thanks
> > Jim Fulford
> > 904-334-4767http://www.gotwitr.com/jim_fulford
>
> > On Feb 16, 5:06 pm, Dewald Pretorius  wrote:
>
> > > Jim,
>
> > > I am extremely intrigued to know how you figured out from that message
> > > exactly what you had to change in your application to come in
> > > compliance.
>
> > > On Feb 16, 5:37 pm, Jim Fulford  wrote:
>
> > > > Well 5 days later, I finaly got a response from Twitter.  Posted
> > > > below. I'm going to spend the few minutes required to make my app
> > > > compliant and see if and when it gets turned back on.
> > > > to be continued.''
>
> > > > On Feb 16, 3:49 pm, PJB  wrote:
> > > > 
>
> > > > truebe, Feb 16 10:52 am (PST):
> > > > Hi,
> > > > We apologize for the inconvenience, but on review of your application
> > > > it appears that it breaks our Automation Rules and Best Practices
> > > > (http://help.twitter.com/forums/10711/entries/76915). Specifically, it
> > > > facilitates automated tools which allow users to spam and violate our
> > > > user rules (http://help.twitter.com/forums/26257/entries/18311). It's
> > > > best for both our users and your users if your application follows the
> > > > rules, so please make the necessary changes to bring your application
> > > > into compliance and we will reconsider your suspension.
> > > > Let us know if you have any questions!
> > > > Brian
> > > > API Support- Hide quoted text -
>
> > > - Show quoted text -- Hide quoted text -
>
> - Show quoted text -


[twitter-dev] Re: Application Suspended

2010-02-16 Thread Jim Fulford
Ryan,
Yes jim_fulford is the account with the oauth_client.  It appears that
Twitter has turned GoTwitr back on, but I cannot access the
oauth_client page frmo jim_fulford, it still shows suspended.

On Feb 16, 5:58 pm, Ryan Sarver  wrote:
> Jim,
>
> It's part of the functionality of the tool, so it's not something that is
> prone to a human forgetting. Is the jim_fulford account the one that your
> OAuth tokens are associated with?
>
> Either way, a...@twitter.com is your best channel for follow up.
>
> Thanks, Ryan
>
>
>
> On Tue, Feb 16, 2010 at 2:06 PM, Jim Fulford  wrote:
> > Ryan,  can you check and see if #1 below is really happening.   My
> > twitter account is
> > jim_fulford.  It has my main email on it, and has never been changed.
> > I did not get a warning
> > or a suspension notice of any kind.
>
> > Thanks
> > Jim Fulford
>
> > On Feb 16, 1:46 pm, Ryan Sarver  wrote:
> > > Sorry I am a little late to the thread and there are a lot of topics here
> > so
> > > I'll do my best to cover them.
>
> > > 1. Email notices - we send out an email for warnings and for suspensions
> > > every time to the email on record for the account that is being
> > suspended.
> > > If the email isn't up to date or isn't valid then you won't receive it,
> > but
> > > otherwise an email goes out every time. So it would be good to make sure
> > the
> > > email on record for each account is a valid one.
>
> > > 2. Dispute a warning or suspension - we've always said that emailing
> > > a...@twitter.com is the right path for disputing a warning or
> > suspension. If
> > > you feel that you have emailed us at that address and haven't gotten a
> > > response, let me know, but the whole reason we use ticketing on that
> > email
> > > endpoint is to make sure we follow up with each thread.
>
> > > 3. Publication of policies - we are working to make them clearer and
> > easier
> > > to find. However, we disagree that posting explicit boundaries is a good
> > > idea. The policies are in place to help enforce the spirit of Twitter
> > which
> > > cannot be broken down into explicit numbers. If you are having problems
> > with
> > > living on the edges of the unpublished numbers, then you are likely doing
> > > something that is not within the spirit of the platform.
>
> > > 4. Hostile language - we have said over and over that we are open to
> > > constructive criticism. It forces us to be better and we strive to be
> > > better, however, we won't put up with hostile and inflammatory language
> > on
> > > the list. We're all professionals here and we expect a certain level of
> > > professionalism from everyone on the list.
>
> > > Let me know if you have any questions. Best, Ryan
>
> > > On Tue, Feb 16, 2010 at 8:59 AM, Dewald Pretorius 
> > wrote:
> > > > Nom nom nom, say the spammers.
>
> > > > Add to that method a few proxies and/or IP addresses, or something as
> > > > simple as giving your users a PHP proxy pass-thru script that they can
> > > > upload to their servers, and there is no way that Twitter can even
> > > > identify the offending app, let alone suspend/ban/blackhole it.
>
> > > > On Feb 16, 12:28 pm, PJB  wrote:
> > > > > Presumably to do the OAuth vanity plate, you have to do what you
> > > > > described in your "disgruntled developer" post above.  I.e., the user
> > > > > registers their own OAuth app and enters the corresponding values in
> > > > > your app, allowing you to masquerade as their app in tweets.
> >  Frankly,
> > > > > it seems to run counter to the purposes of OAuth.  But the developer
> > > > > of one vanity plate app I found publishes email correspondence with
> > > > > "Brian" from Twitter, and says they have been personally vetted by
> > > > > Twitter, so I guess it is okay...- Hide quoted text -
>
> > > - Show quoted text -- Hide quoted text -
>
> - Show quoted text -


[twitter-dev] Re: Application Suspended

2010-02-16 Thread Jim Fulford
I turned off everything in my application that can send a tweet in an
automated fashion.  (Kind of like killing a fly with a sledgehammer)
If I try to determine how many tweets can be sent per hour or per day,
etc.  I'll never get my site back on.  And this feature is a new
addition and and not the main focus of my site.  My site is primarily
used to send cool looking invitations to people to get other people
to follow them on twitter.  Until this is turned back on, all my users
invitations and signature lines like the one below are inoperable.
I'm getting email from users every day asking why the site is not
working.  I need to get this back on ASAP.

Thanks
Jim Fulford
904-334-4767
http://www.gotwitr.com/jim_fulford




On Feb 16, 5:06 pm, Dewald Pretorius  wrote:
> Jim,
>
> I am extremely intrigued to know how you figured out from that message
> exactly what you had to change in your application to come in
> compliance.
>
> On Feb 16, 5:37 pm, Jim Fulford  wrote:
>
>
>
> > Well 5 days later, I finaly got a response from Twitter.  Posted
> > below. I'm going to spend the few minutes required to make my app
> > compliant and see if and when it gets turned back on.
> > to be continued.''
>
> > On Feb 16, 3:49 pm, PJB  wrote:
> > 
>
> > truebe, Feb 16 10:52 am (PST):
> > Hi,
> > We apologize for the inconvenience, but on review of your application
> > it appears that it breaks our Automation Rules and Best Practices
> > (http://help.twitter.com/forums/10711/entries/76915). Specifically, it
> > facilitates automated tools which allow users to spam and violate our
> > user rules (http://help.twitter.com/forums/26257/entries/18311). It's
> > best for both our users and your users if your application follows the
> > rules, so please make the necessary changes to bring your application
> > into compliance and we will reconsider your suspension.
> > Let us know if you have any questions!
> > Brian
> > API Support- Hide quoted text -
>
> - Show quoted text -


[twitter-dev] Re: Application Suspended

2010-02-16 Thread Jim Fulford
Ryan,  can you check and see if #1 below is really happening.   My
twitter account is
jim_fulford.  It has my main email on it, and has never been changed.
I did not get a warning
or a suspension notice of any kind.

Thanks
Jim Fulford

On Feb 16, 1:46 pm, Ryan Sarver  wrote:
> Sorry I am a little late to the thread and there are a lot of topics here so
> I'll do my best to cover them.
>
> 1. Email notices - we send out an email for warnings and for suspensions
> every time to the email on record for the account that is being suspended.
> If the email isn't up to date or isn't valid then you won't receive it, but
> otherwise an email goes out every time. So it would be good to make sure the
> email on record for each account is a valid one.
>
> 2. Dispute a warning or suspension - we've always said that emailing
> a...@twitter.com is the right path for disputing a warning or suspension. If
> you feel that you have emailed us at that address and haven't gotten a
> response, let me know, but the whole reason we use ticketing on that email
> endpoint is to make sure we follow up with each thread.
>
> 3. Publication of policies - we are working to make them clearer and easier
> to find. However, we disagree that posting explicit boundaries is a good
> idea. The policies are in place to help enforce the spirit of Twitter which
> cannot be broken down into explicit numbers. If you are having problems with
> living on the edges of the unpublished numbers, then you are likely doing
> something that is not within the spirit of the platform.
>
> 4. Hostile language - we have said over and over that we are open to
> constructive criticism. It forces us to be better and we strive to be
> better, however, we won't put up with hostile and inflammatory language on
> the list. We're all professionals here and we expect a certain level of
> professionalism from everyone on the list.
>
> Let me know if you have any questions. Best, Ryan
>
>
>
> On Tue, Feb 16, 2010 at 8:59 AM, Dewald Pretorius  wrote:
> > Nom nom nom, say the spammers.
>
> > Add to that method a few proxies and/or IP addresses, or something as
> > simple as giving your users a PHP proxy pass-thru script that they can
> > upload to their servers, and there is no way that Twitter can even
> > identify the offending app, let alone suspend/ban/blackhole it.
>
> > On Feb 16, 12:28 pm, PJB  wrote:
> > > Presumably to do the OAuth vanity plate, you have to do what you
> > > described in your "disgruntled developer" post above.  I.e., the user
> > > registers their own OAuth app and enters the corresponding values in
> > > your app, allowing you to masquerade as their app in tweets.  Frankly,
> > > it seems to run counter to the purposes of OAuth.  But the developer
> > > of one vanity plate app I found publishes email correspondence with
> > > "Brian" from Twitter, and says they have been personally vetted by
> > > Twitter, so I guess it is okay...- Hide quoted text -
>
> - Show quoted text -


[twitter-dev] Re: Application Suspended

2010-02-16 Thread Jim Fulford
Brian,
I have made the requested changes to my application, but the support
ticket has been closed and is no longer available.  Who do I contac to
request to have my application turned back on?  I hope it won't take
as long to check on this as it did for my first notice :)

Also, I cannot get to oauth_client section of my twitter_account, so I
have no facility to test anything or see when and if the applciation
has been made active again.

Thanks
Jim



[twitter-dev] Re: Application Suspended

2010-02-16 Thread Jim Fulford
Brian,


[twitter-dev] Re: Application Suspended

2010-02-16 Thread Jim Fulford
Well 5 days later, I finaly got a response from Twitter.  Posted
below. I'm going to spend the few minutes required to make my app
compliant and see if and when it gets turned back on.
to be continued.''

On Feb 16, 3:49 pm, PJB  wrote:


truebe, Feb 16 10:52 am (PST):
Hi,
We apologize for the inconvenience, but on review of your application
it appears that it breaks our Automation Rules and Best Practices
(http://help.twitter.com/forums/10711/entries/76915). Specifically, it
facilitates automated tools which allow users to spam and violate our
user rules (http://help.twitter.com/forums/26257/entries/18311). It's
best for both our users and your users if your application follows the
rules, so please make the necessary changes to bring your application
into compliance and we will reconsider your suspension.
Let us know if you have any questions!
Brian
API Support


[twitter-dev] Re: Application Suspended

2010-02-16 Thread Jim Fulford
Exactly, all they have to do is contact me, I'll turn off the Tweet
scheduling module if that's causing them grief.  It's about 1% of my
sites functionaly, and not used by most people.  I can alter the site
per their request by commenting out a few lines of code.  This could
have been fixed in 10 mins with communication, rather than 5 days with
no response.

Jim

On Feb 16, 9:20 am, Ryan Alford  wrote:
> Is it even worst that Raffi has seen this thread and posted in it, and still
> not a peep?  You would think that he would look into it and help out, or
> contact somebody that could look into it.  It's seems like they just have
> their head in the sand.
>
> Ryan
>
>
>
> On Tue, Feb 16, 2010 at 9:13 AM, Jim Fulford  wrote:
> > 5 Days not and applicatin is still down and no response at all from
> > Twitter on my Support Ticket.
>
> > Beware of Oauth, Twitter can disable your site in a second with no
> > notice.  I have still not gotten any feedback, communication of any
> > kind.  The only nice thing about this process is that my users have
> > been patient and understanding.  Wish I could say the same about
> > Twitter.  See Below
>
> > ---­---
> > easyduzzit sent a message using the contact form at
> >http://www.gotwitr.com/contact.
>
> > When I look in my Twitter connections your service appears as
> > follows:
> > "GoTwitr by Phazer Systems Suspended."
>
> > I'd appreciate knowing if there is anything your customers can do to
> > let Twitter know we appreciate your service.- Hide quoted text -
>
> - Show quoted text -


[twitter-dev] Re: Application Suspended

2010-02-16 Thread Jim Fulford
5 Days not and applicatin is still down and no response at all from
Twitter on my Support Ticket.

Beware of Oauth, Twitter can disable your site in a second with no
notice.  I have still not gotten any feedback, communication of any
kind.  The only nice thing about this process is that my users have
been patient and understanding.  Wish I could say the same about
Twitter.  See Below
--
easyduzzit sent a message using the contact form at 
http://www.gotwitr.com/contact.

When I look in my Twitter connections your service appears as
follows:
"GoTwitr by Phazer Systems Suspended."

I'd appreciate knowing if there is anything your customers can do to
let Twitter know we appreciate your service.






[twitter-dev] Re: Application Suspended

2010-02-14 Thread Jim Fulford
I turned the site back on, ( www.gotwitr.com ) but put a message up
letting my users know that the site does not work.  That way if any of
you want to look at our blogs, t&c, etc -you can look at it.  Plus,
the only revenue I get from the site is my google ads, so this turns
them back on too :)

If I don't get any support from Twitter, I'll probably just abandon
the development and turn this service off permanantly.

Thanks for the feedback.

Jim


[twitter-dev] Re: Application Suspended

2010-02-14 Thread Jim Fulford
GoTwitr was not designed to be a spam enabler.  Take a look at our
writeup, we were featured on the front page of drupal.org when we
opened our site.  Our sites purpose was to.

1. Let people send out Invitations to join and follow them on Twitter.
2/ Automate the process of finding like minded followers without doing
mass follow / unfollow
3.  Read my press release that was on Drupal.org http://drupal.org/node/599506

About a month ago we added a schedule / random tweet module, that I'm
assuming was the reason that we got banned.  But how would I know?  We
programmed it to not send the same tweets 2 in a row and not to let
people send more than 1 an hour.  But I'm assuming that was the issue.

If I would have gotten an email from Twitter, I would have turned off
the module.  People were using our site for months before we added
that feature.

a)  I had a contact us link on every page of the site.
b) The Twitter account that the oauth_client was on has a valid email.

When my site was deactived on Friday, I looked at the /oauth_client
page of the website and it showed my client was Inactive.  The next
day I check oauth_client page again, and I was told that I was banned
from that service.  I guess they were afraid I'd write another
application..

This was turned off without notice.  If my ISP turned off my Internet
site becuase my credit card expired and did not send me an email
telling me what was wrong, how long would I stay with this.   I spent
100s of hours programming a site that was designed to improve peoples
Twitter experience, I never sent out a Tweet to the 5000 users in my
account, I never sent out an email to anyone that ever used our
service.  I never tried to charge a penny to any of my users.

If I have a few users that abuse the servvice, should it be deined for
everyone?  Here's what I would have expected, somehting like this.

Dear gotwitr,
It appears that users of the website gotwitr.com have been
spamming.  User  sent out 3000 tweets this week.  Please make sure
your service does not allow this type of activity or your account will
be deactived in 7 days.  Thanks for keeping the Twitter community
clean.

Twitter People.
Read the Terms of Service on GoTwiter that I wrote
Read the Blog on Drupal that showed what could be done with Twitter.
http://drupal.org/node/599506

On my Terms of Service, I asked all users to follow the Golden Rule.
It does not appear that Twitter does this with its development
community.

This makes me want to never develop a Twitter application again.

Frustrated.
JimF


[twitter-dev] Application Suspended

2010-02-14 Thread Jim Fulford
Hello, I need some help.  4 days ago I started getting emails from my
users that they could not login to our site using the Oauth service.
I checked my site and it said my application had been suspended.   I
did not get any email from Twitter, they just deactivated my
application so nothing works.  I have sent in two support tickets, but
gotten no response.  2 days ago, I took my site down www.gotwitr.com
so that I would stop getting support email from my users.

I have had this site up for 5 months, and I have over 5000 users have
used the service.  I am so glad that I have never charged for the
service, this would be a nightmare.

If they would let me know what our site, or one of our users did to
get banned, we would be glad to fix it.   We have tried to make our
site as Twitter API friendly as possible.

We are 100% Oauth, we have never saved or requested any users
passwords.
We only let our users hit the Twitter API 1000 times in a 24 hour
period
We have all of our tools that follow or unfollow use individual user
verification, (no mass follow or unfollow)

An email with the issue would have been great.

Not getting a response in the last 4 days that my site has been down
is really not acceptable!

Thanks




Re: [twitter-dev] Streaming API - Partial word match

2010-01-18 Thread Jim Gilliam
I've been able to track act.ly urls by using "act".  So try "bit" and just
throw out anything that isn't a bit.ly url.

On Mon, Jan 18, 2010 at 1:05 PM, vivekpuri  wrote:

> Search API team is recommending developers to migrate over to
> Streaming API. To get started with this, i was looking at the
> Streaming API docs and they state that if using Track for query
> parameter, "Terms are exact-matched, and also exact-matched ignoring
> punctuation". From what i can figure out from that statement and
> running couple of tests, Streaming API is not returning partial word
> matches, which Searce API does. For example - keyword bit.ly returns
> all results on Search API with *bit.ly*, while Streaming API returns
> only results with exact bit.ly. Are there any plans to support partial
> word matches in the Streaming API?
>


Re: [twitter-dev] Re: retweets aren't appearing in track streaming api

2009-11-20 Thread Jim Gilliam
I added this retweet truncation bug to the issue tracker.
http://code.google.com/p/twitter-api/issues/detail?id=1219

On Thu, Nov 19, 2009 at 2:39 PM, Jim Gilliam  wrote:

> It's great that most retweets are coming through, but the fact that it's
> cutting off the end of tweets, making the track API not work if what you're
> tracking happens to be in the last 15-20 characters of the tweet, is a
> problem.   As it stands now, the only way for me to get at the retweets is
> to query each individual tweet (like /statuses/retweets/5865706501.json),
> over and over and over again to check.  Yuck!
>
> Jim
>
>
> On Thu, Nov 19, 2009 at 2:08 PM, Mark McBride wrote:
>
>> Great!  I checked through the code paths, and they look solid on our end.
>>
>>   ---Mark
>>
>> On Thu, Nov 19, 2009 at 1:24 PM, Jim Gilliam  wrote:
>> > I figured out what's happening.  When "RT @thekabira" gets added to the
>> > front of the tweet, it makes the tweet text longer than 140 characters,
>> so
>> > it then cuts off the rest of the tweet, which is what had "act" in it,
>> so it
>> > never shows up through the streaming api tracking for anything with
>> "act" in
>> > it.
>> >
>> > So this tweet: "What’s the deal with the Climate Bill? RT new
>> > #climategraphic, win a prize! http://bit.ly/12H1X7 via @PhaedraEL
>> > http://act.ly/Rxt";
>> >
>> > turns into this, when it's retweeted:
>> >
>> > "RT @thekabira: What’s the deal with the Climate Bill? RT new
>> > #climategraphic, win a prize! http://bit.ly/12H1X7 via @PhaedraEL
>> http://ac
>> > ..."
>> >
>> > Jim
>> >
>> > On Thu, Nov 19, 2009 at 12:05 PM, Jim Gilliam  wrote:
>> >>
>> >> My understanding is that the only way to get all the new retweets is
>> >> through the streaming API because they don't show up in search.   So
>> I'm
>> >> using the track method, but I'm not seeing retweets come through.
>> >>
>> >> Specifically, this: http://twitter.com/thekabira/status/5865706501 was
>> >> retweeted twice, but I didn't see it come through.  Old style retweets
>> >> continue to come through normally.
>> >>
>> >> Jim Gilliam
>> >> http://act.ly/
>> >> http://twitter.com/jgilliam
>> >
>> >
>>
>
>


Re: [twitter-dev] Re: retweets aren't appearing in track streaming api

2009-11-19 Thread Jim Gilliam
It's great that most retweets are coming through, but the fact that it's
cutting off the end of tweets, making the track API not work if what you're
tracking happens to be in the last 15-20 characters of the tweet, is a
problem.   As it stands now, the only way for me to get at the retweets is
to query each individual tweet (like /statuses/retweets/5865706501.json),
over and over and over again to check.  Yuck!

Jim

On Thu, Nov 19, 2009 at 2:08 PM, Mark McBride  wrote:

> Great!  I checked through the code paths, and they look solid on our end.
>
>   ---Mark
>
> On Thu, Nov 19, 2009 at 1:24 PM, Jim Gilliam  wrote:
> > I figured out what's happening.  When "RT @thekabira" gets added to the
> > front of the tweet, it makes the tweet text longer than 140 characters,
> so
> > it then cuts off the rest of the tweet, which is what had "act" in it, so
> it
> > never shows up through the streaming api tracking for anything with "act"
> in
> > it.
> >
> > So this tweet: "What’s the deal with the Climate Bill? RT new
> > #climategraphic, win a prize! http://bit.ly/12H1X7 via @PhaedraEL
> > http://act.ly/Rxt";
> >
> > turns into this, when it's retweeted:
> >
> > "RT @thekabira: What’s the deal with the Climate Bill? RT new
> > #climategraphic, win a prize! http://bit.ly/12H1X7 via @PhaedraEL
> http://ac
> > ..."
> >
> > Jim
> >
> > On Thu, Nov 19, 2009 at 12:05 PM, Jim Gilliam  wrote:
> >>
> >> My understanding is that the only way to get all the new retweets is
> >> through the streaming API because they don't show up in search.   So I'm
> >> using the track method, but I'm not seeing retweets come through.
> >>
> >> Specifically, this: http://twitter.com/thekabira/status/5865706501 was
> >> retweeted twice, but I didn't see it come through.  Old style retweets
> >> continue to come through normally.
> >>
> >> Jim Gilliam
> >> http://act.ly/
> >> http://twitter.com/jgilliam
> >
> >
>


[twitter-dev] Re: retweets aren't appearing in track streaming api

2009-11-19 Thread Jim Gilliam
I figured out what's happening.  When "RT @thekabira" gets added to the
front of the tweet, it makes the tweet text longer than 140 characters, so
it then cuts off the rest of the tweet, which is what had "act" in it, so it
never shows up through the streaming api tracking for anything with "act" in
it.

So this tweet: "What’s the deal with the Climate Bill? RT new
#climategraphic <http://twitter.com/search?q=%23climategraphic>, win a
prize! http://bit.ly/12H1X7 via @PhaedraEL <http://twitter.com/PhaedraEL>
http://act.ly/Rxt";

turns into this, when it's retweeted:

"RT @thekabira: What’s the deal with the Climate Bill? RT new
#climategraphic, win a prize! http://bit.ly/12H1X7 via @PhaedraEL http://ac...";

Jim

On Thu, Nov 19, 2009 at 12:05 PM, Jim Gilliam  wrote:

> My understanding is that the only way to get all the new retweets is
> through the streaming API because they don't show up in search.   So I'm
> using the track method, but I'm not seeing retweets come through.
>
> Specifically, this: http://twitter.com/thekabira/status/5865706501 was
> retweeted twice, but I didn't see it come through.  Old style retweets
> continue to come through normally.
>
> Jim Gilliam
> http://act.ly/
> http://twitter.com/jgilliam
>


[twitter-dev] retweets aren't appearing in track streaming api

2009-11-19 Thread Jim Gilliam
My understanding is that the only way to get all the new retweets is through
the streaming API because they don't show up in search.   So I'm using the
track method, but I'm not seeing retweets come through.

Specifically, this: http://twitter.com/thekabira/status/5865706501 was
retweeted twice, but I didn't see it come through.  Old style retweets
continue to come through normally.

Jim Gilliam
http://act.ly/
http://twitter.com/jgilliam


[twitter-dev] Re: Empty reply from server on Streaming API?

2009-11-18 Thread Jim DeLaHunt
Just to close the loop on my issue: I got some off-list help, Twitter
investigated, and it turns out my IP address had been blacklisted in
error. The blacklisting is removed, and I'm back in business.

I must say it's nice that I could ask a question on this list, and get
pretty much immediate attention from the proper Twitter person, and
over a weekend at that. Thanks, John Kalucki, and thanks, Twitter.

  --Jim DeLaHunt, Vancouver, Canada@jdlh   
http://jdlh.com/en/pr/twanguages.html
   Twanguages: a language census of Twitter @twanguages


On Nov 15, 6:52 am, John Kalucki  wrote:
> There are two levels of blacklisting. One is a temporary band that
> resets every few minutes. This one gives you 401 errors. Then there's
> an IP black hole that is removed by an operator. Currently the IP
> black hole sends a TCP RST, but we might might also null route you.
> You can verify an IP block by attempting to connect from a different
> network.
>
> If you provide an account name, I can look through the logs and see
> what happened. An IP address can also be helpful. In the absence of
> these keys, I can only speculate as to what occurred.
>
> -John Kaluckihttp://twitter.com/jkalucki
> Services, Twitter Inc.
>
> On Nov 15, 12:54 am, Jim DeLaHunt  wrote:
>
> > John:
>
> > Thanks very much for the reply.
>
> > On Nov 14, 8:30 pm, John Kalucki  wrote:
>
> > > This sounds like you were ignoring HTTP error codes and eventually got
> > > blacklisted. 
> > > Consider:http://apiwiki.twitter.com/Streaming-API-Documentation#Connecting
>
> > Hmm... I was launching single curl requests, making one connection
> > then breaking it after max 3 seconds. I would then wait 6 minutes
> > before trying to connect again.  I didn't record the HTTP result code
> > I got back, but it seems that according to Streaming-API-
> > Documentation#Connecting I was being tremendously conservative.  That
> > doc recommends backing off for 10 to 240 seconds on an HTTP error code
> > (>200); I always backed off for 360 seconds immediately, whether the
> > HTTP error code was good or bad.
>
> > How would backing off by *more* than the docs call for get me
> > blacklisted?
>
> > > You can tell for sure by turning off --silent and using -v to see
> > > what's going on. You should be getting some sort of message back, or
> > > absolutely nothing back. Those codes are not HTTP error codes, they
> > > must be some curl artifact.
>
> > Correct, the codes "6" and "52" are defined by curl. 
> > Seehttp://curl.haxx.se/docs/manpage.html. Using -v and other curl
> > options, I see clearly that what I'm getting back is "absolutely
> > nothing back": 0 bytes in response to my HTTP query. (That's the
> > meaning of the code "52".)
>
> > For the last 6 hours, I've polled once per hour (once per 3600
> > seconds), and this null response has not changed.
>
> > The docs don't say how to confirm that I've been blacklisted. Any
> > suggestions for how to confirm that? Nor do they say what to do if I
> > am in fact blacklisted. They say that the blacklist lasts "an
> > indeterminate period of time", so maybe they are implying I should
> > just wait and the system will list the blacklist itself.
>
> > The biggest issue, though, is to understand why I could have become
> > blacklisted, when I backed off for 360 seconds after each attempt.
> > Because right now, I don't know what I should do differently.
>
> > Thanks again for the guidance.
> >    --Jim DeLaHunt, Vancouver, Canada   �...@jdlh
> >    Twanguages: a language census of Twitter 
> > @twanguageshttp://jdlh.com/en/pr/twanguages.html
>
> > > Tcpdump is also sometimes useful.
>
> > > -John Kaluckihttp://twitter.com/jkalucki
> > > Services, Twitter Inc.
>
> > > On Nov 14, 6:13 pm, Jim DeLaHunt  wrote:
>
> > > > Am I the only one seeing this? I call the Streaming API 10x/hour. For
> > > > the last 23 hours or so, I've been getting bad responses every time.
>
> > > > I use a cron job to call from the Linux shell:
>
> > > > curl --user myid:mypassword --silent --fail --max-time 3 --retry 
> > > > 0http://stream.twitter.com/1/statuses/sample.xml
>
> > > > and I get usually a curl return code "(52) Empty reply from server",
> > > > though sometimes "(6) name lookup timed out". Same thing happens when
> > > > I ask for .json instead of .xml.
>
> > > > The failures started at the rate of 1-2/hour on 2009/11/13 09:00h UTC
> > > > (Friday early morning PST), though they became continuous as of
> > > > 200/11/14 03:24h UTC (Friday evening PST), and remain continuous.
>
> > > > Is anyone else calling this API and failing? Or succeeding? in the
> > > > last 24 hours?
>
> > > > Thank you,
> > > >    --Jim DeLaHunt, Vancouver, Canada   �...@jdlh
> > > >    Twanguages: a language census of Twitter   
> > > > @twanguageshttp://jdlh.com/en/pr/twanguages.html


[twitter-dev] Re: Empty reply from server on Streaming API?

2009-11-15 Thread Jim DeLaHunt

John:

Thanks very much for the reply.

On Nov 14, 8:30 pm, John Kalucki  wrote:
> This sounds like you were ignoring HTTP error codes and eventually got
> blacklisted. 
> Consider:http://apiwiki.twitter.com/Streaming-API-Documentation#Connecting

Hmm... I was launching single curl requests, making one connection
then breaking it after max 3 seconds. I would then wait 6 minutes
before trying to connect again.  I didn't record the HTTP result code
I got back, but it seems that according to Streaming-API-
Documentation#Connecting I was being tremendously conservative.  That
doc recommends backing off for 10 to 240 seconds on an HTTP error code
(>200); I always backed off for 360 seconds immediately, whether the
HTTP error code was good or bad.

How would backing off by *more* than the docs call for get me
blacklisted?

> You can tell for sure by turning off --silent and using -v to see
> what's going on. You should be getting some sort of message back, or
> absolutely nothing back. Those codes are not HTTP error codes, they
> must be some curl artifact.

Correct, the codes "6" and "52" are defined by curl. See
http://curl.haxx.se/docs/manpage.html . Using -v and other curl
options, I see clearly that what I'm getting back is "absolutely
nothing back": 0 bytes in response to my HTTP query. (That's the
meaning of the code "52".)

For the last 6 hours, I've polled once per hour (once per 3600
seconds), and this null response has not changed.

The docs don't say how to confirm that I've been blacklisted. Any
suggestions for how to confirm that? Nor do they say what to do if I
am in fact blacklisted. They say that the blacklist lasts "an
indeterminate period of time", so maybe they are implying I should
just wait and the system will list the blacklist itself.

The biggest issue, though, is to understand why I could have become
blacklisted, when I backed off for 360 seconds after each attempt.
Because right now, I don't know what I should do differently.

Thanks again for the guidance.
   --Jim DeLaHunt, Vancouver, Canada@jdlh
   Twanguages: a language census of Twitter @twanguages
http://jdlh.com/en/pr/twanguages.html

> Tcpdump is also sometimes useful.
>
> -John Kaluckihttp://twitter.com/jkalucki
> Services, Twitter Inc.
>
> On Nov 14, 6:13 pm, Jim DeLaHunt  wrote:
>
> > Am I the only one seeing this? I call the Streaming API 10x/hour. For
> > the last 23 hours or so, I've been getting bad responses every time.
>
> > I use a cron job to call from the Linux shell:
>
> > curl --user myid:mypassword --silent --fail --max-time 3 --retry 
> > 0http://stream.twitter.com/1/statuses/sample.xml
>
> > and I get usually a curl return code "(52) Empty reply from server",
> > though sometimes "(6) name lookup timed out". Same thing happens when
> > I ask for .json instead of .xml.
>
> > The failures started at the rate of 1-2/hour on 2009/11/13 09:00h UTC
> > (Friday early morning PST), though they became continuous as of
> > 200/11/14 03:24h UTC (Friday evening PST), and remain continuous.
>
> > Is anyone else calling this API and failing? Or succeeding? in the
> > last 24 hours?
>
> > Thank you,
> >    --Jim DeLaHunt, Vancouver, Canada   �...@jdlh
> >    Twanguages: a language census of Twitter   
> > @twanguageshttp://jdlh.com/en/pr/twanguages.html


[twitter-dev] Empty reply from server on Streaming API?

2009-11-14 Thread Jim DeLaHunt

Am I the only one seeing this? I call the Streaming API 10x/hour. For
the last 23 hours or so, I've been getting bad responses every time.

I use a cron job to call from the Linux shell:

curl --user myid:mypassword --silent --fail --max-time 3 --retry 0
http://stream.twitter.com/1/statuses/sample.xml

and I get usually a curl return code "(52) Empty reply from server",
though sometimes "(6) name lookup timed out". Same thing happens when
I ask for .json instead of .xml.

The failures started at the rate of 1-2/hour on 2009/11/13 09:00h UTC
(Friday early morning PST), though they became continuous as of
200/11/14 03:24h UTC (Friday evening PST), and remain continuous.

Is anyone else calling this API and failing? Or succeeding? in the
last 24 hours?

Thank you,
   --Jim DeLaHunt, Vancouver, Canada@jdlh
   Twanguages: a language census of Twitter   @twanguages
http://jdlh.com/en/pr/twanguages.html


[twitter-dev] will user payload include lists_count soon?

2009-10-30 Thread Jim Gilliam
I assume lists_count must be coming to the user payload, but haven't heard
anyone mention it.

Jim


[twitter-dev] Re: Profile search based on Bio field

2009-10-29 Thread Jim Gilliam
Topsy provides an API for searching user bios.

http://code.google.com/p/otterapi/wiki/Resources#/profilesearch

On Wed, Oct 28, 2009 at 2:38 PM, MuratMetu  wrote:

>
> Hello, we are new to twitter development, we want to know is there any
> open source API that provides us to send String query (regular
> expression) and return the list of the users whose bio text match with
> the query in their profile. Thank you.
>


[twitter-dev] Re: Japanese Characters in Image URLs

2009-10-12 Thread Jim DeLaHunt

Happy Canadian Thanksgiving, Kyle:

On Oct 12, 12:00 am, Kyle Mulka  wrote:
>... Twitter API
> developers have to deal with non-ASCII characters in image URLs
> because Twitter doesn't change the name the user gave their image file
> to something cleaner.
>
> The PHP code below is giving me the standard Amazon S3 access denied
> error message, but if I copy the URL of the image and paste it into my
> browser, that doesn't happen. What do I need to do to get this to
> work?

I expect the URLs you are getting back are UTF-8 encoded strings. I
believe the authoritative spec is RFC-3986 <http://tools.ietf.org/html/
rfc3986>. My understanding of its contents is:
a) the path part of the URL is an octet stream, and
b) the web server may interpret that octet stream as it pleases, so it
may be in any encoding, but
c) it's good practice for agents to present and interpret path parts
of URLs as UTF-8 encoded text, and
d) any octet in the path part of the URL which aren't in the subset of
ASCII permitted in URLs should be percent-encoded, but
e) it would be nice for agents to accept unpermitted byte values in
the path part of the URL, and
f) it would be nice for agents to interpret path parts of URLs as
being encoded in UTF-8 unless they know otherwise.

As usual, Wikipedia also has a nice writeup.  See
http://en.wikipedia.org/wiki/Percent-encoding and linked articles.

I did an experiment with Firefox 3 which showed it was respecting the
above spec.  I pasted a URL with non-ASCII UTF-8 characters in it, and
it blithely accepted them, perhaps percent-encoded them, and
successfully requested the page. Then I visited a URL with percent-
encoded characters (non-English versions of Wikipedia are a bounty of
such URLs), pasted one of those URLs in to the Firefox location field,
and Firefox removed the percent-encoding and displayed the URL as a
UTF-8 string.

Thus you might want to experiment with revising your code to which
handles URLs and other strings from the Twitter API to have UTF-
encoded strings, or byte strings with no encoding interpretation. Be
ready to apply your own percent-encoding of received URLs per d)
above.

I don't know the PHP incantations for string encoding, sorry. I do
know it differs between PHP 4, PHP 5, and PHP 6. (I just brushed up on
the corresponding Python incantations last night, as it happens.)

> $ch = curl_init('http://twitter.com/users/show.json?
> screen_name=rennri');
> curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
> $json = curl_exec($ch);
> curl_close($ch);
>
> $data = json_decode($json, true);
>
> $ch2 = curl_init($data['profile_image_url']);
> curl_exec($ch2);
> curl_close($ch2);
>
> --
> Kyle Mulkahttp://twilk.com- put your friends' faces on your Twitter background

Hope this helps!

—Jim DeLaHunt,  Vancouver, Canada, http://jdlh.com/ multilingual
websites consultant.


[twitter-dev] Announcing GoTwitr

2009-10-09 Thread Jim Fulford

/* Disclaimer - this app is not officially affiliated with Twitter. No
Twitter endorsement implied.  */

First, I’d like to say thanks to everyone on this board for sharing
their thoughts, questions, and help every day, and also thank Twitter
for creating a Great API for us to use.

Today we’re launching a new site call GoTwitr - www.gotwitr.com

GoTwitr is a Twitter Automation website designed to help people grow
and nourish their Twitter communities. We’ve spent a great deal of
effort trying to make this an application that works well for everyone
in the Twitter community - (New Users, Power Users, and of course
Twitter.)

GoTwitr takes a new approach to growing your community. It provides
you with a set of tools to send out beautiful HTML invitations to
invite people to your Twitter community. You can send invitations via
email, on websites or blogs, or even to Twitter users. (This blog has
some screen shots of the HTML invitations -
http://www.gotwitr.com/content/gotwitr-site-built-drupal )

It also allows you to create a group of friends and attach them to an
invitation so when your invitee decides to follow you; they can also
follow your friends at the same time. This is a great way to get new
people started on Twitter.

Here are a few technical things we did to help people find quality
connections without just blindly mass following:
1. GoTwitr lets you preview everyone you follow or un-follow. Many
other Twitter automation tools bulk follow people. This feature
ensures that you get a chance to decide if you want to follow or not,
and helps to reduce or eliminate follower churn.
2. GoTwitr delivers people to your website. Every invitation accepted
will take your recipient to your website, twitter page, blog, or any
other URL.
3. 100% Oauth - You don't have to give away your Twitter password to
use all the features of our service. This also provides you with easy
sign in and registration.
4. API Limits – No user can hit the Twitter API more than 1000 times
in a 24 hour period.

Thanks again everyone for sharing your daily tips and insights.
Please visit and have a look: http://www.gotwitr.com

All feedback welcome.

Jim Fulford


[twitter-dev] Re: Private user's 'following' information: why am I denied access via API but can get through Twitter.com?

2009-09-30 Thread Jim Renkel

Yes, this is still the case. I thought for sure Tweet Thief was missing 
something obvious, but when I went and tried it, he is 100% correct!

I agree with him that this is a serious bug that needs to be fixed.

Jim Renkel

-Original Message-
From: twitter-development-talk@googlegroups.com 
[mailto:twitter-development-t...@googlegroups.com] On Behalf Of Raffi Krikorian
Sent: Wednesday, September 30, 2009 14:12
To: twitter-development-talk@googlegroups.com
Subject: [twitter-dev] Re: Private user's 'following' information: why am I 
denied access via API but can get through Twitter.com?


is this actually the case?

http://apiwiki.twitter.com/REST+API+Changelog

on the 15th of september, this issue may have been cleared up.

>
>
> This is an annoying inconsistency with the Twitter API.
>
> If you do an authenticated call to view a user's friends/followers,
> and that user is either blocking the authenticated user or is private,
> you will not be able to view their friends/followers.  You will get
> "not authorized" error.  However, if on Twitter.com, you login and try
> to do the same thing, you CAN do this.
>
> The solution in the API is to make UNauthenticated calls and you will
> be able to view friends/followers without issue.
>
> On Sep 3, 12:37 am, Tweet Thief  wrote:
>> Summary Question: "If a user is 'private' on Twitter, why can I see
>> their followers on Twitter.com (IFF I log in) but not through the
>> API?"
>>
>> Details:
>>
>> For example, I went tohttp://twitter.com/just_me_hi/followers/and
>> can see all of her followers, despite the fact that she is "private"
>>
>> (Note: I can see them on twitter.com while logged in even when I am
>> fairly certain that she blocked me before going private.)
>>
>> curl -D - -s -u user:pass
>> "http://twitter.com/friendships/exists.xml?user_a=just_me_hi&user_b=tw 
>> ..."
>>
>> Results in:
>>
>> HTTP/1.1 403 Forbidden
>> Status: 403 Forbidden
>> (irrelevant headers edited)
>>
>> 
>> 
>>   /friendships/exists.xml? 
>> user_a=just_me_hi&user_b=tweetthief
>>   You do not have permission to retrieve following status for
>> both specified users.
>> 
>>
>> PLEASE NOTE: I tried the same API access from another account I am
>> 99.% sure she did NOT block, and it still gives me this
>> "permission error" so it does NOT appear to have anything to do with
>> whether or not this account is "blocked" and everything to do with  
>> the
>> fact that the account is marked "private"…
>>
>> I don't understand why the API gives me less access to information
>> than the website.
>>
>> T.T.
>>
>> ps: @just_me_hi appears to have gone private after I (and others)
>> called her out for plagiarism in violation of the Twitter TOS. You  
>> can
>> see the chain of events here:
>>
>> http://tweetthief.tumblr.com/tagged/justmehi/chrono
>>
>> --http://tweetthief.tumblr.com
>> Shining a light on users who plagiarize on Twitter

--
Raffi Krikorian
Twitter Platform Team
ra...@twitter.com | @raffi







[twitter-dev] Re: Improving the UX of Twitter+Oauth on iPhone?

2009-09-29 Thread Jim Renkel

I created an enhancement request for this:

http://code.google.com/p/twitter-api/issues/detail?id=1011

and al3x has said "We have a solution for this in progress.".

Please visit the issue and star it to bump its priority within twitter.

Jim Renkel

-Original Message-
From: twitter-development-talk@googlegroups.com 
[mailto:twitter-development-t...@googlegroups.com] On Behalf Of Dewald Pretorius
Sent: Tuesday, September 29, 2009 20:04
To: Twitter Development Talk
Subject: [twitter-dev] Re: Improving the UX of Twitter+Oauth on iPhone?


If my understanding is correct, the only way you can imitate Facebook
connect when using Twitter OAuth, is to scrape the Twitter login page
and authorization page and hide them from the user, i.e., login on
behalf of the user, and authorize on behalf of the user, assuming that
you first ask the user for his Twitter username and password (which
side-steps one of the major proclaimed benefits of OAuth in that the
user never has to give his credentials to your app).

I think Twitter will bitch-slap you if you do that.

Dewald

On Sep 29, 9:45 pm, "joeygreen...@gmail.com" 
wrote:
>  I'm implementing both facebook connect and Twitter+Oauth for an
> iPhone app I'm currently working on. I really like the way facebook
> connect makes it seem that you're still in the app and not visiting
> some external website. Also, it kind of messes with the flow of my app
> because when you sign into facebook connect you have this snappy
> interface and when you sign into Twitter+Oauth you can really notice
> that you're being redirected to a website.
>
>  So, what I'm wanting to do is make my Twitter+Oauth process be more
> like, if not identical, to how facebook connect works. My question is,
> does the user need to know that they are going to twitter to login?
> Most users are probably unaware that they are using a webpage when
> they are using facebook connect.
>
>  In my scenerio, would it be better to imitate the facebook connect
> experience or just keep it where you know you're being sent to twitter?



[twitter-dev] Re: First time working with OAuth want to do some automated stuff

2009-09-28 Thread Jim Renkel
In answer to your question "Is there a way to automatically get the
access tokens without
me making a web page that will ask me to login to twitter and
authenticate?", I requested this as an enhancement. Here's the URL to
the request:
 
http://code.google.com/p/twitter-api/issues/detail?id=1011
 
Al3x replied that they are working on something to help us out here, but
no ETA promised.
 
You may want to visit the issue and star it to give it a little more
weight.
 
Thanks,
 
Jim Renkel
 
-Original Message-
From: twitter-development-talk@googlegroups.com
[mailto:twitter-development-t...@googlegroups.com] On Behalf Of Abraham
Williams
Sent: Tuesday, September 29, 2009 01:26
To: twitter-development-talk@googlegroups.com
Subject: [twitter-dev] Re: First time working with OAuth want to do some
automated stuff
 
 
On Mon, Sep 28, 2009 at 18:50, Hintswen  wrote:

I currently have a script running on my server using basic
authentication and tweeting rss feeds to a number of different
accounts.

I want to do something similar to that but using OAuth (seeing as I
cant register an application for basic auth anymore). But I'm lost,
OAuth requires a browser to work doesn't it? but my script wont be run
from a browser.
 
I'm not sure if you are using PHP but here is a blog post about running
server scripts with OAuth:
http://kovshenin.com/archives/automatic-tweet-oauth/
 
Do I have to make an authorize page and load that in a web browser to
get the access tokens and then put them into my script? 
 
Yes.
 
Will they ever expire? 
 
No.
 
Is there a way to automatically get the access tokens without
me making a web page that will ask me to login to twitter and
authenticate?

You could write an HTML parser to parse the authorization page but that
would be a lot of work and error prone. 
 
Abraham

-- 
Abraham Williams | Community Evangelist | http://web608.org
Hacker | http://abrah.am | http://twitter.com/abraham
Project | http://fireeagle.labs.poseurtech.com
This email is: [ ] blogable [x] ask first [ ] private.
Sent from Madison, WI, United States 


[twitter-dev] Re: About the oneforty application directory

2009-09-28 Thread Jim Renkel
I too could be wrong, and often am, but I don't see anything in the
OAuth specification (http://oauth.net/core/1.0a) about what an access
token could or does allow access to, i.e., reading resources as opposed
to reading and writing resources. The spec seems to be completely silent
on the "granularity" of access that is granted to resources via its
mechanisms.
 
So I think twitter would be perfectly legitimate in granting
authentication only, authentication and read access, and authentication
and read and write access "levels" of authorization.
 
I have previously proposed that the ability to geocode tweets be an
additional level of authorization, and I could also see additional
levels, or orthogonal capabilities, for, e.g., enabling geo-coding,
access to e-mail addresses and device phone numbers, etc.
 
Comments expected and welcome.
 
Jim Renkel
 
-Original Message-
From: twitter-development-talk@googlegroups.com
[mailto:twitter-development-t...@googlegroups.com] On Behalf Of JDG
Sent: Monday, September 28, 2009 17:20
To: twitter-development-talk@googlegroups.com
Subject: [twitter-dev] Re: About the oneforty application directory
 
Unfortunately, best as I can ascertain, that would violate the OAuth
spec (I may, of course, be wrong -- I often am :-) ). There are RW
tokens and RO tokens, but no Auth-only tokens. The best you could hope
for, given the current state of the spec, would be for an app to simply
get, then discard, the Access token. 

This is a good use case for OAuth, and perhaps should be brought up with
them as a scenario for future versions of the spec.
On Mon, Sep 28, 2009 at 14:47, Jim Renkel 
wrote:

Yes, you can check the "Yes, use Twitter for login", or not. I'm not
sure what this does, either way.

But you have to select one of the "Read & Write" or "Read-only" radio
buttons under the "Default Access type:" heading. There doesn't appear
to be any way to turn them both off.

So it seems you have always request (and receive) at least read access
to the data of user's that authorize your application to act for them on
twitter.

This is what I and others were trying to point out, and object to: you
can't authorize without granting read access.

Why authorize without granting read access? Just to verify that they are
the twitter user they claim to be, without reading, or writing, any of
their data.

Jim Renkel

-Original Message-
From: twitter-development-talk@googlegroups.com
[mailto:twitter-development-t...@googlegroups.com] On Behalf Of Brian
Smith
Sent: Monday, September 28, 2009 09:32
To: twitter-development-talk@googlegroups.com
Subject: [twitter-dev] Re: About the oneforty application directory


Dossy Shiobara wrote:
> It would be nice if Twitter made "authentication only" as an option
for
> OAuth.

Twitter already has this. It is called "Sign in with Twitter."

- Brian





-- 
Internets. Serious business.


[twitter-dev] Re: About the oneforty application directory

2009-09-28 Thread Jim Renkel

Yes, you can check the "Yes, use Twitter for login", or not. I'm not
sure what this does, either way.

But you have to select one of the "Read & Write" or "Read-only" radio
buttons under the "Default Access type:" heading. There doesn't appear
to be any way to turn them both off.

So it seems you have always request (and receive) at least read access
to the data of user's that authorize your application to act for them on
twitter.

This is what I and others were trying to point out, and object to: you
can't authorize without granting read access.

Why authorize without granting read access? Just to verify that they are
the twitter user they claim to be, without reading, or writing, any of
their data.

Jim Renkel

-Original Message-
From: twitter-development-talk@googlegroups.com
[mailto:twitter-development-t...@googlegroups.com] On Behalf Of Brian
Smith
Sent: Monday, September 28, 2009 09:32
To: twitter-development-talk@googlegroups.com
Subject: [twitter-dev] Re: About the oneforty application directory


Dossy Shiobara wrote:
> It would be nice if Twitter made "authentication only" as an option
for
> OAuth.

Twitter already has this. It is called "Sign in with Twitter."

- Brian




[twitter-dev] Re: cursor support for blocks functions

2009-09-27 Thread Jim Renkel

I agree.

Jim Renkel

-Original Message-
From: twitter-development-talk@googlegroups.com
[mailto:twitter-development-t...@googlegroups.com] On Behalf Of J. Dale
Sent: Sunday, September 27, 2009 09:57
To: Twitter Development Talk
Subject: [twitter-dev] cursor support for blocks functions


A couple of the users of my application have enough blocked users that
I'm having the same type of timeout/over capacity problems with blocks/
blocking and blocks/blockingids that folks were having statuses/
followers. statuses/friends, friends/ids and followers/ids.  Any
chance the cursor parameter will be added to the blocks calls?



[twitter-dev] Re: About the oneforty application directory

2009-09-27 Thread Jim Renkel

I agree!

Jim Renkel

-Original Message-
From: twitter-development-talk@googlegroups.com
[mailto:twitter-development-t...@googlegroups.com] On Behalf Of Dossy
Shiobara
Sent: Sunday, September 27, 2009 14:08
To: twitter-development-talk@googlegroups.com
Subject: [twitter-dev] Re: About the oneforty application directory


Frankly, I don't even like the idea of read-access for an application
like this.

It would be nice if Twitter made "authentication only" as an option for
OAuth.  Better would be an option on the accept/deny OAuth page where
users can select what access to grant to an application - defaulting to
perhaps what access the application desires.


On 9/25/09 8:04 PM, Jim Renkel wrote:
> What will you be using my twitter account for, other than
authorization?
> If you reregister the site to only need read access to my twitter
> account, I would be a lot less reluctant to use it.


-- 
Dossy Shiobara  | do...@panoptic.com | http://dossy.org/
Panoptic Computer Network   | http://panoptic.com/
  "He realized the fastest way to change is to laugh at your own
folly -- then you can let go and quickly move on." (p. 70)



[twitter-dev] Re: broken links

2009-09-26 Thread Jim Renkel

While valid URLs, both "http://is.gd/3HsuO,http://is.gd/3HsuO,%3Ca"; give 404 errors when followed, while
"http://is.gd/3HsuO"; gets a page view.

You have to validly delimit URLs when you include them in tweets. If
twitter did a shortening on you, then they may have a problem. If you
did the shortening (which I think is the case, twitter would have used
http:/bit.ly/...) then you need to be more careful when you compose your
tweets.

I could be all wrong about this, but I hope it helps.

Jim Renkel

-Original Message-
From: twitter-development-talk@googlegroups.com
[mailto:twitter-development-t...@googlegroups.com] On Behalf Of Alan
Samet
Sent: Saturday, September 26, 2009 15:07
To: Twitter Development Talk
Subject: [twitter-dev] broken links


My tweets all have broken links right now.
here are a few of them:
http://is.gd/3HsuO,http://is.gd/3HsuO,%3Ca
http://is.gd/3HjBL,http://is.gd/3HjBL,%3Ca
http://is.gd/3HjfP,http://is.gd/3HjfP,%3Ca

can you look at this issue, please?
Thanks in advance,
Best Regards



[twitter-dev] Re: Twitter Rate Limit for IPs

2009-09-26 Thread Jim Renkel

I'm guessing that if you do a request that counts against your rate
limit (rate_limit_status requests do not) from just 1 of your IPs, and
then request the rate limit status on each of them, you will see that
the one that made the non-rate_limit_status request now has 19,999,
while the other two still have 20,000.

My understanding is that each white-listed IP gets 20k authenticated GET
requests per hour per authenticating account and an extra 20k
non-authenticated GET requests per hour, whether the IPS are listed for
the same account or not.

As I understand it, across your 3 IPs, you should get 60k authenticated
requests per hour per authenticating account, and an extra 60k
non-authenticated GET requests per hour.

Let us know what you find, as I've never heard about rate limit issues
from someone with more than one white-listed IP.

Hope this helps.

Jim Renkel

-Original Message-
From: twitter-development-talk@googlegroups.com
[mailto:twitter-development-t...@googlegroups.com] On Behalf Of
TwitterNoob
Sent: Saturday, September 26, 2009 05:02
To: Twitter Development Talk
Subject: [twitter-dev] Twitter Rate Limit for IPs


Hi,

I recently got whitelisted for 3 IPs which is listed under one single
account. Does this mean that each IP will have a rate limit of 20,000
requests/hour for the REST API so collectively all 3 IPs should give
60,000 requests/hour for the REST API or does this mean that all 3
whitelisted IPs under one single account will have 20,000 requests/
hour for the REST API collectively? I used this command "curl -u
user:password http://twitter.com/account/rate_limit_status.xml"; to get
the rate limit status for each of the 3 servers with those IPs but it
seems like all 3 IPs have only 20,000 requests/hour collectively. I'm
a little confused about this because initially I thought that each IP
whitelisted should give me an additional 20,000 requests/hour but
maybe I'm wrong so I would greatly appreciate it if someone can answer
this or show me a better way of querying for the rate limit status of
each individual server.

Many thanks to the benevolent stranger(s) for answering this...



[twitter-dev] Re: SERIOUS Problem With Cursors In JSON Followers/Friends Ids

2009-09-25 Thread Jim Renkel

+1. For this and other reasons the API should be versioned. 

Jim Renkel

-Original Message-
From: twitter-development-talk@googlegroups.com
[mailto:twitter-development-t...@googlegroups.com] On Behalf Of Scott
Haneda
Sent: Friday, September 25, 2009 21:28
To: twitter-development-talk@googlegroups.com
Subject: [twitter-dev] Re: SERIOUS Problem With Cursors In JSON
Followers/Friends Ids


Why is the API not versioned then? api.twitter.com/?v=1,  
api.twitter.com/?v=1.1, api.twitter.com/?v=1.2 etc

Or, if that is too much maintenance, how about
api.twitter.com/?bitfix=32 or whatever.
-- 
Scott * If you contact me off list replace talklists@ with scott@ *

On Sep 25, 2009, at 6:40 PM, JDG wrote:

> and it would also break everyone who CAN handle 64 bit ints and  
> expects
> results in decimal numeric format.
>
> On Fri, Sep 25, 2009 at 16:01, Richard  wrote:
>
>>
>> Can this not be returned as hex or base64?
>> It would save bandwidth for Twitter (and us) and make it a string
>> people could convert it to 64bit int if they still want to.
>>
>> On Sep 25, 10:16 pm, Scott Haneda  wrote:
>>> I would not change either.  But there are those here that are  
>>> stating
>>> they need new hardware to work around this issue, and that they can
>>> not afford that.  I was trying to be that voice of reason if that is
>>> the road/excuse they are choosing to go.
>>>
>>> There seem to be acceptable workarounds, solid proposed workarounds,
>>> etc.  I guess I am not getting it, JSON is just a string returned,
>>> yes, it can represent type of data, but it is still just a  
>>> string.  I
>>> can not see it being that huge a performance hit to massage that
>>> string a bit once you get ahold of it.
>>> --
>>> Scott * If you contact me off list replace talklists@ with scott@ *
>>>
>>> On Sep 25, 2009, at 2:02 PM, jmathai wrote:
>>>
>>>> It's ridiculous to suggest a change in hardware (64 bit) or  
>>>> software
>>>> (switch from PHP) to use Twitter's API.  It's not like either of  
>>>> these
>>>> are archaic.  It sucks, sure, but it's silly to suggest such a
>>>> "solution".
>>>
>>>> BTW, I don't have this problem. I'm just trying to be the voice of
>>>> reason.
>




[twitter-dev] Re: Please Make 401 Singular In Meaning

2009-09-25 Thread Jim Renkel

Agree. Completely. 

Jim Renkel

-Original Message-
From: twitter-development-talk@googlegroups.com
[mailto:twitter-development-t...@googlegroups.com] On Behalf Of Dewald
Pretorius
Sent: Friday, September 25, 2009 20:05
To: Twitter Development Talk
Subject: [twitter-dev] Re: Please Make 401 Singular In Meaning


And if anyone is going to tell me I should make additional API calls
to try and determine the real source of the error, or I should try and
interpret the returned error message, I am going to remotely install a
VB program on your laptop that is going to repeatedly pick up the
mouse and whack you over the head with it.

What I am really saying is the API is returning a false error message.

The user is properly authenticated. The error is that the target
information resource does not exist. That's why it must return 404.

Try it for yourself and see what I mean:

curl -u username:password
http://twitter.com/statuses/user_timeline/broughtin.json

Dewald

On Sep 25, 9:51 pm, Dewald Pretorius  wrote:
> API folks, could you please, please NOT return 401 "Not authorized"
> when an authenticated call with a perfectly valid username and
> password requests a /queryusername.json where that queryusername
> happens to be a username that does not exist.
>
> Rather return 404.
>
> By returning 401 you are making it impossible for me to tell where the
> actual problem lies and inform the user. Is it with the user's
> password, or is it because the user wanted information about a Twitter
> account that does not exist?
>
> Dewald



[twitter-dev] Re: About the oneforty application directory

2009-09-25 Thread Jim Renkel

oneforty.com seems like a valuable and useful site, one I would
definitely take advantage of, but I have a couple of questions and
concerns that need to be answered before I do so.

1. I'm not sure why I have to grant the site access to a twitter account
to use, and I am REALY concerned about why it needs update access, not
just read access. I don't want this site, or any other site like it, to
be able to update my twitter account, generating tweets or DMs, etc.,
until I see what the benefit of it doing so is.

What will you be using my twitter account for, other than authorization?
If you reregister the site to only need read access to my twitter
account, I would be a lot less reluctant to use it.

2. The site seems to be geared toward client applications. My
application is, for now, just a web-site (http://twxlate.com) with the
possibility of it evolving into desktop and smart phone client
applications in the future. Is your intention to be as relevant to
web-sites as to client applications?

Thanks in advance.

Jim Renkel

-Original Message-
From: twitter-development-talk@googlegroups.com
[mailto:twitter-development-t...@googlegroups.com] On Behalf Of Alex
Payne
Sent: Thursday, September 24, 2009 14:24
To: Twitter Development Talk
Subject: [twitter-dev] About the oneforty application directory


Just wanted to pass on a note from the team at oneforty.com, who
recently launched with over 1300 Twitter applications in their
directory. Your app might already be on their site. If it's not yet,
you can register as a developer and add it. Once you register and
claim your app you can promote it with screenshots, descriptions,
tags, and reviews.

If you saw the early alpha version of oneforty, it's much improved -
real home page, most popular apps ranking and essentials. New item
pages just launched and look much better than the prototype did.

Their team working on the ability to sell apps right on the site.
They're also definitely looking for your feedback. @freerobby,
@graysky, @macasek, and @pistachio are often in the #twitterapi IRC
channel. There's more contact info below, too.

A note from the oneforty team and info on how to register, claim, edit
& add stuff:

"""
We built oneforty to help the best stuff being built on the Twitter
API get found and get profitable.
Come claim your apps, add content and add new projects in the "Twitter
appstore" oneforty.com
To get started:
Sign in via oauth. (We whitelisted as many dev usernames as we could
find. If you can't login already use invite code TWAPI and we'll let
you right in.)
Register as a developer: http://oneforty.com/me/developer_profile
Search for and claim your app   ("Suggest Item" if we don't have it
yet!)
Check out your item's page, make sure it's tagged well, tweet a link to
it, etc
Once approved, add details, screenshots, media coverage and more

In the near future you'll be able to offer things for sale right in
oneforty. For now we link to your sites and (optionally) let you
collect donations.

We want to help you get your app found, rated, reviewed and into the
hands of the users who need it the most. We also want to get the
Twitter community to do a better job supporting developers and apps so
that your innovation can flourish. It's frustrating when great apps go
defunct because of server costs, etc.

We're anticipating decent blog and press coverage, so we want your to
look its best! Please let us know whatever we can do to help you.
Thank you.

We'd really love to know what you think and what you want: Uservice
feedback forum. Any questions at all, develop...@oneforty.com or
617-645-7767, anytime.

oneforty Founder Laura (@Pistachio) Fitton will be at events in Fort
Worth 9/25, Seattle 9/26-27, SF/bay area 9/27-30 and Boston 10/1 and
would love to meet you (see http://bit.ly/tour140 for Tweetup & event
info). She also wrote Twitter for Dummies.
"""

Check 'em out!

-- 
Alex Payne - Platform Lead, Twitter, Inc.
http://twitter.com/al3x



[twitter-dev] Re: SERIOUS Problem With Cursors In JSON Followers/Friends Ids

2009-09-24 Thread Jim Renkel

"creat[ing] any large numeric values in the JSON output as strings"
could potentially break existing JSON-using applications, depending on
the library they use and how they have "typed" the variable to receive
the large numeric value.

For http://twxlate.com, I use Google's GSON library
(http://code.google.com/p/google-gson/), and, if I had typed my
variables (actually, Java class fields) as int, Integer, long, or Long,
then the change you suggest would break my code.

Of course the code would also have been broken when the values exceeded
2**31 or 2**63. Anticipating this and also possibly non-numeric values,
I typed the fields as Strings. So I have lucked out on the impact of
Twitpocalylses.

But others may not have been or be so lucky.

On a higher plane, to my mind this is an issue of versioning in the API
syntax. Twitter does not support explicit versioning (i.e., the
inclusion of an API version parameter in API requests) as other RESTful
interfaces do. For example, most Google API RESTful interface methods
include a v= parameter to indicate which version of the method is being
used.

If twitter included this, then to receive large numeric values encoded
as strings the requester could simply include, e.g., v=1.1, on the
request. Given that twitter specified in advance that if you request
version 1.1 responses then large numeric values would be encoded as
strings, then any request made with v=1.1 would have known and had to be
prepared to accept string encoded values. Without v=1.1, you would still
get integer encoded values, and nothing would break.

There have been, and I suspect will continue to be, changes to the API
specification that were or will be not backward compatible without a
version parameter, and for this reason I strongly urge twitter to adopt
this mechanism for all non-backward compatible API changes.

Version negotiation could also be done via HTTP headers, but I prefer
method parameters.

Comments expected and welcome.

Jim Renkel

-Original Message-
From: twitter-development-talk@googlegroups.com
[mailto:twitter-development-t...@googlegroups.com] On Behalf Of Dewald
Pretorius
Sent: Thursday, September 24, 2009 10:26
To: Twitter Development Talk
Subject: [twitter-dev] Re: SERIOUS Problem With Cursors In JSON
Followers/Friends Ids


Provided that it will not break the JSON for other language apps, the
solution is extremely simple for Twitter to implement, and it will
save a lot of us a lot of work and expense.

Just create any large numeric values in the JSON output as strings,
instead of numbers.

This goes for any large numbers, including tweet ids. As far as I am
concerned they can output everything in JSON as strings.

Thoughts, Twitter?

Dewald

On Sep 24, 12:08 pm, jmathai  wrote:
> Agreed that the problem isn't Twitter's fault. But a basic feature
> like cursor should work in a language as popular as PHP.  Not so much
> in principle but in practice.
>
> Has anyone tried PEAR's Services_JSON?  I haven't tried nor looked at
> the source.  It's also slower than the native json_* functions but
> that may or may not be an issue.
>
> On Sep 24, 6:52 am, Joseph Cheek  wrote:
>
> > To be fair to Twitter, the problem lies in PHP's json_decode()
function,
> > not the twitter API.
>
> > Joseph Cheek
> > jos...@cheek.com,www.cheek.com
> > twitter:http://twitter.com/cheekdotcom
>
> > Dewald Pretorius wrote:
> > > Chad,
>
> > > Shouldn't Twitter be providing an API that works for everyone?
>
> > > From what you said it sounds as if you're saying, "Tough. If you
want
> > > to consume the API with PHP, either run your stuff on a 64-bit
> > > machine, or scrape the raw JSON output and make it so that it
works
> > > for you."
>
> > > That doesn't sound right.
>
> > > Dewald
>
> > > On Sep 24, 1:02 am, Chad Etzel  wrote:
>
> > >> Hello,
>
> > >> As Joseph points out, PHP on a 64-bit system can handle these
numbers.
>
> > >> If you really want this data as a string, you could write a regex
in
> > >> PHP to alter the json string to wrap the digits in quotes before
> > >> sending it through json_decode(), but that would be a pretty
gnarly
> > >> kludge.
>
> > >> -Chad
>
> > >> On Wed, Sep 23, 2009 at 10:28 PM, Dewald Pretorius
 wrote:
>
> > >>> All that Twitter needs to do to solve this problem is to build
the
> > >>> JSON out with next_cursor and previous_cursor as string values.
>
> > >>> I.e., the JSON data should contain:
>
> > >>>
"next_cursor":"12398712981212987","previous_cursor":"-12398712981212987"
>
> > >>> I don't know what it will do to Java apps, but for PHP apps it
will
> > >>> solve the problem.
>
> > >>> Dewald



[twitter-dev] Re: Will there be a Geolocation status method?

2009-09-22 Thread Jim Renkel

Try looking at:

http://code.google.com/intl/fr-FR/apis/maps/documentation/geocoding/

Hope this helps.

Jim Renkel

-Original Message-
From: twitter-development-talk@googlegroups.com
[mailto:twitter-development-t...@googlegroups.com] On Behalf Of Joseph
Cheek
Sent: Tuesday, September 22, 2009 11:00
To: twitter-development-talk@googlegroups.com
Subject: [twitter-dev] Re: Will there be a Geolocation status method?


slightly off topic: does anyone know an easy (web?) method to translate
location names (ie, "Atlanta, Georgia") to geodata coords and vice
versa?

thanks in advance

Joseph Cheek
jos...@cheek.com, www.cheek.com
twitter: http://twitter.com/cheekdotcom



Raffi Krikorian wrote:
>
> hi tom.
>
> if there is geo data, then the "near parameter" will be using that. 
> if not, then it will use the location in the user's profile.
>
> does that help?
>
>> Thanks. Am I correctly understanding that the near parameter uses the
>> location of the users profile and will not use the new geolocation
api
>> lat/long data?
>>
>>> It is very unlikely that we would offer a publicly available method
on
>>> the streaming API that returned all geotagged statuses. It is much
>>> more likely that we'll offer a parameter to the /1/statuses/filter
>>> method that would be subject to the same limitations as the track
>>> keyword. Such a feature is unscheduled. I wouldn't guess as to when
>>> we'll get to such an implementation.
>>>
>>> In the mean time, the Search API offers the near: parameter.
>>>
>>> -John Kaluckihttp://twitter.com/jkalucki
>>> Services, Twitter Inc.
>>>
>>>>  I want to filter the firehouse to a subset of tweets that will
have
>>>> valid geodata (lat/long).
>>>
>>>>> hi tom.
>>>>> what are you exactly asking?  you can look at any of the timeline
>>>>> methods --
>>>>> wherever there will be  object, there will be geo
>>>>> information if
>>>>> there is geo information available.
>>>
>>>>> does that help?
>>>
>>>>>> Something like statuses/geolocation that returns public statuses
>>>>>> with
>>>>>> geolocation data? Thanks.
>
> -- 
> Raffi Krikorian
> Twitter Platform Team
> ra...@twitter.com | @raffi



[twitter-dev] need ability to search retweets

2009-09-20 Thread Jim Gilliam
Right now, retweets show up in the search API, but with the new retweet
system, it appears all retweets will be yanked from the search API, and
there will be no way to get all retweets that match a particular keyword.

This is a problem for my http://act.ly application.   It's Twitter
petitions, and one core piece of functionality is that people can sign the
petition simply by retweeting.  There's no need to go to the act.ly site, so
it works easily from mobile, etc.   To get these tweets, I hit the search
API every minute or so and pull back anything that matches "act.ly" and then
add them to the appropriate petition.

I need some API method to find out all the retweets that match "act.ly"
Pretty please!  Don't make me start a petition.  :)

Jim Gilliam
http://twitter.com/jgilliam


[twitter-dev] Re: Streaming API Help

2009-09-19 Thread Jim Gilliam
I ran into the same problem trying to do this in Ruby last night using this
technique: http://www.robares.com/2009/07/14/streaming-twitter-api.html

I think it's because /statuses/filter.json requires a POST, which isn't
supported by yajl-ruby.  So I'm stuck.  It works fine if you use one of the
other GET methods like /statuses/sample.json.

Jim Gilliam
http://act.ly/
http://twitter.com/jgilliam

On Sat, Sep 19, 2009 at 7:31 AM, Greg  wrote:

>
> I'm trying to implement Streaming API on my Twitter application to
> enhance the stabilty instead of using the Search API.
>
> Basically - I'm trying to use the track paramter to track a keyword.
> However, when I run this code - it just times out - nothing occurs.
> Perhaps I'm not using the track parameter correctly?
>
> I know I'm just dumping the code right now - but it was merely for
> test.
>
> My ad-hoc code is below:
>
> // twitter_stream.php
>  $fp = fopen("http://username:passw...@stream.twitter.com/1/statuses/
> filter.json?track=ttl,wine<http://username:passw...@stream.twitter.com/1/statuses/%0Afilter.json?track=ttl,wine>",
> "r");
> while($data = fgets($fp))
> {
>$new_data = json_decode($data);
>
>foreach($status as $new_data)
>{
>var_dump($status);
>echo "";
>}
> }
> ?>
>
> Thanks for the help!
>
> Greg
>


[twitter-dev] Re: non json response

2009-09-16 Thread Jim Renkel

I agree with John that to achieve higher user visible reliability, API
requests should be wrapped in a retry loop.

However, PLEASE, PLEASE, PLEASE, do NOT use linear backoff, i.e.,
subsequent retries are delayed by an amount of time chosen uniformly at
random up to the same maximum amount for each retry. This will lead to
disasters for all API users as failed API requests, when retried, will
tend to bunch up in ever increasing bunches, leading to a higher, not
lower, failure rate.

You should instead use exponential backoff, where the maximum amount of
delay time increases for each retry. Queuing theory and experience
indicate that the optimum factor used to increase the maximum delay for
each retry should be 2.0.

The earliest implementations of both Ethernet and TCP, and I'm sure
other protocols, tried linear backoff and experienced this problem in
spades. When the backoff was changed to exponential, the problems
miraculously went away.

Jim Renkel

-Original Message-
From: twitter-development-talk@googlegroups.com
[mailto:twitter-development-t...@googlegroups.com] On Behalf Of John
Kalucki
Sent: Wednesday, September 16, 2009 12:56
To: Twitter Development Talk
Subject: [twitter-dev] Re: non json response


I've been following the internal dialog on tracking this issue down.
Given what we know, I don't think there's anything that you can change
to the request parameters to reduce the chances of this happening.
>From a given client, the chances of this happening to a request are
pretty close to random. Different clients, however, seem from the
outside to operate differently, as they tend to routed through
different infrastructure. There also may be differences in the quality
of the code, especially around how errors are handled.

If you want higher reliability,  I'd suggest wrapping nearly all
network API calls in a retry loop. If you get any sort of error: tcp,
http, parser, etc. retry with linear backoff.

-John Kalucki
http://twitter.com/jkalucki
Services, Twitter Inc.


On Sep 16, 10:23 am, Naveen A  wrote:
> Is there a specific way we can construct our request to mitigate the
> non-json response? I have used a few different twitter clients on the
> same mobile device and some of them do not seem to be plagued with the
> bad data like we are? Does including something in the header help get
> us through whatever filter is returning the bad data?
>
> Maybe the Twitter cookies that are returned back on each request?
> Currently, we don't pass them back on subsequent requests because they
> shouldn't be necessary, but if it will make some of the bad JSON
> responses go away, I'll spend the time to implement it..
>
> These bad json responses have been a problem for over a month now and
> while I realize it is a difficult problem to track down, the fact
> remains that the API is not functioning correctly.
>
> A response from the twitter team would be greatly appreciated.
>
> On Sep 13, 6:01 am, Rudifa  wrote:
>
> > I just had one non-json response, in the middle of about 10 requests
> > made with curl -vvv (other responses were correct)
>
> > Below are 3 requests and the non-json response bracketted by 2 good
> > responses which contain the response time and other logging data.
>
> > HTH
> > Rudi
>
> > rudolf-farkass-macbook-pro:TwitterWeb rudifarkas$ curl
-vvvhttp://twitter.com/users/show/rudifa.json
> > * About to connect() to twitter.com port 80 (#0)
> > *   Trying 168.143.161.20... connected
> > * Connected to twitter.com (168.143.161.20) port 80 (#0)> GET
/users/show/rudifa.json HTTP/1.1
> > > User-Agent: curl/7.16.3 (powerpc-apple-darwin9.0) libcurl/7.16.3
OpenSSL/0.9.7l zlib/1.2.3
> > > Host: twitter.com
> > > Accept: */*
>
> > < HTTP/1.1 200 OK
> > < Date: Sun, 13 Sep 2009 09:45:23 GMT
> > < Server: hi
> > < X-RateLimit-Limit: 150
> > < X-Transaction: 1252835123-2408-31139
> > < Status: 200 OK
> > < ETag: "df090f6c8147e20ba7fe81315a66b9af"
> > < Last-Modified: Sun, 13 Sep 2009 09:45:23 GMT
> > < X-RateLimit-Remaining: 124
> > < Content-Type: application/json; charset=utf-8
> > < Pragma: no-cache
> > < Content-Length: 1176
> > < Cache-Control: no-cache, no-store, must-revalidate, pre-check=0,
> > post-check=0
> > < Expires: Tue, 31 Mar 1981 05:00:00 GMT
> > < X-Revision: a62881015b2c2fb6f795bf931bd56bd494f37254
> > < X-RateLimit-Reset: 1252836853
> > < Set-Cookie: lang=en; path=/
> > < Set-Cookie:
> >
_twitter_sess=BAh7CDoRdHJhbnNfcHJvbXB0MDoHaWQiJWU5OGQyZmU3NWVkY2RhZjhkYT
k5% 250ANTBlNTA4OTk0MzhhIgpmbGFzaElDOidBY3Rpb25Db250cm9sbGVyOjpGbGFz
> >
%250AaDo6Rmxhc2hIYXNoewAGOgpAdXNlZHsA

[twitter-dev] Re: Comments for the group and Twitter staff

2009-09-15 Thread Jim Renkel

I emphatically second and support the idea of twitter.com having to use
the API.

We had similar quality problems at a place I formerly worked, and they
were solved, completely, when such a policy was instituted.

Yeah, it puts pressure on the API team and may inconvenience the UI
team, or whatever you call them, but in the long run it will be worth
it.

Side effects that we saw were a simpler, cleaner, more consistent
architecture for the whole system, and lower total costs to develop and
maintain the system.

Bite the bullet and do it now. The longer you wait, the more difficult
and expensive it will be. 

Jim Renkel

-Original Message-
From: twitter-development-talk@googlegroups.com
[mailto:twitter-development-t...@googlegroups.com] On Behalf Of Scott
Haneda
Sent: Tuesday, September 15, 2009 15:55
To: twitter-development-talk@googlegroups.com
Subject: [twitter-dev] Re: Comments for the group and Twitter staff


Probably too late for this, but perhaps moving forward, it could be  
done...
Twitter.com should move to using their own API.  The tools they use to  
power their own site should be the same tools we use and rely on.

In all reality, this seems a simpler approach, rather than pushing out  
code for their stuff, and then essentially backporting that to an API,  
just work on making the API, and then integrate that into the  
twitter.com site.

As far as I can tell, this would solve pretty much every problem the  
API has, as there can not be a case where twitter is down, but the API  
is up, or the API is down, and twitter is up.

Twitter should be eating their own dog food :)
-- 
Scott * If you contact me off list replace talklists@ with scott@ *




[twitter-dev] Re: Default profile pics

2009-09-15 Thread Jim Renkel

Factoid, FWIW: so far, I've found 7:

http://s.twimg.com/a/1252980779/images/default_profile_x_normal.png

where 0<=x<=6.

Jim Renkel

-Original Message-
From: twitter-development-talk@googlegroups.com
[mailto:twitter-development-t...@googlegroups.com] On Behalf Of
timwhitlock
Sent: Tuesday, September 15, 2009 06:39
To: Twitter Development Talk
Subject: [twitter-dev] Default profile pics


I notice today that Twitter has created a new default profile pic;
e.g:
http://s.twimg.com/a/1252980779/images/default_profile_1_normal.png

Great. That's broken some of my algorithms on Twitblock.org.
(identifying re-used images)
I can fix that. I'll just add the new MD5 to my app config.

But, wait. Did I spot some different colours?
Yes, that example is only one; e.g.2:
http://s.twimg.com/a/1252980779/images/default_profile_2_normal.png

a. Can Twitter tell use how many there are of these?
b. How about a user object property "profile_image_default" (true|
false) ?
c. How about Twitter start notifying the developer community of
changes?



[twitter-dev] Re: Errornous link - Bracket problem with bit.ly

2009-09-10 Thread Jim Renkel
I completely agree with the sentiment as stated, but have a question.
 
Does the URL shortening happen only for tweets entered at twitter.com?
Or does it also happen for tweets created via the API? The former is a
twitter UI issue, and if they want to shorten tweets, well, that's their
business.
 
But shortening URLs in tweets created via the API is *MY* business as a
user of the API, and, IMHO, none of theirs. If I and / or my user want a
URL shortened, we'll do it. And if I or my user *DON'T* want it
shortened, then the API should not do it.
 
If in fact URL shortening is possible via the API, then there should at
least be an option to suppress it.
 
Jim Renkel
 
-Original Message-
From: twitter-development-talk@googlegroups.com
[mailto:twitter-development-t...@googlegroups.com] On Behalf Of JDG
Sent: Thursday, September 10, 2009 16:19
To: twitter-development-talk@googlegroups.com
Subject: [twitter-dev] Re: Errornous link - Bracket problem with bit.ly
 
Yet another reason Twitter should NOT be bit.ly encoding URLs that do
not cause tweets to go > 140 chars. (or at all for that matter, leave
that up to the users)
On Thu, Sep 10, 2009 at 13:42, Matthew Terenzio 
wrote:
 
Yes, you need to ask twitter to fix that. They are using our api, but
obviously, they are encoding the ")" after the .jpg. Thanks for
letting us know, but yes, this is a twitter issue.

Good luck with that. Since it is acceptable to have the unencoded )
character in a  URL, I don't know how they might interpret that it does
not belong. They can make a good guess at best.
 



-- 
Internets. Serious business.


[twitter-dev] Re: Mobile oAuth

2009-09-04 Thread Jim Renkel

OAuth is great, in certain circumstances. In others, it's not so great.

Circumstances for which it is great include:
-   consumer web sites; and
-   consumer client applications that have access to a reasonable
browser on
the client device
in both cases with the qualification that the authorization pages of the
service provider are in a language (e.g., English, Japanese, etc.) that
is the same as that used by the consumer.

In these circumstances, OAuth as defined by the specifications and
implemented by twitter works very well.

Circumstances for which it is not so great include:
-   consumer client applications that do not have access to a reasonable
browser on the client device; and
-   consumer client applications and web sites that are in languages for
which service authorization pages in those languages are not
available.

In these circumstances, OAuth as defined by the specifications and
implemented by twitter does not work so well.

Currently, in circumstances where OAuth does not work very well, twitter
client applications and web-sites can resort to Basic Authentication.

The drawbacks to this are obvious:
-   the user must give their twitter password to the client;
-   at some point twitter will no longer support Basic Authentication;
and
-   the source of tweets created by these clients is "API" rather than
the
client's name.

Pooh pooh the last drawback if you will, but to some it is important.

Now, the fact of the matter is that some users are perfectly comfortable
in giving their twitter passwords to client applications and web-sites,
even where those clients support OAuth.

I don't think these users should be penalized and forced to use OAuth
if'n and when'n twitter drops support for Basic Authentication. 

And if'n and when'n twitter drops support for Basic Authentication,
client applications and web-sites that now only support Basic
Authentication will be forced to support OAuth. Myself, I don't think
that's an unreasonable requirement, but others may differ.

And I don't think these creators should have to forgo having their
client's name as the source of tweets their clients create, now or ever,
just because their users chose to trust them to use Basic
Authentication.

So I propose the following enhancement to twitter's OAuth
implementation:

Allow a userID and password to be included as optional parameters of an
oauth/access_token request. If supplied and authentic, they would cause
a valid access token to be returned without the user having visited the
authorize URL and approved the access.

Alternately, the userID and password could be optional on an
oauth/request_token request, in which case, if supplied and authentic,
the request would return a valid access token, rather than a request
token, again without the user having visited the authorize URL and
approved the access. The advantage to this alternative is it reduces by
one the number of API calls needed.

I believe either of these alternatives is a viable solution for the
circumstances where the existing OAuth implementation does not work so
great.

Comments expected and welcome.

Jim Renkel

-Original Message-
From: twitter-development-talk@googlegroups.com
[mailto:twitter-development-t...@googlegroups.com] On Behalf Of
twittme_mobi
Sent: Friday, September 04, 2009 08:39
To: Twitter Development Talk
Subject: [twitter-dev] Re: Mobile oAuth


I am also interested in mobile oath solution.
twitter guys should think of something before deprecating basic auth

On Aug 20, 8:01 am, Cameron Kaiser  wrote:
> > I have a mobile based twitter client in the field and have
implemented
> > oAuth for this client. Some of the devices are either very low
memory
> > or have primitive browsers that dont support the rendering of the
> > 'allow' / 'deny' access page (http://twitter.com/oauth/authorize). I
> > have tried the obvioushttp://m.twitter.com/oauth/authorizebut this
> > seems to serve the same standard webage.
>
> > So Im looking for nat previous info or plans of a lightweight
> > implementation of oAuth access page for twitter.
>
> I'm also particularly interested in such a page, especially one a text
> browser could access such as Lynx or w3m.
>
> --
> 
personal:http://www.cameronkaiser.com/--
>   Cameron Kaiser * Floodgap Systems *www.floodgap.com*
ckai...@floodgap.com
> -- Adore, v.: To venerate expectantly. -- Ambrose Bierce
--



[twitter-dev] Re: New ReTweet API

2009-09-03 Thread Jim Renkel

In

http://groups.google.com/group/twitter-api-announce/browse_thread/thread
/8540da9d7d64c46

Marcel, on behalf of twitter, announced to availability of the 
statuses/home_timeline method.

This is good news! It will allow us to start development of retweet
support in our client applications / web-sites, and do backward
compatibility testing.

Would it be possible, if it has not already been done, for twitter to
create a couple of accounts that include some retweets so we can also do
forward compatibility testing? It doesn't have to be much, just a
half-dozen or so nonsense status updates in each account, some
retweeted, some not.

When you do this, please be sure to include an example of a status
update that is retweeted by more than one other account. I, and others,
still have questions, so far unanswered, about what the results will
look like in this case, and other similar cases.

Thanks in advance,

Jim Renkel

-Original Message-
From: twitter-development-talk@googlegroups.com
[mailto:twitter-development-t...@googlegroups.com] On Behalf Of
jim.renkel
Sent: Thursday, September 03, 2009 13:32
To: Twitter Development Talk
Subject: [twitter-dev] Re: New ReTweet API


I asked this, and similar but more detailed questions, in my Aug 18,
7:35 pm post to this thread:

http://groups.google.com/group/twitter-development-talk/browse_thread/th
read/1e07e332ec3d449d/2d10a6a22e55133e?lnk=gst&q=ReTweet+API#2d10a6a22e5
5133e

but, unfortunately, have not yet received an answer, at least none
that I can find.

Could someone from twitter (Marcel Molina?) please address these
issues?

I think they are pretty important. I need to know the answers to be
able to design support for retweets in my site (http://twxlate.com). I
would hope I wouldn't have to resort to experimentation once this
feature is deployed at twitter.com to get answers to what I think are
pretty fundamental questions.

Thanks in advance,

Jim Renkel

On Aug 14, 1:35 pm, Houshang Nayeb  wrote:
> I have the following question:
>
> If one of my tweets is retweeted multiple times, what will be the
> return value of “retweets_of_me.format” ? Will it be one record with
> multiple “” sections?
>
> If yes, will there be a “count” for the number of times it has been
> retweeted?
> If no, then what happens?
>
> Thanks!



[twitter-dev] Re: [ANN] statuses/home_timeline resource now available (though it doesn't include retweets yet)

2009-09-03 Thread Jim Renkel

Marcel,

This is good news! It will allow us to start development of retweet
support in our client applications / web-sites, and do backward
compatibility testing.

Would it be possible, if it has not already been done, for twitter to
create a couple of accounts that include some retweets so we can also do
forward compatibility testing? It doesn't have to be much, just a
half-dozen or so nonsense status updates in each account, some
retweeted, some not.

When you do this, please be sure to include an example of a status
update that is retweeted by more than one other account. I, and others,
still have questions, so far unanswered, about what the results will
look like in this case, and other similar cases.

Thanks in advance,

Jim Renkel

-Original Message-
From: twitter-development-talk@googlegroups.com
[mailto:twitter-development-t...@googlegroups.com] On Behalf Of Marcel
Molina
Sent: Wednesday, September 02, 2009 18:23
To: twitter-development-talk@googlegroups.com;
twitter-api-annou...@googlegroups.com
Subject: [twitter-dev] [ANN] statuses/home_timeline resource now
available (though it doesn't include retweets yet)


We mentioned in our early preview email about the retweet API
(http://groups.google.com/group/twitter-api-announce/browse_thread/threa
d/1e07e332ec3d449d)
that the statuses/friends_timeline resource wasn't going to include
retweets for backwards compatibility so we don't break clients that
aren't planning to add retweet support. The upgrade path is entirely
opt-in. To that end we're adding a statuses/home_timeline resource
that is in all ways identical to statuses/friends_timeline except the
home_timeline resource *will* include retweets as demonstrated in the
example payload in the documentation at
http://apiwiki.twitter.com/Twitter-REST-API-Method%3A-statuses-home_time
line.

The statuses/home_timeline resource is now available though it won't
include any retweets until the retweeting feature is fully launched.
To be clear, until the full retweet launch, statuses/home_timeline
will be 100% identical to statuses/friends_timeline and will *not*
include retweets. We wanted to make the resource available early
though so that clients who will be incorporating retweets into their
timelines can update the resource that they reference and have
requests succeed. When the full retweet launch happens, retweets will
start to appear in statuses/home_timeline as per the documentation.

-- 
Marcel Molina
Twitter Platform Team
http://twitter.com/noradio



[twitter-dev] Re: Private user's 'following' information: why am I denied access via API but can get through Twitter.com?

2009-09-03 Thread Jim Renkel

Hmm! I'm not sure what the problem is you're having, but my site has no
problem seeing her followers. You can see this at:

http://twxlate.com/?a=fllwrs&u=just_me_hi

Hope this helps.

Jim Renkel

-Original Message-
From: twitter-development-talk@googlegroups.com
[mailto:twitter-development-t...@googlegroups.com] On Behalf Of Tweet
Thief
Sent: Thursday, September 03, 2009 02:37
To: twitter-development-talk@googlegroups.com
Subject: [twitter-dev] Private user's 'following' information: why am I
denied access via API but can get through Twitter.com?


Summary Question: "If a user is 'private' on Twitter, why can I see
their followers on Twitter.com (IFF I log in) but not through the
API?"

Details:

For example, I went to http://twitter.com/just_me_hi/followers/ and
can see all of her followers, despite the fact that she is "private"

(Note: I can see them on twitter.com while logged in even when I am
fairly certain that she blocked me before going private.)

curl -D - -s -u user:pass
"http://twitter.com/friendships/exists.xml?user_a=just_me_hi&user_b=twee
tthief"

Results in:

HTTP/1.1 403 Forbidden
Status: 403 Forbidden
(irrelevant headers edited)



 
/friendships/exists.xml?user_a=just_me_hi&user_b=tweetthief

  You do not have permission to retrieve following status for
both specified users.


PLEASE NOTE: I tried the same API access from another account I am
99.% sure she did NOT block, and it still gives me this
"permission error" so it does NOT appear to have anything to do with
whether or not this account is "blocked" and everything to do with the
fact that the account is marked "private".

I don't understand why the API gives me less access to information
than the website.

T.T.

ps: @just_me_hi appears to have gone private after I (and others)
called her out for plagiarism in violation of the Twitter TOS. You can
see the chain of events here:

http://tweetthief.tumblr.com/tagged/justmehi/chrono

-- 
http://tweetthief.tumblr.com
Shining a light on users who plagiarize on Twitter



[twitter-dev] Re: if you will be using the Geolocation API ...

2009-09-02 Thread Jim Renkel

Raffi,

Is it only the account/verify_credentials method that will return the 
 sub-element in the  element, or all methods that
return a  element?

While having only account/verify_credentials return it is better than
nothing, I would hope that all methods that return a  element
would include a  sub-element. For consistency, if nothing
else.

With the issues associated with account/verify_credentials requests and
the DOS attack, I have been avoiding using the method: Basic
Authentication credentials can be, and in fact are, verified with any
and every authenticated request; OAuth credentials (access token and
token secret) are by their nature pre-authenticated, and are, again,
re-verified with each and every use. So this may require me to issue an
account/verify_credentials request where I would otherwise not have to
do so, just to get the  flag.

I can, and will if necessary, do that, but would prefer not to.

Jim Renkel

-Original Message-
From: twitter-development-talk@googlegroups.com
[mailto:twitter-development-t...@googlegroups.com] On Behalf Of Raffi
Krikorian
Sent: Wednesday, September 02, 2009 18:01
To: twitter-development-talk@googlegroups.com
Subject: [twitter-dev] Re: if you will be using the Geolocation API ...


hi jim.

yup!
http://apiwiki.twitter.com/Twitter-REST-API-Method%3A-account%C2%A0verif
y_credentials

> Raffi,
>
> Another question came up as I was thinking about support for this in
> my web-site (http://twxlate.com):
>
> Will the  elements returned in the responses to API requests
> include information that indicates whether or not the user has opted-
> in to geo-coding of their tweets?
>
> I would like to see this right from the get go so that client web-
> sites / applications know whether or not to prompt their users for
> location information to be geo-coded with a tweet that is being
> created. If this isn't there, I think there will be unnecessary
> confusion and possibly wrong actions taken on behalf of the user.
>
> Please seriously consider this for inclusion in the initial
> deployment, if it is not already there.
>
> Thanks in advance.
>
> Comments welcome and expected.
>
> Jim Renkel
>
> On Sep 1, 6:08 pm, Raffi Krikorian  wrote:
>> hey jim.
>>
>>
>>
>>> 1. "the user.location is a completely separate entity (for now)"
>>> implies
>>> that maybe sometime in the future it may be used, e.g., to provide a
>>> default geo-coded location for a tweet. I would suggest that if the
>>> user's profile location if ever geo-coded, that geo-code should be
>>> added
>>> to the  objects returned by API calls, at least the users/show
>>> method. Users will want to know what may be, e.g., added to their
>>> tweets
>>> without having to generate a test tweet to find out.
>>
>>> 2. Having the user's profile location geo-coded and returned in API
>>> calls would be very useful now. Yeh, twitter client web-sites /
>>> applications can do it for themselves (Mine certainly will if  
>>> twitter
>>> doesn't do it.), but may come up with different / inconsistent
>>> results.
>>> And, trust me, it ain't as easy to get good results as it might  
>>> first
>>> appear. To maximize use and consistency, it would be great if  
>>> twitter
>>> did the geo-coding and supplied it to everyone.
>>
>> these are both great ideas.  right now, the geolocation API is really
>> focused on tweet-level information -- but we're actively thinking
>> about what's next.
>>
>>> 3. Will twitter client web-sites / applications be able to turn the
>>> geo-location feature on for their users, or do the users have to  
>>> go to
>>> twitter.com with a browser to do this? My concern here is that
>>> twitter.com only supports two languages (English and Japanese) for  
>>> its
>>> UI, where my site (http://twxlate.com) supports these and over 40
>>> more.
>>> Unless the user is fluent in English or Japanese, they won't be able
>>> to
>>> turn it on. I've already run into similar problems as I'm rolling  
>>> out
>>> test versions of OAuth support.
>>
>> unfortunately not.  as we're pretty sensitive to our user's privacy,
>> for now, a user will have to go to twitter.com with a browser to turn
>> on the setting (remember, by default it is off).  if you have any
>> suggestions on how to make this user interaction better in the  
>> future,
>> i would be eager to hear them!
>>
>>> As I've written some pretty spiffy geo-coding applications for other
>>> purposes, I plan on doing some pretty spiffy geo-coding stuff with
>>> twxlate.com. But it needs to be usable, or users won't use it  
>>> and / or
>>> may be annoyed by it. I would hate for that to happen to what  
>>> promises
>>> to be a really neat feature.
>>
>> cool!  well - i hope what we're doing is usable!  if not, just keep
>> blasting me about it.  threads like these on the mailing list are
>> awesome.
>>
>> --
>> Raffi Krikorian
>> Twitter Platform Team
>> ra...@twitter.com | @raffi

--
Raffi Krikorian
Twitter Platform Team
ra...@twitter.com | @raffi







[twitter-dev] Re: Twitter IP Whitelisting

2009-09-02 Thread Jim Renkel

I don't think white-listing is going to help with a latency problem. It
only gets ya way more API GET requests per hour.

Latency issues are probably due to twitter infrastructure problems,
i.e., delays in the back-end DB servers posting updates from the
front-end UI servers. We've been seeing this recently with follow /
un-follow requests. Your issue may be another symptom of the same root
problem.

Hope this helps.

Jim Renkel

-Original Message-
From: twitter-development-talk@googlegroups.com
[mailto:twitter-development-t...@googlegroups.com] On Behalf Of Andy
Pirate
Sent: Wednesday, September 02, 2009 01:28
To: Twitter Development Talk
Cc: ma...@pwned.com
Subject: [twitter-dev] Twitter IP Whitelisting


So here's the deal. We've had the Twitter API integrated into
Pwned.com for many months now. One problem we keep running into is
that it updates our members Twitter WAY later. For example, it says so
and so is playing on-line, but we processed that request hours ago and
then it finally shows up on their feed.

I have requested whitelisting before, but they claimed it was approved
and I don't think that it is. We've had to severely limit our
integration with Twitter because of this reason.

Any help would be greatly appreciated.

Thanks

Andy



[twitter-dev] Re: if you will be using the Geolocation API ...

2009-09-01 Thread Jim Renkel

Raffi,

Most Excellent! But a couple of more questions / comments, of course

1. "the user.location is a completely separate entity (for now)" implies
that maybe sometime in the future it may be used, e.g., to provide a
default geo-coded location for a tweet. I would suggest that if the
user's profile location if ever geo-coded, that geo-code should be added
to the  objects returned by API calls, at least the users/show
method. Users will want to know what may be, e.g., added to their tweets
without having to generate a test tweet to find out.

2. Having the user's profile location geo-coded and returned in API
calls would be very useful now. Yeh, twitter client web-sites /
applications can do it for themselves (Mine certainly will if twitter
doesn't do it.), but may come up with different / inconsistent results.
And, trust me, it ain't as easy to get good results as it might first
appear. To maximize use and consistency, it would be great if twitter
did the geo-coding and supplied it to everyone.

3. Will twitter client web-sites / applications be able to turn the
geo-location feature on for their users, or do the users have to go to
twitter.com with a browser to do this? My concern here is that
twitter.com only supports two languages (English and Japanese) for its
UI, where my site (http://twxlate.com) supports these and over 40 more.
Unless the user is fluent in English or Japanese, they won't be able to
turn it on. I've already run into similar problems as I'm rolling out
test versions of OAuth support.

As I've written some pretty spiffy geo-coding applications for other
purposes, I plan on doing some pretty spiffy geo-coding stuff with
twxlate.com. But it needs to be usable, or users won't use it and / or
may be annoyed by it. I would hate for that to happen to what promises
to be a really neat feature.

Thanks in advance,

Jim Renkel

-Original Message-
From: twitter-development-talk@googlegroups.com
[mailto:twitter-development-t...@googlegroups.com] On Behalf Of Raffi
Krikorian
Sent: Tuesday, September 01, 2009 17:20
To: twitter-development-talk@googlegroups.com
Subject: [twitter-dev] Re: if you will be using the Geolocation API ...


> My understanding is that all tweets will contain geo-location
> information: if the information was supplied when the tweet was  
> created,
> that will be used; if no information was supplied, then the "default"
> location from the user's profile will be used.

actually - if there is no data passed in via the Geolocation API (the  
"lat" and "long" parameters on the update), then the geo object in the  
response will be empty.  the user.location is a completely separate  
entity (for now).

> 1. What if the location in a user's profile can't be geo-coded and no
> geo-location is provided when creating a tweet? I would hope that no
> geo-location is then provided in the tweet.

if a valid latitude and longitude is not provided with the tweet, then  
no geo data will be returned with the tweet.  the user, however, will  
still have his/her "location" as set in his/her settings page.

> 2. If it is possible to not have a geo-location attached to a tweet,
> e.g., because of the circumstances above, then I suggest that there  
> be a
> parameter on the status/create method that suppresses copying the
> default geo-location to the tweet.
>
> In fact it should probably be the other way around, i.e., *DO* include
> the default location, for security reasons such as those mentioned by
> Lepton. I understand this will probably (significantly) reduce the
> number of tweets that are geo-coded, but I think this is appropriate
> given the sensitivity of the geo-location: I think users should have  
> to
> "opt-in" on a tweet by tweet basis to have their tweets geo-located.

by default, every twitter account will have access geolocation API  
turned _off_.  moreover, the only way to turn it on is for the user to  
log into twitter's web site, go to his or her's settings page, and  
then toggle access on.  if a user (or an application on behalf of the  
user) attempts to send geolocated information up to twitter along with  
the tweet, and geolocation is turned off, then the tweet will go  
through, but the geolocated information will be dropped and not stored.

hope that helps!

--
Raffi Krikorian
Twitter Platform Team
ra...@twitter.com | @raffi







[twitter-dev] Re: if you will be using the Geolocation API ...

2009-09-01 Thread Jim Renkel

My understanding is that all tweets will contain geo-location
information: if the information was supplied when the tweet was created,
that will be used; if no information was supplied, then the "default"
location from the user's profile will be used.

I, too, have several comments and questions.

1. What if the location in a user's profile can't be geo-coded and no
geo-location is provided when creating a tweet? I would hope that no
geo-location is then provided in the tweet.

2. If it is possible to not have a geo-location attached to a tweet,
e.g., because of the circumstances above, then I suggest that there be a
parameter on the status/create method that suppresses copying the
default geo-location to the tweet.

In fact it should probably be the other way around, i.e., *DO* include
the default location, for security reasons such as those mentioned by
Lepton. I understand this will probably (significantly) reduce the
number of tweets that are geo-coded, but I think this is appropriate
given the sensitivity of the geo-location: I think users should have to
"opt-in" on a tweet by tweet basis to have their tweets geo-located. 

3. Will twitter be going back and geo-coding the locations given in
existing twitter accounts? If so, will it be all at once as a batch, or
the first time an old account is used to create a tweet with a
geo-location, or something else?

4. Presumably an update of an account's location will cause that new
location to be geo-coded. Will there be a delay in this, as we see with
other updates to information in twitter, or will it be instantaneous,
i.e., will the next tweet created for an account whose location is
updated be guaranteed to contain the new location's geo-code?

5. I like the idea of levels of disclosure of geo-location information,
but I don’t think this can be practically implemented.

Jim Renkel

-Original Message-
From: twitter-development-talk@googlegroups.com
[mailto:twitter-development-t...@googlegroups.com] On Behalf Of Lepton
Sent: Tuesday, September 01, 2009 08:50
To: Twitter Development Talk
Subject: [twitter-dev] Re: if you will be using the Geolocation API ...


My iPhone app ( http://myallo.com/hotlist currently waiting for Apple
approval to go into the App Store)  periodically wants to tell Twitter
the user's location. If the user is in motion, and the app is open, as
often as every 5 minutes. But it doesn't want to tweet it ("I'm here",
"Now I'm here", "Now I'm here"). That would be... bad. So I'll still
want to put it in the user profile.

There are two other things. A question and a suggestion:

Will every tweet include a location? My app is, most of the time, only
interested in seeing a friend's location and most recent last tweet.
It would be great if I could do this in one call (and greater if I
could ask about several friends at once). If a user is only putting a
location in the profile, will this location be sent along with each
tweet?

Locations have no security. It's the first, second, and third thing
every single person wants to know about my app: "Who can see me, who
can I see, what about stalkers?" PEople are very security oriented
when it comes to location, rightly so. Currently with Twitter I work
around this by having the app optionally post approximate coordinates.
But a level of security would be great, and I think necessary to make
geolocation successful and popular. For example take a look at
brightkite.com. They have three levels of people: "The public",
friends, and trusted friends. For each of those, you can set See my
exact location, see only the city I'm in, or see nothing. That's
really useful. For Twitter, it might be relatively easy to add a flag
saying Only people I follow can see my location, and/or only followers
can see my location. And/or you could have a list of users who could
see my location.



On Aug 31, 11:44 am, Raffi Krikorian  wrote:
> part of our hopes when we designed the geolocation API is that people
 
> can start putting their profile location (user.location) back to  
> something "useful" (e.g. mine could say "san francisco, ca") because  
> the specific location can be added as metadata to each tweet.
>
> what we're hoping for is that the user.location becomes something that
 
> describes the user, and not the tweet.  the geolocation API is for  
> describing the tweet.

> do you have any suggestions as to what sorts of gotcha's we should  
> look out for?




[twitter-dev] Re: api user rate limit from different ip addresses

2009-09-01 Thread Jim Renkel

If the API requests come from your server when users view your page,
then, yes, your users will be collectively limited to 150
unauthenticated GET requests per hour, unless your site is white-listed.

If your site was white-listed, it would get 20,000 unauthenticated GET
requests per hour. You also authenticate the requests using multiple
accounts and get 150 (or 20,000, if white-listed) API GET requests per
hour for each account used for authentication.

If the API requests come from your users' computers, then each will get
150 API GET requests per hour.

Hope this helps.

Jim Renkel

-Original Message-
From: twitter-development-talk@googlegroups.com
[mailto:twitter-development-t...@googlegroups.com] On Behalf Of NATO24
Sent: Tuesday, September 01, 2009 12:12
To: Twitter Development Talk
Subject: [twitter-dev] api user rate limit from different ip addresses


Sorry, I couldn't find the answer in any previous thread even though
there are hundreds.

Scenario:
I create a jQuery plugin that pulls in "my" status updates (not
authenticated using REST).  Each person viewing my page (from
different ip addresses) hits the API once every hour.

Question:
Does this mean that only 150 people can simultaniously view that page
without hitting the rate limit?  Will it be restricted by "my" account
rather than by ip?

Thanks,
Nathan



[twitter-dev] more elegant retweet solution, that also fixes replies

2009-08-30 Thread Jim Gilliam

In the same way that Twitter ditched "replies" for "mentions", they
should ditch the concept of a reply to a tweet, and instead let people
"attach" or "refer" to a specific tweet, which would then be included
along with the new tweet.

This fixes a number of different problems.

1. It handles all the situations that RT is currently being used
2. It gives people a full 140 characters to respond or add their own
commentary to another tweet.
3. Conversation threading, which is currently a total mess, is now
much more explicit and will probably even work.

Jim Gilliam
http://act.ly/
http://twitter.com/jgilliam


[twitter-dev] Re: Getting screen name from user id without rate limit

2009-08-30 Thread Jim Renkel

Would 20,000 API GET requests per hour be sufficient for your
application? If you are checking for spammers rather than being one, I
would think twitter would gladly white-list you! 

Jim Renkel

-Original Message-
From: twitter-development-talk@googlegroups.com
[mailto:twitter-development-t...@googlegroups.com] On Behalf Of Twixcel
Sent: Friday, August 28, 2009 23:55
To: Twitter Development Talk
Subject: [twitter-dev] Getting screen name from user id without rate
limit


I'm trying to develop a twitter app that checks if someone is a
spammer. I have the userid, but to get the screenname I have to call
http://twitter.com/users/show.xml?id= which causes a limit
request.  Once I have the screen name I could get the data I need
without a limit request. Does anyone know a way to get the screen name
from a user Id without incurring a rate limit charge?



[twitter-dev] Re: Search API since_id doesn't work with filter:links

2009-06-25 Thread Jim

Yes I'm seeing this also, with this query:
http://search.twitter.com/search.json?lang=en&show_user=true&rpp=100&since=2009-06-25&until=2009-06-25&q=Cloud

On Jun 24, 7:57 am, Mojosaurus  wrote:
> Hi,
>
> My script polls Twitter APIs once every 15 seconds with a query 
> likehttp://search.twitter.com/search.atom?q=video%20filter:links&rpp=100&;...
>
> Starting 2009-06-23, this API returns http 403, with the following
> error message.
> 
> since date or since_id is too old
> 
>
> Did anything change in the last 24 hours? Is this a known issue, and
> when is it expected to get fixed? Any leads would be much appreciated.
>
> --
> thanks,
> Ishwar.


[twitter-dev] Re: Search API rpp parameter

2009-05-26 Thread Jim Whimpey

Genius Chad, problem solved, thank you!

On May 27, 10:45 am, Chad Etzel  wrote:
> My guess is that you have something like
>
> curlhttp://search.twitter.com/search.json?q=hello&rpp=50
>
> That '&' in there is sneaky and will be interpreted by your shell as a
> meta-character to background the process.
>
> Try wrapping the URL in quotes and see what happens:
>
> curl "http://search.twitter.com/search.json?q=hello&rpp=50";
>
> -Chad
>
>
>
> On Tue, May 26, 2009 at 8:39 PM, Matt Sanford  wrote:
>
> > Hi Jim,
>
> >    There is no known issue but if you can provide the curl command you're
> > using we might be able to help.
>
> > Thanks;
> >  – Matt Sanford / @mzsanford
> >     Twitter Dev
>
> > On May 26, 2009, at 5:31 PM, Jim Whimpey wrote:
>
> >> The API seems to be ignoring my rpp parameter. On the website I change
> >> it in the URL and the value is respected, I copy that exact same URL
> >> into a cURL call and the parameter is ignored, I'm returned 15
> >> results, no matter what the rpp value is set to.


[twitter-dev] Re: Search API rpp parameter

2009-05-26 Thread Jim Whimpey

curl -s -x http://gatekeeper:8080 
http://search.twitter.com/search.json?q=test&rpp=2

Returns 15 results.

On May 27, 10:39 am, Matt Sanford  wrote:
> Hi Jim,
>
>      There is no known issue but if you can provide the curl command  
> you're using we might be able to help.
>
> Thanks;
>   – Matt Sanford / @mzsanford
>       Twitter Dev
>
> On May 26, 2009, at 5:31 PM, Jim Whimpey wrote:
>
>
>
>
>
> > The API seems to be ignoring my rpp parameter. On the website I change
> > it in the URL and the value is respected, I copy that exact same URL
> > into a cURL call and the parameter is ignored, I'm returned 15
> > results, no matter what the rpp value is set to.


[twitter-dev] Search API rpp parameter

2009-05-26 Thread Jim Whimpey

The API seems to be ignoring my rpp parameter. On the website I change
it in the URL and the value is respected, I copy that exact same URL
into a cURL call and the parameter is ignored, I'm returned 15
results, no matter what the rpp value is set to.


[twitter-dev] How can I automatically retweet from a list of followed accounts?

2009-03-27 Thread Jim

I'm a complete newbie, so apologies if this isn't an appropriate forum
for my question.

I would like to set up a Twitter account that automatically retweets
the tweets from a list of followed accounts.  (I hope that makes
sense.)

The idea is that a group of people chimes in on a specific topic, and
their tweets will be rebroadcast to any and all that are following the
"main" account, but there's administrative control to stop following
anyone who behaves badly.

This presupposes that the followed accounts would be dedicated, i.e.
set up solely for the purpose of twittering to the main account about
the topic.

Is this sort of thing allowed on Twitter?  Are there tools to help, or
is there a straightforward solution without tools?

Thanks for anything you've got...

Jim


Direct Message or Tweets to Group?

2008-12-27 Thread Jim

I see from the api that you can do a direct message to a person.
That's fine for one-offs, but it goes to a private box and not your
timeline.

Does anyone know of a way or what do the twitter folks think about
"group tweets". Think of the use case of a company where I want to
have us all following one another, but have the option to post to
either my public timeline, or my company timeline. Basically, it would
be adding some type of tag to every tweet behind the scenes and then
you would have multiple timelines based on the group of people you
want to share with.

I know you can have a protected profile and then invite people in, but
then you have to have multiple twitter logins for each group, and all
it takes is one person letting in an outside follower.

I'm building an API client and sure I could make a multiple direct
message functionality to direct message my group, but has anyone
considered this use case and done anything before?

Cheers!


Re: New site: The choices you made

2008-12-23 Thread Jim Barcelona

Hey, this looks neat. I selected sex/love and typed in "dinner date"
and a bunch of tweets related to that floated by in a dippity kinda
way.

But the UI doesn't *say* anything. At least for me. It doesn't speak
to me b/c the information design doesn't make a strong statement.

E.G. the query "dinner date" didn't show more dinner icons than date
icons, so I couldn't tell which was more popular.

But, you got skills. :-)

Cheers,
Barce



On Tue, Dec 23, 2008 at 3:14 PM, pattw...@gmail.com  wrote:
>
> Hi,
>
> I just wanted to share a new website I helped develop which uses
> Twitter's Search API to populate it with content. It's called "The
> Choices You Made" (http://www.thechoicesyoumade.ca).
>
> Have a look, spread the word, and please tell me what you think!
>
> Pramesh
>


Date Format: ex: "about 2 hours ago"

2008-12-22 Thread Jim

I see that the API has a format for the post date. All of the clients
and the web post friendly things like about 2 hours ago. Can anyone
provide a standard routine for converting the pure date element into
these english strings?

I would like my api client to use the same thing that the web page
uses. Can the twitter folks can share those handful of lines of code
that re-format the date into this format? I'm using a java-esque
language.

Thanks!