metajack / strophejs

The Strophe.js repository has moved to https://github.com/strophe/strophejs
http://strophe.im/strophejs
MIT License
810 stars 161 forks source link

FF4 Attach Generates Duplicate Requests #50

Open CharlieDigital opened 13 years ago

CharlieDigital commented 13 years ago

When using the attach() call in Strophe against Openfire 3.7.0, all works as designed in IE8/9. In FF4, duplicate requests are sent to the server with the same RID, causing a policy violation.

The sequence of events works like this:

1) User refreshes the page and the onbeforeunload event is trapped and handled 2) Session information is stored to cookies 3) A presence type="unavailable" is sent to the MUC 4) Page reloads and attempts to attach() to the session using the cookies 5) In FF4, this results in a policy violation when two duplicate RIDs are sent on the attach.

The trace from Fiddler is attached below. In both traces, the first reqeust/response pair is the presence type="unavailable" on the onbeforeunload.

The issue starts one the page loads again and the attach is attempted with RID: 1132070775 in the FF4 sequence.

This is the Fiddler trace in FF4:

POST http://gametime.dev.com/http-bind/ HTTP/1.1
Host: gametime.dev.com
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:2.0.1) Gecko/20100101 Firefox/4.0.1
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-us,en;q=0.5
Accept-Encoding: gzip, deflate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive: 115
Connection: keep-alive
Referer: http://gametime.dev.com/GameTimePages/GameTimeHuddle.aspx?List=3b9551da%2D46ed%2D4357%2Db93e%2Dfa55155366b1&ID=9&Source=http%3A%2F%2Fgametime%2Edev%2Ecom%2FLists%2FGameTimeHuddles%2FAllItems%2Easpx&ContentTypeId=0x01002167C00000000000000000000000000200D799BB01255FD045A12E56621F1F57C3
Content-Length: 199
Content-Type: text/plain; charset=UTF-8
Cookie: WSS_KeepSessionAuthenticated={4eb5a3d5-4cf9-4f1d-8fd0-42e8939c29a8}; Ribbon.DocLibListForm.Edit=750500|-1|497|-1474418945
Pragma: no-cache, no-cache, no-cache
Cache-Control: no-cache, no-cache, no-cache

<body rid='1132070774' xmlns='http://jabber.org/protocol/httpbind' sid='336bd0b0'><presence type='unavailable' to='3b9551da46ed4357b93efa55155366b1-9@conference.scooby' xmlns='jabber:client'/></body>

HTTP/1.1 200 OK
Content-Type: text/xml;charset=UTF-8
Vary: Accept-Encoding
Server: Microsoft-IIS/7.5
SPRequestGuid: 877d2fc4-b1f7-40d0-9152-00699e4033a8
Set-Cookie: WSS_KeepSessionAuthenticated={4eb5a3d5-4cf9-4f1d-8fd0-42e8939c29a8}; path=/
X-SharePointHealthScore: 3
Persistent-Auth: true
X-Powered-By: ASP.NET
MicrosoftSharePointTeamServices: 14.0.0.5130
Date: Tue, 10 May 2011 17:16:39 GMT
Content-Length: 350

<body xmlns='http://jabber.org/protocol/httpbind'><presence xmlns="jabber:client" to="charles@scooby/charles" from="3b9551da46ed4357b93efa55155366b1-9@conference.scooby/charles" type="unavailable"><show>away</show><x xmlns="http://jabber.org/protocol/muc#user"><item jid="charles@scooby/charles" affiliation="none" role="none"/></x></presence></body>

------------------------------------------------------------------

POST http://gametime.dev.com/http-bind/ HTTP/1.1
Host: gametime.dev.com
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:2.0.1) Gecko/20100101 Firefox/4.0.1
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-us,en;q=0.5
Accept-Encoding: gzip, deflate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive: 115
Connection: keep-alive
Referer: http://gametime.dev.com/GameTimePages/GameTimeHuddle.aspx?List=3b9551da%2D46ed%2D4357%2Db93e%2Dfa55155366b1&ID=9&Source=http%3A%2F%2Fgametime%2Edev%2Ecom%2FLists%2FGameTimeHuddles%2FAllItems%2Easpx&ContentTypeId=0x01002167C00000000000000000000000000200D799BB01255FD045A12E56621F1F57C3
Content-Length: 83
Content-Type: text/plain; charset=UTF-8
Cookie: WSS_KeepSessionAuthenticated={4eb5a3d5-4cf9-4f1d-8fd0-42e8939c29a8}; Ribbon.DocLibListForm.Edit=750500|-1|497|-1474418945
Pragma: no-cache, no-cache, no-cache
Cache-Control: no-cache, no-cache, no-cache

<body rid='1132070775' xmlns='http://jabber.org/protocol/httpbind' sid='336bd0b0'/>

HTTP/1.1 200 OK
Content-Type: text/xml;charset=UTF-8
Vary: Accept-Encoding
Server: Microsoft-IIS/7.5
SPRequestGuid: 99afb16e-65c5-4d3f-bb1e-a61d682483b2
Set-Cookie: WSS_KeepSessionAuthenticated={4eb5a3d5-4cf9-4f1d-8fd0-42e8939c29a8}; path=/
X-SharePointHealthScore: 3
Persistent-Auth: true
X-Powered-By: ASP.NET
MicrosoftSharePointTeamServices: 14.0.0.5130
Date: Tue, 10 May 2011 17:17:40 GMT
Content-Length: 57

<body xmlns="http://jabber.org/protocol/httpbind"></body>

------------------------------------------------------------------

POST http://gametime.dev.com/http-bind/ HTTP/1.1
Host: gametime.dev.com
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:2.0.1) Gecko/20100101 Firefox/4.0.1
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-us,en;q=0.5
Accept-Encoding: gzip, deflate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive: 115
Connection: keep-alive
Referer: http://gametime.dev.com/GameTimePages/GameTimeHuddle.aspx?List=3b9551da%2D46ed%2D4357%2Db93e%2Dfa55155366b1&ID=9&Source=http%3A%2F%2Fgametime%2Edev%2Ecom%2FLists%2FGameTimeHuddles%2FAllItems%2Easpx&ContentTypeId=0x01002167C00000000000000000000000000200D799BB01255FD045A12E56621F1F57C3
Content-Length: 83
Content-Type: text/plain; charset=UTF-8
Cookie: WSS_KeepSessionAuthenticated={4eb5a3d5-4cf9-4f1d-8fd0-42e8939c29a8}; Ribbon.DocLibListForm.Edit=750500|-1|497|-1474418945
Pragma: no-cache
Cache-Control: no-cache

<body rid='1132070775' xmlns='http://jabber.org/protocol/httpbind' sid='336bd0b0'/>

HTTP/1.1 200 OK
Content-Type: text/xml;charset=UTF-8
Vary: Accept-Encoding
Server: Microsoft-IIS/7.5
SPRequestGuid: ac627294-ae2e-4d1a-91a6-b756fc8a0878
Set-Cookie: WSS_KeepSessionAuthenticated={4eb5a3d5-4cf9-4f1d-8fd0-42e8939c29a8}; path=/
X-SharePointHealthScore: 3
X-Powered-By: ASP.NET
MicrosoftSharePointTeamServices: 14.0.0.5130
Date: Tue, 10 May 2011 17:16:41 GMT
Content-Length: 103

<body xmlns="http://jabber.org/protocol/httpbind" type="terminate" condition="policy-violation"></body>

And the Fiddler trace for the same sequence in IE9

POST http://gametime.dev.com/http-bind/ HTTP/1.1
Accept: */*
Accept-Language: en-us
Referer: http://gametime.dev.com/GameTimePages/GameTimeHuddle.aspx?List=3b9551da%2D46ed%2D4357%2Db93e%2Dfa55155366b1&ID=9&Source=http%3A%2F%2Fgametime%2Edev%2Ecom%2FLists%2FGameTimeHuddles%2FAllItems%2Easpx&ContentTypeId=0x01002167C00000000000000000000000000200D799BB01255FD045A12E56621F1F57C3
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0)
Host: gametime.dev.com
Content-Length: 195
Connection: Keep-Alive
Pragma: no-cache
Cookie: WSS_KeepSessionAuthenticated={4eb5a3d5-4cf9-4f1d-8fd0-42e8939c29a8}

<body rid='103763' xmlns='http://jabber.org/protocol/httpbind' sid='7ceecff0'><presence type='unavailable' to='3b9551da46ed4357b93efa55155366b1-9@conference.scooby' xmlns='jabber:client'/></body>

HTTP/1.1 200 OK
Content-Type: text/xml;charset=UTF-8
Vary: Accept-Encoding
Server: Microsoft-IIS/7.5
SPRequestGuid: f0a999e9-876b-4815-9be9-094163cd034b
Set-Cookie: WSS_KeepSessionAuthenticated={4eb5a3d5-4cf9-4f1d-8fd0-42e8939c29a8}; path=/
X-SharePointHealthScore: 3
Persistent-Auth: true
X-Powered-By: ASP.NET
MicrosoftSharePointTeamServices: 14.0.0.5130
Date: Tue, 10 May 2011 17:19:52 GMT
Content-Length: 389

<body xmlns='http://jabber.org/protocol/httpbind'><presence xmlns="jabber:client" to="charles@scooby/LoginAssistant" from="3b9551da46ed4357b93efa55155366b1-9@conference.scooby/charles" type="unavailable"><x xmlns="http://jaber.org/protocol/muc"/><x xmlns="http://jabber.org/protocol/muc#user"><item jid="charles@scooby/LoginAssistant" affiliation="none" role="none"/></x></presence></body>

------------------------------------------------------------------

POST http://gametime.dev.com/http-bind/ HTTP/1.1
Accept: */*
Accept-Language: en-us
Referer: http://gametime.dev.com/GameTimePages/GameTimeHuddle.aspx?List=3b9551da%2D46ed%2D4357%2Db93e%2Dfa55155366b1&ID=9&Source=http%3A%2F%2Fgametime%2Edev%2Ecom%2FLists%2FGameTimeHuddles%2FAllItems%2Easpx&ContentTypeId=0x01002167C00000000000000000000000000200D799BB01255FD045A12E56621F1F57C3
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0)
Host: gametime.dev.com
Content-Length: 79
Connection: Keep-Alive
Pragma: no-cache
Cookie: WSS_KeepSessionAuthenticated={4eb5a3d5-4cf9-4f1d-8fd0-42e8939c29a8}

<body rid='103764' xmlns='http://jabber.org/protocol/httpbind' sid='7ceecff0'/>

HTTP/1.1 200 OK
Content-Type: text/xml;charset=UTF-8
Vary: Accept-Encoding
Server: Microsoft-IIS/7.5
SPRequestGuid: a956db8f-2e5d-4a8c-a15a-264cebdfd108
Set-Cookie: WSS_KeepSessionAuthenticated={4eb5a3d5-4cf9-4f1d-8fd0-42e8939c29a8}; path=/
X-SharePointHealthScore: 3
X-Powered-By: ASP.NET
MicrosoftSharePointTeamServices: 14.0.0.5130
Date: Tue, 10 May 2011 17:19:55 GMT
Content-Length: 70

<body xmlns="http://jabber.org/protocol/httpbind" ack="103765"></body>

------------------------------------------------------------------

POST http://gametime.dev.com/http-bind/ HTTP/1.1
Accept: */*
Accept-Language: en-us
Referer: http://gametime.dev.com/GameTimePages/GameTimeHuddle.aspx?List=3b9551da%2D46ed%2D4357%2Db93e%2Dfa55155366b1&ID=9&Source=http%3A%2F%2Fgametime%2Edev%2Ecom%2FLists%2FGameTimeHuddles%2FAllItems%2Easpx&ContentTypeId=0x01002167C00000000000000000000000000200D799BB01255FD045A12E56621F1F57C3
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0)
Host: gametime.dev.com
Content-Length: 269
Connection: Keep-Alive
Pragma: no-cache
Cookie: WSS_KeepSessionAuthenticated={4eb5a3d5-4cf9-4f1d-8fd0-42e8939c29a8}

<body rid='103765' xmlns='http://jabber.org/protocol/httpbind' sid='7ceecff0'><presence xmlns='jabber:client'/><presence to='3b9551da46ed4357b93efa55155366b1-9@conference.scooby/charles' xmlns='jabber:client'><x xmlns='http://jaber.org/protocol/muc'/></presence></body>

HTTP/1.1 200 OK
Content-Type: text/xml;charset=UTF-8
Vary: Accept-Encoding
Server: Microsoft-IIS/7.5
SPRequestGuid: 3a86922d-d09b-4b61-bb4b-05eb75b1c2f4
Set-Cookie: WSS_KeepSessionAuthenticated={4eb5a3d5-4cf9-4f1d-8fd0-42e8939c29a8}; path=/
X-SharePointHealthScore: 3
X-Powered-By: ASP.NET
MicrosoftSharePointTeamServices: 14.0.0.5130
Date: Tue, 10 May 2011 17:19:55 GMT
Content-Length: 377

<body xmlns='http://jabber.org/protocol/httpbind'><presence xmlns="jabber:client" to="charles@scooby/LoginAssistant" from="3b9551da46ed4357b93efa55155366b1-9@conference.scooby/charles"><x xmlns="http://jaber.org/protocol/muc"/><x xmlns="http://jabber.org/protocol/muc#user"><item jid="charles@scooby/LoginAssistant" affiliation="none" role="participant"/></x></presence></body>
CharlieDigital commented 13 years ago

And for good measure, something similar happens in Chrome (although the order of the duplicate message is different):

POST http://gametime.dev.com/http-bind/ HTTP/1.1
Host: gametime.dev.com
Connection: keep-alive
Referer: http://gametime.dev.com/GameTimePages/GameTimeHuddle.aspx?List=3b9551da%2D46ed%2D4357%2Db93e%2Dfa55155366b1&ID=9&Source=http%3A%2F%2Fgametime%2Edev%2Ecom%2FLists%2FGameTimeHuddles%2FAllItems%2Easpx&ContentTypeId=0x01002167C00000000000000000000000000200D799BB01255FD045A12E56621F1F57C3
Content-Length: 81
Origin: http://gametime.dev.com
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/534.24 (KHTML, like Gecko) Chrome/11.0.696.65 Safari/534.24
Content-Type: application/xml
Accept: */*
Accept-Encoding: gzip,deflate,sdch
Accept-Language: en-US,en;q=0.8
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3
Cookie: WSS_KeepSessionAuthenticated={4eb5a3d5-4cf9-4f1d-8fd0-42e8939c29a8}

<body rid='229107838' xmlns='http://jabber.org/protocol/httpbind' sid='d3df061'/>

HTTP/1.1 200 OK
Content-Type: text/xml;charset=UTF-8
Vary: Accept-Encoding
Server: Microsoft-IIS/7.5
SPRequestGuid: 1873938b-e742-4e9e-83e7-4fda7ea20698
Set-Cookie: WSS_KeepSessionAuthenticated={4eb5a3d5-4cf9-4f1d-8fd0-42e8939c29a8}; path=/
X-SharePointHealthScore: 3
X-Powered-By: ASP.NET
MicrosoftSharePointTeamServices: 14.0.0.5130
Date: Tue, 10 May 2011 20:46:43 GMT
Content-Length: 25515

<body xmlns='http://jabber.org/protocol/httpbind'><message xmlns="jabber:client" type="groupchat" from="3b9551da46ed4357b93efa55155366b1-9@conference.scooby" to="charles@scooby/charles"><body>This room is not anonymous.</body><x xmlns="http://jabber.org/protocol/muc#user"><status code="100"/></x></message><message xmlns="jabber:client" type="groupchat" from="3b9551da46ed4357b93efa55155366b1-9@conference.scooby/AdminServiceClient" to="charles@scooby/charles"><body>{"Type":"TaskUpdatedNotification","Metadata":{"ChangedFields":[{"StaticName":"Current_Owner","DisplayName":"Current Owner","PreviousValue":"","NewValue":"2;#Charles Chen,#DEV\\charles,#,#,#Charles Chen"}],"HuddleListId":"3b9551da-46ed-4357-b93e-fa55155366b1","HuddleItemId":9,"ItemListUrl":"Lists/Huddle/Tasks/9","ItemId":4,"UserLogin":"DEV\\charles","UserDisplay":"Charles Chen","Date":"May 09, 2011 14:38:51","Title":"Chuck Test\n","RoomIdString":"3b9551da46ed4357b93efa55155366b1-9"},"Body":"The Huddle item \"\u003ca href=\u0027http://gametime.dev.com/Lists/Huddle/Tasks/9/DispForm.aspx?ID=4\u0027 class=\u0027chat-link task-link\u0027\u003eChuck Test\n\u003c/a\u003e\" was updated."}</body><delay xmlns="urn:xmpp:delay" stamp="2011-05-09T18:38:51.703Z" from="gtconnect.scooby"/><x xmlns="jabber:x:delay" stamp="20110509T18:38:51" from="gtconnect.scooby"/></message><message xmlns="jabber:client" type="groupchat" from="3b9551da46ed4357b93efa55155366b1-9@conference.scooby/AdminServiceClient" to="charles@scooby/charles"><body>{"Type":"TaskUpdatedNotification","Metadata":{"ChangedFields":[{"StaticName":"Current_Owner","DisplayName":"Current Owner","PreviousValue":"2;#Charles Chen,#DEV\\charles,#,#,#Charles Chen","NewValue":"none"}],"HuddleListId":"3b9551da-46ed-4357-b93e-fa55155366b1","HuddleItemId":9,"ItemListUrl":"Lists/Huddle/Tasks/9","ItemId":1,"UserLogin":"DEV\\charles","UserDisplay":"Charles Chen","Date":"May 09, 2011 14:38:52","Title":"Task 1","RoomIdString":"3b9551da46ed4357b93efa55155366b1-9"},"Body":"The Huddle item \"\u003ca href=\u0027http://gametime.dev.com/Lists/Huddle/Tasks/9/DispForm.aspx?ID=1\u0027 class=\u0027chat-link task-link\u0027\u003eTask 1\u003c/a\u003e\" was updated."}</body><delay xmlns="urn:xmpp:delay" stamp="2011-05-09T18:38:52.791Z" from="gtconnect.scooby"/><x xmlns="jabber:x:delay" stamp="20110509T18:38:52" from="gtconnect.scooby"/></message><message xmlns="jabber:client" type="groupchat" from="3b9551da46ed4357b93efa55155366b1-9@conference.scooby/AdminServiceClient" to="charles@scooby/charles"><body>{"Type":"TaskUpdatedNotification","Metadata":{"ChangedFields":[{"StaticName":"Current_Owner","DisplayName":"Current Owner","PreviousValue":"","NewValue":"2;#Charles Chen,#DEV\\charles,#,#,#Charles Chen"}],"HuddleListId":"3b9551da-46ed-4357-b93e-fa55155366b1","HuddleItemId":9,"ItemListUrl":"Lists/Huddle/Tasks/9","ItemId":1,"UserLogin":"DEV\\charles","UserDisplay":"Charles Chen","Date":"May 09, 2011 14:39:00","Title":"Task 1","RoomIdString":"3b9551da46ed4357b93efa55155366b1-9"},"Body":"The Huddle item \"\u003ca href=\u0027http://gametime.dev.com/Lists/Huddle/Tasks/9/DispForm.aspx?ID=1\u0027 class=\u0027chat-link task-link\u0027\u003eTask 1\u003c/a\u003e\" was updated."}</body><delay xmlns="urn:xmpp:delay" stamp="2011-05-09T18:39:00.887Z" from="gtconnect.scooby"/><x xmlns="jabber:x:delay" stamp="20110509T18:39:00" from="gtconnect.scooby"/></message><message xmlns="jabber:client" type="groupchat" from="3b9551da46ed4357b93efa55155366b1-9@conference.scooby/AdminServiceClient" to="charles@scooby/charles"><body>{"Type":"TaskUpdatedNotification","Metadata":{"ChangedFields":[{"StaticName":"Current_Owner","DisplayName":"Current Owner","PreviousValue":"2;#Charles Chen,#DEV\\charles,#,#,#Charles Chen","NewValue":"none"}],"HuddleListId":"3b9551da-46ed-4357-b93e-fa55155366b1","HuddleItemId":9,"ItemListUrl":"Lists/Huddle/Tasks/9","ItemId":4,"UserLogin":"DEV\\charles","UserDisplay":"Charles Chen","Date":"May 09, 2011 14:39:02","Title":"Chuck Test\n","RoomIdString":"3b9551da46ed4357b93efa55155366b1-9"},"Body":"The Huddle item \"\u003ca href=\u0027http://gametime.dev.com/Lists/Huddle/Tasks/9/DispForm.aspx?ID=4\u0027 class=\u0027chat-link task-link\u0027\u003eChuck Test\n\u003c/a\u003e\" was updated."}</body><delay xmlns="urn:xmpp:delay" stamp="2011-05-09T18:39:02.087Z" from="gtconnect.scooby"/><x xmlns="jabber:x:delay" stamp="20110509T18:39:02" from="gtconnect.scooby"/></message><message xmlns="jabber:client" type="groupchat" from="3b9551da46ed4357b93efa55155366b1-9@conference.scooby/AdminServiceClient" to="charles@scooby/charles"><body>{"Type":"TaskUpdatedNotification","Metadata":{"ChangedFields":[{"StaticName":"Current_Owner","DisplayName":"Current Owner","PreviousValue":"","NewValue":"2;#Charles Chen,#DEV\\charles,#,#,#Charles Chen"}],"HuddleListId":"3b9551da-46ed-4357-b93e-fa55155366b1","HuddleItemId":9,"ItemListUrl":"Lists/Huddle/Tasks/9","ItemId":4,"UserLogin":"DEV\\charles","UserDisplay":"Charles Chen","Date":"May 09, 2011 14:42:20","Title":"Chuck Test\n","RoomIdString":"3b9551da46ed4357b93efa55155366b1-9"},"Body":"The Huddle item \"\u003ca href=\u0027http://gametime.dev.com/Lists/Huddle/Tasks/9/DispForm.aspx?ID=4\u0027 class=\u0027chat-link task-link\u0027\u003eChuck Test\n\u003c/a\u003e\" was updated."}</body><delay xmlns="urn:xmpp:delay" stamp="2011-05-09T18:42:20.730Z" from="gtconnect.scooby"/><x xmlns="jabber:x:delay" stamp="20110509T18:42:20" from="gtconnect.scooby"/></message><message xmlns="jabber:client" type="groupchat" from="3b9551da46ed4357b93efa55155366b1-9@conference.scooby/AdminServiceClient" to="charles@scooby/charles"><body>{"Type":"TaskUpdatedNotification","Metadata":{"ChangedFields":[{"StaticName":"Current_Owner","DisplayName":"Current Owner","PreviousValue":"2;#Charles Chen,#DEV\\charles,#,#,#Charles Chen","NewValue":"none"}],"HuddleListId":"3b9551da-46ed-4357-b93e-fa55155366b1","HuddleItemId":9,"ItemListUrl":"Lists/Huddle/Tasks/9","ItemId":1,"UserLogin":"DEV\\charles","UserDisplay":"Charles Chen","Date":"May 09, 2011 14:42:21","Title":"Task 1","RoomIdString":"3b9551da46ed4357b93efa55155366b1-9"},"Body":"The Huddle item \"\u003ca href=\u0027http://gametime.dev.com/Lists/Huddle/Tasks/9/DispForm.aspx?ID=1\u0027 class=\u0027chat-link task-link\u0027\u003eTask 1\u003c/a\u003e\" was updated."}</body><delay xmlns="urn:xmpp:delay" stamp="2011-05-09T18:42:21.860Z" from="gtconnect.scooby"/><x xmlns="jabber:x:delay" stamp="20110509T18:42:21" from="gtconnect.scooby"/></message><message xmlns="jabber:client" type="groupchat" from="3b9551da46ed4357b93efa55155366b1-9@conference.scooby/AdminServiceClient" to="charles@scooby/charles"><body>{"Type":"TaskUpdatedNotification","Metadata":{"ChangedFields":[{"StaticName":"Current_Owner","DisplayName":"Current Owner","PreviousValue":"2;#Charles Chen,#DEV\\charles,#,#,#Charles Chen","NewValue":"none"}],"HuddleListId":"3b9551da-46ed-4357-b93e-fa55155366b1","HuddleItemId":9,"ItemListUrl":"Lists/Huddle/Tasks/9","ItemId":4,"UserLogin":"DEV\\charles","UserDisplay":"Charles Chen","Date":"May 09, 2011 14:51:25","Title":"Chuck Test\n","RoomIdString":"3b9551da46ed4357b93efa55155366b1-9"},"Body":"The Huddle item \"\u003ca href=\u0027http://gametime.dev.com/Lists/Huddle/Tasks/9/DispForm.aspx?ID=4\u0027 class=\u0027chat-link task-link\u0027\u003eChuck Test\n\u003c/a\u003e\" was updated."}</body><delay xmlns="urn:xmpp:delay" stamp="2011-05-09T18:51:25.577Z" from="gtconnect.scooby"/><x xmlns="jabber:x:delay" stamp="20110509T18:51:25" from="gtconnect.scooby"/></message><message xmlns="jabber:client" type="groupchat" from="3b9551da46ed4357b93efa55155366b1-9@conference.scooby/AdminServiceClient" to="charles@scooby/charles"><body>{"Type":"TaskUpdatedNotification","Metadata":{"ChangedFields":[{"StaticName":"Current_Owner","DisplayName":"Current Owner","PreviousValue":"","NewValue":"2;#Charles Chen,#DEV\\charles,#,#,#Charles Chen"}],"HuddleListId":"3b9551da-46ed-4357-b93e-fa55155366b1","HuddleItemId":9,"ItemListUrl":"Lists/Huddle/Tasks/9","ItemId":1,"UserLogin":"DEV\\charles","UserDisplay":"Charles Chen","Date":"May 09, 2011 14:51:33","Title":"Task 1","RoomIdString":"3b9551da46ed4357b93efa55155366b1-9"},"Body":"The Huddle item \"\u003ca href=\u0027http://gametime.dev.com/Lists/Huddle/Tasks/9/DispForm.aspx?ID=1\u0027 class=\u0027chat-link task-link\u0027\u003eTask 1\u003c/a\u003e\" was updated."}</body><delay xmlns="urn:xmpp:delay" stamp="2011-05-09T18:51:33.115Z" from="gtconnect.scooby"/><x xmlns="jabber:x:delay" stamp="20110509T18:51:33" from="gtconnect.scooby"/></message><message xmlns="jabber:client" type="groupchat" from="3b9551da46ed4357b93efa55155366b1-9@conference.scooby/AdminServiceClient" to="charles@scooby/charles"><body>{"Type":"TaskAddedNotification","Metadata":{"Message":"The Huddle item \"\u003ca href=\u0027http://gametime.dev.com/Lists/Huddle/Tasks/9/DispForm.aspx?ID=6\u0027 class=\u0027chat-link task-link\u0027\u003eTest Low\u003c/a\u003e\" was added.","HuddleListId":"3b9551da-46ed-4357-b93e-fa55155366b1","HuddleItemId":9,"ItemListUrl":"Lists/Huddle/Tasks/9","ItemId":6,"UserLogin":"DEV\\charles","UserDisplay":"Charles Chen","Date":"May 09, 2011 15:03:23","Title":"Test Low","RoomIdString":"3b9551da46ed4357b93efa55155366b1-9"},"Body":"The Huddle item \"\u003ca href=\u0027http://gametime.dev.com/Lists/Huddle/Tasks/9/DispForm.aspx?ID=6\u0027 class=\u0027chat-link task-link\u0027\u003eTest Low\u003c/a\u003e\" was added."}</body><delay xmlns="urn:xmpp:delay" stamp="2011-05-09T19:03:24.350Z" from="gtconnect.scooby"/><x xmlns="jabber:x:delay" stamp="20110509T19:03:24" from="gtconnect.scooby"/></message><message xmlns="jabber:client" type="groupchat" from="3b9551da46ed4357b93efa55155366b1-9@conference.scooby/AdminServiceClient" to="charles@scooby/charles"><body>{"Type":"TaskUpdatedNotification","Metadata":{"ChangedFields":[{"StaticName":"Estimated_Effort","DisplayName":"Estimated Effort","PreviousValue":"1","NewValue":"17"},{"StaticName":"Completed_Effort","DisplayName":"Completed Effort","PreviousValue":"0","NewValue":"2"},{"StaticName":"Calculated_Completion","DisplayName":"% Complete","PreviousValue":"float;#0","NewValue":"float;#0.117647058823529"}],"HuddleListId":"3b9551da-46ed-4357-b93e-fa55155366b1","HuddleItemId":9,"ItemListUrl":"Lists/Huddle/Tasks/9","ItemId":6,"UserLogin":"DEV\\charles","UserDisplay":"Charles Chen","Date":"May 09, 2011 15:04:49","Title":"Test Low","RoomIdString":"3b9551da46ed4357b93efa55155366b1-9"},"Body":"The Huddle item \"\u003ca href=\u0027http://gametime.dev.com/Lists/Huddle/Tasks/9/DispForm.aspx?ID=6\u0027 class=\u0027chat-link task-link\u0027\u003eTest Low\u003c/a\u003e\" was updated."}</body><delay xmlns="urn:xmpp:delay" stamp="2011-05-09T19:04:49.438Z" from="gtconnect.scooby"/><x xmlns="jabber:x:delay" stamp="20110509T19:04:49" from="gtconnect.scooby"/></message><message xmlns="jabber:client" type="groupchat" from="3b9551da46ed4357b93efa55155366b1-9@conference.scooby/AdminServiceClient" to="charles@scooby/charles"><body>{"Type":"TaskUpdatedNotification","Metadata":{"ChangedFields":[{"StaticName":"Completed_Effort","DisplayName":"Completed Effort","PreviousValue":"8","NewValue":"0"},{"StaticName":"Calculated_Completion","DisplayName":"% Complete","PreviousValue":"float;#0.615384615384615","NewValue":"float;#0"}],"HuddleListId":"3b9551da-46ed-4357-b93e-fa55155366b1","HuddleItemId":9,"ItemListUrl":"Lists/Huddle/Tasks/9","ItemId":4,"UserLogin":"DEV\\charles","UserDisplay":"Charles Chen","Date":"May 09, 2011 15:16:15","Title":"Chuck Test\n","RoomIdString":"3b9551da46ed4357b93efa55155366b1-9"},"Body":"The Huddle item \"\u003ca href=\u0027http://gametime.dev.com/Lists/Huddle/Tasks/9/DispForm.aspx?ID=4\u0027 class=\u0027chat-link task-link\u0027\u003eChuck Test\n\u003c/a\u003e\" was updated."}</body><delay xmlns="urn:xmpp:delay" stamp="2011-05-09T19:16:15.098Z" from="gtconnect.scooby"/><x xmlns="jabber:x:delay" stamp="20110509T19:16:15" from="gtconnect.scooby"/></message><message xmlns="jabber:client" type="groupchat" from="3b9551da46ed4357b93efa55155366b1-9@conference.scooby/AdminServiceClient" to="charles@scooby/charles"><body>{"Type":"TaskUpdatedNotification","Metadata":{"ChangedFields":[{"StaticName":"Title","DisplayName":"Title","PreviousValue":"Chuck Test\n","NewValue":"Chuck Test"},{"StaticName":"Completed_Effort","DisplayName":"Completed Effort","PreviousValue":"0","NewValue":"12"},{"StaticName":"Calculated_Completion","DisplayName":"% Complete","PreviousValue":"float;#0","NewValue":"float;#0.923076923076923"}],"HuddleListId":"3b9551da-46ed-4357-b93e-fa55155366b1","HuddleItemId":9,"ItemListUrl":"Lists/Huddle/Tasks/9","ItemId":4,"UserLogin":"DEV\\charles","UserDisplay":"Charles Chen","Date":"May 09, 2011 15:28:17","Title":"Chuck Test","RoomIdString":"3b9551da46ed4357b93efa55155366b1-9"},"Body":"The Huddle item \"\u003ca href=\u0027http://gametime.dev.com/Lists/Huddle/Tasks/9/DispForm.aspx?ID=4\u0027 class=\u0027chat-link task-link\u0027\u003eChuck Test\u003c/a\u003e\" was updated."}</body><delay xmlns="urn:xmpp:delay" stamp="2011-05-09T19:28:17.270Z" from="gtconnect.scooby"/><x xmlns="jabber:x:delay" stamp="20110509T19:28:17" from="gtconnect.scooby"/></message><message xmlns="jabber:client" type="groupchat" from="3b9551da46ed4357b93efa55155366b1-9@conference.scooby/AdminServiceClient" to="charles@scooby/charles"><body>{"Type":"TaskUpdatedNotification","Metadata":{"ChangedFields":[{"StaticName":"Current_Owner","DisplayName":"Current Owner","PreviousValue":"","NewValue":"2;#Charles Chen,#DEV\\charles,#,#,#Charles Chen"}],"HuddleListId":"3b9551da-46ed-4357-b93e-fa55155366b1","HuddleItemId":9,"ItemListUrl":"Lists/Huddle/Tasks/9","ItemId":6,"UserLogin":"DEV\\charles","UserDisplay":"Charles Chen","Date":"May 09, 2011 15:36:17","Title":"Test Low","RoomIdString":"3b9551da46ed4357b93efa55155366b1-9"},"Body":"The Huddle item \"\u003ca href=\u0027http://gametime.dev.com/Lists/Huddle/Tasks/9/DispForm.aspx?ID=6\u0027 class=\u0027chat-link task-link\u0027\u003eTest Low\u003c/a\u003e\" was updated."}</body><delay xmlns="urn:xmpp:delay" stamp="2011-05-09T19:36:17.370Z" from="gtconnect.scooby"/><x xmlns="jabber:x:delay" stamp="20110509T19:36:17" from="gtconnect.scooby"/></message><message xmlns="jabber:client" type="groupchat" from="3b9551da46ed4357b93efa55155366b1-9@conference.scooby/AdminServiceClient" to="charles@scooby/charles"><body>{"Type":"TaskUpdatedNotification","Metadata":{"ChangedFields":[{"StaticName":"Current_Owner","DisplayName":"Current Owner","PreviousValue":"2;#Charles Chen,#DEV\\charles,#,#,#Charles Chen","NewValue":"none"}],"HuddleListId":"3b9551da-46ed-4357-b93e-fa55155366b1","HuddleItemId":9,"ItemListUrl":"Lists/Huddle/Tasks/9","ItemId":1,"UserLogin":"DEV\\charles","UserDisplay":"Charles Chen","Date":"May 09, 2011 15:36:18","Title":"Task 1","RoomIdString":"3b9551da46ed4357b93efa55155366b1-9"},"Body":"The Huddle item \"\u003ca href=\u0027http://gametime.dev.com/Lists/Huddle/Tasks/9/DispForm.aspx?ID=1\u0027 class=\u0027chat-link task-link\u0027\u003eTask 1\u003c/a\u003e\" was updated."}</body><delay xmlns="urn:xmpp:delay" stamp="2011-05-09T19:36:18.467Z" from="gtconnect.scooby"/><x xmlns="jabber:x:delay" stamp="20110509T19:36:18" from="gtconnect.scooby"/></message><message xmlns="jabber:client" type="groupchat" from="3b9551da46ed4357b93efa55155366b1-9@conference.scooby/AdminServiceClient" to="charles@scooby/charles"><body>{"Type":"TaskUpdatedNotification","Metadata":{"ChangedFields":[{"StaticName":"Title","DisplayName":"Title","PreviousValue":"Chuck Test","NewValue":"ASDF\n"}],"HuddleListId":"3b9551da-46ed-4357-b93e-fa55155366b1","HuddleItemId":9,"ItemListUrl":"Lists/Huddle/Tasks/9","ItemId":4,"UserLogin":"DEV\\charles","UserDisplay":"Charles Chen","Date":"May 09, 2011 15:59:12","Title":"ASDF\n","RoomIdString":"3b9551da46ed4357b93efa55155366b1-9"},"Body":"The Huddle item \"\u003ca href=\u0027http://gametime.dev.com/Lists/Huddle/Tasks/9/DispForm.aspx?ID=4\u0027 class=\u0027chat-link task-link\u0027\u003eASDF\n\u003c/a\u003e\" was updated."}</body><delay xmlns="urn:xmpp:delay" stamp="2011-05-09T19:59:12.218Z" from="gtconnect.scooby"/><x xmlns="jabber:x:delay" stamp="20110509T19:59:12" from="gtconnect.scooby"/></message><message xmlns="jabber:client" type="groupchat" from="3b9551da46ed4357b93efa55155366b1-9@conference.scooby/AdminServiceClient" to="charles@scooby/charles"><body>{"Type":"TaskUpdatedNotification","Metadata":{"ChangedFields":[{"StaticName":"Title","DisplayName":"Title","PreviousValue":"Task 1","NewValue":"ASDF\n"}],"HuddleListId":"3b9551da-46ed-4357-b93e-fa55155366b1","HuddleItemId":9,"ItemListUrl":"Lists/Huddle/Tasks/9","ItemId":1,"UserLogin":"DEV\\charles","UserDisplay":"Charles Chen","Date":"May 09, 2011 16:16:19","Title":"ASDF\n","RoomIdString":"3b9551da46ed4357b93efa55155366b1-9"},"Body":"The Huddle item \"\u003ca href=\u0027http://gametime.dev.com/Lists/Huddle/Tasks/9/DispForm.aspx?ID=1\u0027 class=\u0027chat-link task-link\u0027\u003eASDF\n\u003c/a\u003e\" was updated."}</body><delay xmlns="urn:xmpp:delay" stamp="2011-05-09T20:16:19.901Z" from="gtconnect.scooby"/><x xmlns="jabber:x:delay" stamp="20110509T20:16:19" from="gtconnect.scooby"/></message><message xmlns="jabber:client" type="groupchat" from="3b9551da46ed4357b93efa55155366b1-9@conference.scooby/AdminServiceClient" to="charles@scooby/charles"><body>{"Type":"TaskUpdatedNotification","Metadata":{"ChangedFields":[{"StaticName":"AssignedTo","DisplayName":"Assigned To","PreviousValue":"2;#Charles Chen,#DEV\\charles,#,#,#Charles Chen","NewValue":"9;#Tyrone Engels,#DEV\\tengels,#,#,#Tyrone Engels"}],"HuddleListId":"3b9551da-46ed-4357-b93e-fa55155366b1","HuddleItemId":9,"ItemListUrl":"Lists/Huddle/Tasks/9","ItemId":4,"UserLogin":"DEV\\charles","UserDisplay":"Charles Chen","Date":"May 09, 2011 16:23:42","Title":"ASDF\n","RoomIdString":"3b9551da46ed4357b93efa55155366b1-9"},"Body":"The Huddle item \"\u003ca href=\u0027http://gametime.dev.com/Lists/Huddle/Tasks/9/DispForm.aspx?ID=4\u0027 class=\u0027chat-link task-link\u0027\u003eASDF\n\u003c/a\u003e\" was updated."}</body><delay xmlns="urn:xmpp:delay" stamp="2011-05-09T20:23:42.834Z" from="gtconnect.scooby"/><x xmlns="jabber:x:delay" stamp="20110509T20:23:42" from="gtconnect.scooby"/></message><message xmlns="jabber:client" type="groupchat" from="3b9551da46ed4357b93efa55155366b1-9@conference.scooby/AdminServiceClient" to="charles@scooby/charles"><body>{"Type":"TaskUpdatedNotification","Metadata":{"ChangedFields":[{"StaticName":"Milestone","DisplayName":"Milestone","PreviousValue":"2;#M2","NewValue":"1;#M1"}],"HuddleListId":"3b9551da-46ed-4357-b93e-fa55155366b1","HuddleItemId":9,"ItemListUrl":"Lists/Huddle/Tasks/9","ItemId":5,"UserLogin":"DEV\\charles","UserDisplay":"Charles Chen","Date":"May 09, 2011 16:23:54","Title":"Task 5","RoomIdString":"3b9551da46ed4357b93efa55155366b1-9"},"Body":"The Huddle item \"\u003ca href=\u0027http://gametime.dev.com/Lists/Huddle/Tasks/9/DispForm.aspx?ID=5\u0027 class=\u0027chat-link task-link\u0027\u003eTask 5\u003c/a\u003e\" was updated."}</body><delay xmlns="urn:xmpp:delay" stamp="2011-05-09T20:23:54.520Z" from="gtconnect.scooby"/><x xmlns="jabber:x:delay" stamp="20110509T20:23:54" from="gtconnect.scooby"/></message><message xmlns="jabber:client" type="groupchat" from="3b9551da46ed4357b93efa55155366b1-9@conference.scooby/AdminServiceClient" to="charles@scooby/charles"><body>{"Type":"TaskUpdatedNotification","Metadata":{"ChangedFields":[{"StaticName":"AssignedTo","DisplayName":"Assigned To","PreviousValue":"2;#Charles Chen,#DEV\\charles,#,#,#Charles Chen","NewValue":"9;#Tyrone Engels,#DEV\\tengels,#,#,#Tyrone Engels"}],"HuddleListId":"3b9551da-46ed-4357-b93e-fa55155366b1","HuddleItemId":9,"ItemListUrl":"Lists/Huddle/Tasks/9","ItemId":6,"UserLogin":"DEV\\charles","UserDisplay":"Charles Chen","Date":"May 10, 2011 12:19:09","Title":"Test Low","RoomIdString":"3b9551da46ed4357b93efa55155366b1-9"},"Body":"The Huddle item \"\u003ca href=\u0027http://gametime.dev.com/Lists/Huddle/Tasks/9/DispForm.aspx?ID=6\u0027 class=\u0027chat-link task-link\u0027\u003eTest Low\u003c/a\u003e\" was updated."}</body><delay xmlns="urn:xmpp:delay" stamp="2011-05-10T16:19:09.986Z" from="gtconnect.scooby"/><x xmlns="jabber:x:delay" stamp="20110510T16:19:09" from="gtconnect.scooby"/></message><message xmlns="jabber:client" type="groupchat" from="3b9551da46ed4357b93efa55155366b1-9@conference.scooby/AdminServiceClient" to="charles@scooby/charles"><body>{"Type":"TaskUpdatedNotification","Metadata":{"ChangedFields":[{"StaticName":"AssignedTo","DisplayName":"Assigned To","PreviousValue":"9;#Tyrone Engels,#DEV\\tengels,#,#,#Tyrone Engels","NewValue":"2;#Charles Chen,#DEV\\charles,#,#,#Charles Chen"}],"HuddleListId":"3b9551da-46ed-4357-b93e-fa55155366b1","HuddleItemId":9,"ItemListUrl":"Lists/Huddle/Tasks/9","ItemId":5,"UserLogin":"DEV\\charles","UserDisplay":"Charles Chen","Date":"May 10, 2011 12:19:19","Title":"Task 5","RoomIdString":"3b9551da46ed4357b93efa55155366b1-9"},"Body":"The Huddle item \"\u003ca href=\u0027http://gametime.dev.com/Lists/Huddle/Tasks/9/DispForm.aspx?ID=5\u0027 class=\u0027chat-link task-link\u0027\u003eTask 5\u003c/a\u003e\" was updated."}</body><delay xmlns="urn:xmpp:delay" stamp="2011-05-10T16:19:19.613Z" from="gtconnect.scooby"/><x xmlns="jabber:x:delay" stamp="20110510T16:19:19" from="gtconnect.scooby"/></message><message xmlns="jabber:client" type="groupchat" from="3b9551da46ed4357b93efa55155366b1-9@conference.scooby/AdminServiceClient" to="charles@scooby/charles"><body>{"Type":"TaskUpdatedNotification","Metadata":{"ChangedFields":[{"StaticName":"AssignedTo","DisplayName":"Assigned To","PreviousValue":"9;#Tyrone Engels,#DEV\\tengels,#,#,#Tyrone Engels","NewValue":"2;#Charles Chen,#DEV\\charles,#,#,#Charles Chen"}],"HuddleListId":"3b9551da-46ed-4357-b93e-fa55155366b1","HuddleItemId":9,"ItemListUrl":"Lists/Huddle/Tasks/9","ItemId":6,"UserLogin":"DEV\\charles","UserDisplay":"Charles Chen","Date":"May 10, 2011 12:19:36","Title":"Test Low","RoomIdString":"3b9551da46ed4357b93efa55155366b1-9"},"Body":"The Huddle item \"\u003ca href=\u0027http://gametime.dev.com/Lists/Huddle/Tasks/9/DispForm.aspx?ID=6\u0027 class=\u0027chat-link task-link\u0027\u003eTest Low\u003c/a\u003e\" was updated."}</body><delay xmlns="urn:xmpp:delay" stamp="2011-05-10T16:19:36.767Z" from="gtconnect.scooby"/><x xmlns="jabber:x:delay" stamp="20110510T16:19:36" from="gtconnect.scooby"/></message><message xmlns="jabber:client" type="groupchat" from="3b9551da46ed4357b93efa55155366b1-9@conference.scooby/AdminServiceClient" to="charles@scooby/charles"><body>{"Type":"DocumentAddedNotification","Metadata":{"Message":"A document was added to the Huddle.","HuddleListId":"3b9551da-46ed-4357-b93e-fa55155366b1","HuddleItemId":9,"ItemListUrl":"Lists/Huddle/Documents/9","ItemId":1,"UserLogin":"DEV\\charles","UserDisplay":"Charles Chen","Date":"May 10, 2011 12:35:22","Title":"In SharePoint","RoomIdString":"3b9551da46ed4357b93efa55155366b1-9"},"Body":"A document was added to the Huddle."}</body><delay xmlns="urn:xmpp:delay" stamp="2011-05-10T16:35:23.997Z" from="gtconnect.scooby"/><x xmlns="jabber:x:delay" stamp="20110510T16:35:23" from="gtconnect.scooby"/></message><message xmlns="jabber:client" type="groupchat" from="3b9551da46ed4357b93efa55155366b1-9@conference.scooby/AdminServiceClient" to="charles@scooby/charles"><body>{"Type":"DocumentUpdatedNotification","Metadata":{"ChangedFields":[{"StaticName":"Title","DisplayName":"Title","PreviousValue":null,"NewValue":"SharePoint-CodeCamp.2010.2"},{"StaticName":"User_Comments","DisplayName":"User Comments","PreviousValue":null,"NewValue":""},{"StaticName":"Milestone","DisplayName":"Milestone","PreviousValue":null,"NewValue":""},{"StaticName":"ZL__Related_Tasks","DisplayName":"Related Tasks","PreviousValue":null,"NewValue":""}],"HuddleListId":"3b9551da-46ed-4357-b93e-fa55155366b1","HuddleItemId":9,"ItemListUrl":"Lists/Huddle/Documents/9","ItemId":1,"UserLogin":"DEV\\charles","UserDisplay":"Charles Chen","Date":"May 10, 2011 12:35:33","Title":"SharePoint-CodeCamp.2010.2","RoomIdString":"3b9551da46ed4357b93efa55155366b1-9"},"Body":"The Huddle item \"\u003ca href=\u0027http://gametime.dev.com/Lists/Huddle/Documents/9/Forms/DispForm.aspx?ID=1\u0027 class=\u0027chat-link task-link\u0027\u003eSharePoint-CodeCamp.2010.2\u003c/a\u003e\" was updated."}</body><delay xmlns="urn:xmpp:delay" stamp="2011-05-10T16:35:33.611Z" from="gtconnect.scooby"/><x xmlns="jabber:x:delay" stamp="20110510T16:35:33" from="gtconnect.scooby"/></message><message xmlns="jabber:client" type="groupchat" from="3b9551da46ed4357b93efa55155366b1-9@conference.scooby/charles" to="charles@scooby/charles"><body>Hi
</body><delay xmlns="urn:xmpp:delay" stamp="2011-05-10T18:18:50.187Z" from="charles@scooby/charles"/><x xmlns="jabber:x:delay" stamp="20110510T18:18:50" from="charles@scooby/charles"/></message><message xmlns="jabber:client" type="groupchat" from="3b9551da46ed4357b93efa55155366b1-9@conference.scooby/charles" to="charles@scooby/charles"><body>What's up?
</body><delay xmlns="urn:xmpp:delay" stamp="2011-05-10T18:18:51.993Z" from="charles@scooby/charles"/><x xmlns="jabber:x:delay" stamp="20110510T18:18:51" from="charles@scooby/charles"/></message><message xmlns="jabber:client" type="groupchat" from="3b9551da46ed4357b93efa55155366b1-9@conference.scooby/charles" to="charles@scooby/charles"><body>hi
</body><delay xmlns="urn:xmpp:delay" stamp="2011-05-10T18:37:02.957Z" from="charles@scooby/charles"/><x xmlns="jabber:x:delay" stamp="20110510T18:37:02" from="charles@scooby/charles"/></message></body>

------------------------------------------------------------------

POST http://gametime.dev.com/http-bind/ HTTP/1.1
Host: gametime.dev.com
Connection: keep-alive
Referer: http://gametime.dev.com/GameTimePages/GameTimeHuddle.aspx?List=3b9551da%2D46ed%2D4357%2Db93e%2Dfa55155366b1&ID=9&Source=http%3A%2F%2Fgametime%2Edev%2Ecom%2FLists%2FGameTimeHuddles%2FAllItems%2Easpx&ContentTypeId=0x01002167C00000000000000000000000000200D799BB01255FD045A12E56621F1F57C3
Content-Length: 81
Origin: http://gametime.dev.com
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/534.24 (KHTML, like Gecko) Chrome/11.0.696.65 Safari/534.24
Content-Type: application/xml
Accept: */*
Accept-Encoding: gzip,deflate,sdch
Accept-Language: en-US,en;q=0.8
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3
Cookie: WSS_KeepSessionAuthenticated={4eb5a3d5-4cf9-4f1d-8fd0-42e8939c29a8}

<body rid='229107839' xmlns='http://jabber.org/protocol/httpbind' sid='d3df061'/>

HTTP/1.1 200 OK
Content-Type: text/xml;charset=UTF-8
Vary: Accept-Encoding
Server: Microsoft-IIS/7.5
SPRequestGuid: 18778d95-1abd-4197-8d15-d1bf1d16bf0c
Set-Cookie: WSS_KeepSessionAuthenticated={4eb5a3d5-4cf9-4f1d-8fd0-42e8939c29a8}; path=/
X-SharePointHealthScore: 3
X-Powered-By: ASP.NET
MicrosoftSharePointTeamServices: 14.0.0.5130
Date: Tue, 10 May 2011 20:46:52 GMT
Content-Length: 73

<body xmlns="http://jabber.org/protocol/httpbind" ack="229107840"></body>

------------------------------------------------------------------

POST http://gametime.dev.com/http-bind/ HTTP/1.1
Host: gametime.dev.com
Connection: keep-alive
Referer: http://gametime.dev.com/GameTimePages/GameTimeHuddle.aspx?List=3b9551da%2D46ed%2D4357%2Db93e%2Dfa55155366b1&ID=9&Source=http%3A%2F%2Fgametime%2Edev%2Ecom%2FLists%2FGameTimeHuddles%2FAllItems%2Easpx&ContentTypeId=0x01002167C00000000000000000000000000200D799BB01255FD045A12E56621F1F57C3
Content-Length: 197
Origin: http://gametime.dev.com
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/534.24 (KHTML, like Gecko) Chrome/11.0.696.65 Safari/534.24
Content-Type: application/xml
Accept: */*
Accept-Encoding: gzip,deflate,sdch
Accept-Language: en-US,en;q=0.8
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3
Cookie: WSS_KeepSessionAuthenticated={4eb5a3d5-4cf9-4f1d-8fd0-42e8939c29a8}

<body rid='229107840' xmlns='http://jabber.org/protocol/httpbind' sid='d3df061'><presence type='unavailable' to='3b9551da46ed4357b93efa55155366b1-9@conference.scooby' xmlns='jabber:client'/></body>

HTTP/1.1 200 OK
Content-Type: text/xml;charset=UTF-8
Vary: Accept-Encoding
Server: Microsoft-IIS/7.5
SPRequestGuid: bc63504b-cb68-4b36-ae98-58a4c24a27ee
Set-Cookie: WSS_KeepSessionAuthenticated={4eb5a3d5-4cf9-4f1d-8fd0-42e8939c29a8}; path=/
X-SharePointHealthScore: 3
X-Powered-By: ASP.NET
MicrosoftSharePointTeamServices: 14.0.0.5130
Date: Tue, 10 May 2011 20:46:52 GMT
Content-Length: 375

<body xmlns='http://jabber.org/protocol/httpbind'><presence xmlns="jabber:client" to="charles@scooby/charles" from="3b9551da46ed4357b93efa55155366b1-9@conference.scooby/charles" type="unavailable"><x xmlns="http://jaber.org/protocol/muc"/><x xmlns="http://jabber.org/protocol/muc#user"><item jid="charles@scooby/charles" affiliation="none" role="none"/></x></presence></body>

------------------------------------------------------------------

POST http://gametime.dev.com/http-bind/ HTTP/1.1
Host: gametime.dev.com
Connection: keep-alive
Referer: http://gametime.dev.com/GameTimePages/GameTimeHuddle.aspx?List=3b9551da%2D46ed%2D4357%2Db93e%2Dfa55155366b1&ID=9&Source=http%3A%2F%2Fgametime%2Edev%2Ecom%2FLists%2FGameTimeHuddles%2FAllItems%2Easpx&ContentTypeId=0x01002167C00000000000000000000000000200D799BB01255FD045A12E56621F1F57C3
Content-Length: 81
Origin: http://gametime.dev.com
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/534.24 (KHTML, like Gecko) Chrome/11.0.696.65 Safari/534.24
Content-Type: application/xml
Accept: */*
Accept-Encoding: gzip,deflate,sdch
Accept-Language: en-US,en;q=0.8
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3
Cookie: WSS_KeepSessionAuthenticated={4eb5a3d5-4cf9-4f1d-8fd0-42e8939c29a8}

<body rid='229107839' xmlns='http://jabber.org/protocol/httpbind' sid='d3df061'/>

HTTP/1.1 200 OK
Content-Type: text/xml;charset=UTF-8
Vary: Accept-Encoding
Server: Microsoft-IIS/7.5
SPRequestGuid: 55b8569d-6eb6-4abb-92bf-12dd0a793376
Set-Cookie: WSS_KeepSessionAuthenticated={4eb5a3d5-4cf9-4f1d-8fd0-42e8939c29a8}; path=/
X-SharePointHealthScore: 3
X-Powered-By: ASP.NET
MicrosoftSharePointTeamServices: 14.0.0.5130
Date: Tue, 10 May 2011 20:46:52 GMT
Content-Length: 101

<body xmlns="http://jabber.org/protocol/httpbind" type="terminate" condition="item-not-found"></body>

------------------------------------------------------------------

POST http://gametime.dev.com/http-bind/ HTTP/1.1
Host: gametime.dev.com
Connection: keep-alive
Referer: http://gametime.dev.com/GameTimePages/GameTimeHuddle.aspx?List=3b9551da%2D46ed%2D4357%2Db93e%2Dfa55155366b1&ID=9&Source=http%3A%2F%2Fgametime%2Edev%2Ecom%2FLists%2FGameTimeHuddles%2FAllItems%2Easpx&ContentTypeId=0x01002167C00000000000000000000000000200D799BB01255FD045A12E56621F1F57C3
Content-Length: 156
Origin: http://gametime.dev.com
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/534.24 (KHTML, like Gecko) Chrome/11.0.696.65 Safari/534.24
Content-Type: application/xml
Accept: */*
Accept-Encoding: gzip,deflate,sdch
Accept-Language: en-US,en;q=0.8
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3
Cookie: WSS_KeepSessionAuthenticated={4eb5a3d5-4cf9-4f1d-8fd0-42e8939c29a8}

<body rid='229107841' xmlns='http://jabber.org/protocol/httpbind' sid='d3df061' type='terminate'><presence xmlns='jabber:client' type='unavailable'/></body>

HTTP/1.1 404 Invalid SID.
Cache-Control: must-revalidate,no-cache,no-store
Content-Length: 1381
Content-Type: text/html;charset=ISO-8859-1
Server: Microsoft-IIS/7.5
SPRequestGuid: d444e5a7-acfc-46ff-9bd6-8a52643073a1
Set-Cookie: WSS_KeepSessionAuthenticated={4eb5a3d5-4cf9-4f1d-8fd0-42e8939c29a8}; path=/
X-SharePointHealthScore: 3
X-Powered-By: ASP.NET
MicrosoftSharePointTeamServices: 14.0.0.5130
Date: Tue, 10 May 2011 20:46:52 GMT

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/>
<title>Error 404 Invalid SID.</title>
</head>
<body><h2>HTTP ERROR 404</h2>
<p>Problem accessing /http-bind/. Reason:
<pre>    Invalid SID.</pre></p><hr /><i><small>Powered by Jetty://</small></i><br/>                                                
<br/>                                                
<br/>                                                
<br/>                                                
<br/>                                                
<br/>                                                
<br/>                                                
<br/>                                                
<br/>                                                
<br/>                                                
<br/>                                                
<br/>                                                
<br/>                                                
<br/>                                                
<br/>                                                
<br/>                                                
<br/>                                                
<br/>                                                
<br/>                                                
<br/>                                                

</body>
</html>

------------------------------------------------------------------
vonrocco commented 13 years ago

Hi, we are experiencing the same problem also with Firefox 3.6.17. CharlieDigital has already pointed out all the details.

The problem is that Strophe re-send a previously created message with the same RID.

A fast patch that work for us is the following: Aound line 2143, change if (req.xhr.readyState === 0) { with if (reqStatus!=0 && req.xhr.readyState === 0) {

so the second request will not be fired out.

Is there a better solution?

CharlieDigital commented 13 years ago

vonrocco - thanks for that suggestion. I'm going to give that a shot and see if it works.

evrenweb commented 11 years ago

Hi,

I have same problem. Did you deal with this problem ?