Alex,

Would it be possible to share an example date that works in your
environment (perhaps a test case)?
I have tried a bunch of things at my end without much success. Any
help is appreciated.

Thanks
Kris

On Wed, Oct 29, 2008 at 8:32 PM, Alex Payne <[EMAIL PROTECTED]> wrote:
>
> We're pretty sure this isn't a bug on our end.  It's come up before,
> and it's usually some client-side date formatting issue.  We've got
> solid test coverage for it, too.
>
> On Wed, Oct 29, 2008 at 8:42 AM, krishnan chakravarthi
> <[EMAIL PROTECTED]> wrote:
>>
>> Thanks for the replies.
>> I played around with Ruby 1.8.6 and date sent to Date.parse is now in
>> the correct format:
>>
>> URL string:
>> http://twitter.com/direct_messages.xml?since=Mon27Oct2008
>>
>> (No Urlencoding is needed as there are no special characters or spaces)
>>
>> Ruby Check:
>> irb(main):037:0> d8 = Date.parse("Mon27Oct2008")
>> => #<Date: 4909533/2,0,2299161>
>> irb(main):038:0> d8.ctime()
>> => "Mon Oct 27 00:00:00 2008"
>>
>> Note: It is useless providing a time (hr:min:sec) as Date class
>> ignores this and outputs date in the above format. Perhaps Twitter
>> documentation could be updated to mention this or the API can switch
>> to using Ruby DateTime class.
>>
>> I see a http code 302 (page redirect) returned from twitter. The
>> expected results should be all direct messages sent to the
>> authenticating user after Mon Oct 27.
>> It looks like Ruby is generating the correct date but the API does not
>> recognize the format?perhaps an API bug.
>>
>>
>> On 10/28/08, Alex Payne <[EMAIL PROTECTED]> wrote:
>>>
>>> Any format that Ruby 1.8.6's Date.parse method can comprehend will be 
>>> processed.
>>>
>>> On Tue, Oct 28, 2008 at 11:42 AM, krishnan chakravarthi
>>> <[EMAIL PROTECTED]> wrote:
>>> >
>>> > I changed the date format and it made no difference. I am using PHP
>>> > urlencode method as shown below:
>>> > "direct_messages.xml?since=". urlencode(stripslashes(urldecode("Mon,
>>> > 27 Oct 13:00:00 EST 2008")));
>>> > The date/time format is as specified in RFC822.
>>> >
>>> > The urlencoded string is output as: Mon%2C+27+Oct+13%3A00%3A00+EST+2008
>>> >
>>> > Note: %3A is encoding format for : (colon) symbol.
>>> > Twitter returns a 302 return code.
>>> >
>>> > Not sure why Date.parse(CGI.unescape()) mangles the date string as
>>> > urldecode/encode and cgi.escape/unescape work the same way and
>>> > Date.parse should accept RFC822 compliant dates. What Ruby version is
>>> > installed in development environment? Is there a specific format in
>>> > which API expects date/time, to work with Date.parse method.
>>> >
>>> >
>>> >
>>> >
>>> > On 10/27/08, Alex Payne <[EMAIL PROTECTED]> wrote:
>>> >>
>>> >> Your date does not appear to be properly CGI-encoded:
>>> >>
>>> >> >> Date.parse(CGI.unescape("Sun%2C+26+Oct+22%3:55%3:48+000+2008"))
>>> >> => Mon, 26 Oct 0022
>>> >>
>>> >> That's what Ruby in our development environment thinks your date is.
>>> >> Those "%3"s might be the culprit.
>>> >>
>>> >> On Mon, Oct 27, 2008 at 2:01 PM, Kris <[EMAIL PROTECTED]> wrote:
>>> >> >
>>> >> > I am aware of the example in the documentation.
>>> >> > Thanks for pointing it out and I apologize for not mentioning before
>>> >> > that I had tried the format listed in the documentation.
>>> >> >
>>> >> > For example:
>>> >> > $this->twitterHost .= "direct_messages.xml?since=Sun%2C+26+Oct
>>> >> > +22%3:55%3:48+000+2008";
>>> >> > results in error number 502 (server busy) and "Twitter is over
>>> >> > capacity" message.
>>> >> > Not sure why the API does not throw a format error?
>>> >> >
>>> >> > I saw a post (http://groups.google.com/group/twitter-development-talk/
>>> >> > browse_thread/thread/e97f02c8b8012fb5) which mentions that the API
>>> >> > conforms to RFC1123 but that does not work either.
>>> >> >
>>> >> > Any thoughts?
>>> >> >
>>> >> > Thanks
>>> >> >
>>> >> > On Oct 27, 4:35 pm, "Damon Clinkscales" <[EMAIL PROTECTED]> wrote:
>>> >> >> On Mon, Oct 27, 2008 at 1:48 PM, Kris <[EMAIL PROTECTED]> wrote:
>>> >> >>
>>> >> >> > The API documentation does not clearly list the date format for
>>> >> >> > obtaining direct_messages sent to a user (within the specified date/
>>> >> >> > time window).
>>> >> >> > I am using RFC 1123/822 format but do not get any messages sent with
>>> >> >> > in the specified date/time window:
>>> >> >>
>>> >> >> > For Example:
>>> >> >>
>>> >> >> > direct_messages.xml?since=".urlencode("Sun, 26 Oct 2008 22:00:00 
>>> >> >> > EST")
>>> >> >>
>>> >> >> > (does not return any messages or errors.)
>>> >> >>
>>> >> >> > What is the correct date/time format? Has anyone used this
>>> >> >> > successfully?
>>> >> >>
>>> >> >> > Thanks
>>> >> >>
>>> >> >> Personally, I use since_id.
>>> >> >>
>>> >> >> But here's the 
>>> >> >> documentation:http://apiwiki.twitter.com/REST+API+Documentation#DirectMessageMethods
>>> >> >>
>>> >> >> which contains this example:
>>> >> >>
>>> >> >> # since.  Optional.  Narrows the resulting list of direct messages to
>>> >> >> just those sent after the specified HTTP-formatted date, up to 24
>>> >> >> hours old.  The same behavior is available by setting the
>>> >> >> If-Modified-Since parameter in your HTTP request.
>>> >> >>
>>> >> >> Ex:http://twitter.com/direct_messages/sent.xml?since=Tue%2C+27+Mar+2007+...
>>> >> >>
>>> >> >> -damon
>>> >> >>
>>> >> >> --http://twitter.com/damon- Hide quoted text -
>>> >> >>
>>> >> >> - Show quoted text -
>>> >> >
>>> >>
>>> >>
>>> >>
>>> >> --
>>> >> Alex Payne - API Lead, Twitter, Inc.
>>> >> http://twitter.com/al3x
>>> >>
>>> >
>>>
>>>
>>>
>>> --
>>> Alex Payne - API Lead, Twitter, Inc.
>>> http://twitter.com/al3x
>>>
>>
>
>
>
> --
> Alex Payne - API Lead, Twitter, Inc.
> http://twitter.com/al3x
>

Reply via email to