Author Topic: Steam protocol  (Read 113272 times)

0 Members and 1 Guest are viewing this topic.

Offline Corak

  • Jr. Member
  • **
  • Posts: 93
  • Country: ru
  • Karma: 8
  • IDDQD
    • Corak's Software Incorporated
  • Jabber ID
  • Version Info
Re: Steam protocol
« Reply #300 on: 19 09 2015, 05:05:50 »
+ New Crash on  "PollingThread"

http://trac.miranda-ng.org/ticket/1041

steam_polling.cpp: PollingThread / memory.cpp: mir_strdup
Code: [Select]
Likely cause of the crash plugin: Steam protocol

Exception: Access Violation at address 1224F2FC. Reading from address 013DA000.

Stack Trace:
---------------------------------------------------------------
1224F2FC (mir_core 12240000): e:\sources\miranda_ng_compilation\src\mir_core\src\memory.cpp (152): mir_strdup
16EAA317 (Steam 16EA0000): e:\sources\miranda_ng_compilation\protocols\steam\src\steam_polling.cpp (188): CSteamProto::PollingThread
1224C554 (mir_core 12240000): e:\sources\miranda_ng_compilation\src\mir_core\src\threads.cpp (154): forkthreadex_r
78AFC556 (MSVCR100 78AA0000): (filename not available) (0): endthreadex
78AFC600 (MSVCR100 78AA0000): (filename not available) (0): endthreadex
7C80B729 (kernel32 7C800000): (filename not available) (0): GetModuleFileNameA
 

Offline Wishmaster

  • Developer
  • Global Moderator
  • *****
  • Posts: 650
  • Country: de
  • Karma: 31
  • Anti-Hero
  • Version Info
Re: Steam protocol
« Reply #301 on: 19 09 2015, 08:09:05 »
I give it up then :(


Can you try without OpenSSL?
 

Offline Corak

  • Jr. Member
  • **
  • Posts: 93
  • Country: ru
  • Karma: 8
  • IDDQD
    • Corak's Software Incorporated
  • Jabber ID
  • Version Info
Re: Steam protocol
« Reply #302 on: 19 09 2015, 08:27:17 »
I'm not using OpenSSL (@ultramage using it). I'm now oon pure netlib.

No, It really-really helps, and now crashes much rarely now. Not fundamentally but situately. Just some rare new crashes are appearing still not fixed.
I will personally not give up) I just wanted some special protocols to work more stable - for Miranda NG project cause.

___________________________
+ New crash on "OnGotUserSummaries"

http://trac.miranda-ng.org/ticket/1042

OnGotUserSummaries
Code: [Select]
Likely cause of the crash plugin: Steam protocol

Exception: Access Violation at address 120821F7. Reading from address 0141A000.

Stack Trace:
---------------------------------------------------------------
120821F7 (libjson 12080000): c:\program files (x86)\microsoft visual studio 10.0\vc\include\xstring (930): std::basic_string<char,std::char_traits<char>,std::allocator<char> >::assign
12083BDE (libjson 12080000): e:\sources\miranda_ng_compilation\libs\libjson\src\libjson.cpp (100): json_parse
16EA8F27 (Steam 16EA0000): e:\sources\miranda_ng_compilation\protocols\steam\src\steam_contacts.cpp (495): CSteamProto::OnGotUserSummaries
16EA4890 (Steam 16EA0000): e:\sources\miranda_ng_compilation\protocols\steam\src\steam_request.cpp (37): SteamHttpResponse
16EA9A63 (Steam 16EA0000): e:\sources\miranda_ng_compilation\protocols\steam\src\request_queue.cpp (77): RequestQueue::Execute
16EA9AED (Steam 16EA0000): e:\sources\miranda_ng_compilation\protocols\steam\src\request_queue.cpp (104): RequestQueue::WorkerThread
1224C599 (mir_core 12240000): e:\sources\miranda_ng_compilation\src\mir_core\src\threads.cpp (119): forkthread_r
78AFC3D4 (MSVCR100 78AA0000): (filename not available) (0): endthread
78AFC474 (MSVCR100 78AA0000): (filename not available) (0): endthread
7C80B729 (kernel32 7C800000): (filename not available) (0): GetModuleFileNameA
« Last Edit: 19 09 2015, 09:52:12 by Corak »
 

Offline Bob348874389023

  • Newbie
  • *
  • Posts: 10
  • Karma: 0
Re: Steam protocol
« Reply #303 on: 12 10 2015, 12:50:45 »
How do I clean up the contact list automatically? I removed 40 friends via web interface, launched miranda, got 40 popups and now have to find and delete those 40 dudes manually again?
 

Offline Robyer

  • Hero Member
  • *****
  • Posts: 1082
  • Country: cz
  • Karma: 60
    • Robyer.cz website
  • Version Info
Re: Steam protocol
« Reply #304 on: 12 10 2015, 14:03:09 »
Well, yes.

It's faster to do it via Quick Search Mod plugin, where you can select more contacts at once - and you can add some column with info that these contacts doesn't have authorization (are deleted on server), so you can sort by that column and then easily select all of them and delete them at once :-)
I was developing mainly Facebook, Omegle, Steam, Dummy and MobileState plugins. Now I'm retired. Goodbye, everyone. ~ You can still find me on Facebook.
 

Offline Bob348874389023

  • Newbie
  • *
  • Posts: 10
  • Karma: 0
Re: Steam protocol
« Reply #305 on: 12 10 2015, 16:41:37 »
Well, yes.

It's faster to do it via Quick Search Mod plugin, where you can select more contacts at once - and you can add some column with info that these contacts doesn't have authorization (are deleted on server), so you can sort by that column and then easily select all of them and delete them at once :-)
Yep tried it, however QS doesn't have any columns which could help me.
 

Offline Robyer

  • Hero Member
  • *****
  • Posts: 1082
  • Country: cz
  • Karma: 60
    • Robyer.cz website
  • Version Info
Re: Steam protocol
« Reply #306 on: 12 10 2015, 17:47:05 »
Bob348874389023, add your own column.

You can use: db setting, type: timestamp, module: empty, setting: "DeletedTS" (non empty means date of contact deletion)
Or: db setting, type: byte, module: empty, setting: "Auth" (1 means deleted contact)
I was developing mainly Facebook, Omegle, Steam, Dummy and MobileState plugins. Now I'm retired. Goodbye, everyone. ~ You can still find me on Facebook.
 

Offline Bob348874389023

  • Newbie
  • *
  • Posts: 10
  • Karma: 0
Re:Steam protocol
« Reply #307 on: 12 10 2015, 17:54:35 »
Bob348874389023, add your own column.

You can use: db setting, type: timestamp, module: empty, setting: "DeletedTS" (non empty means date of contact deletion)
Or: db setting, type: byte, module: empty, setting: "Auth" (1 means deleted contact)
I am very sorry for offtopic, but is it done in settings or only via DB editor?

In settings I can only add/remove columns but can't edit them. Is it a bug on my side?
 

Offline Robyer

  • Hero Member
  • *****
  • Posts: 1082
  • Country: cz
  • Karma: 60
    • Robyer.cz website
  • Version Info
Re: Steam protocol
« Reply #308 on: 12 10 2015, 18:04:12 »
Bob348874389023, it's badly designed GUI. Notice vertical "button" on right side of the options. And click on it. It should show you edit panel for the selected column.
I was developing mainly Facebook, Omegle, Steam, Dummy and MobileState plugins. Now I'm retired. Goodbye, everyone. ~ You can still find me on Facebook.
 
The following users thanked this post: Bob348874389023

Offline Dimsok

  • Sr. Member
  • ****
  • Posts: 283
  • Country: ru
  • Karma: 2
  • Version Info
Re: Steam protocol
« Reply #309 on: 13 10 2015, 19:15:40 »
I can't add contact. After when i add it in cl (only by id. searching by nick doesn't work) i select "ask authorisation" in context menu but that doesn't send any notification to the contact. And when contact try to add me, miranda crashes. So anyone added any contact to it? Which magic should i make?
 

Offline Vulpix

  • Beta Tester
  • *****
  • Posts: 620
  • Country: 00
  • Karma: 15
Re: Steam protocol
« Reply #310 on: 09 11 2015, 15:05:40 »
I keep getting disconnected from Steam a lot.

I understand steam (as a protocol) is inherently fragile, but it's incredibly annoying having to relog all the time, especially since sometimes you log in without seeing a single contact online, and you just have to log out and wait some time for the whole session to "time out", before you can log in and see others.

@Robyer, do you think it'd be possible to make the protocol more resilient to steam's crappy connectivity? To make it not give up so easily/quickly.

See below a log of the connection dying:

Spoiler
15:57:25 1358] [STEAM_1] Send request to https://api.steampowered.com/ISteamWebUserPresenceOAuth/Poll/v0001
[15:57:25 0FE0] [STEAM_1] Connection request to api.steampowered.com:443 (Flags 11)....
[15:57:25 0FE0] [STEAM_1] (000000000F020DB8) Connecting to server api.steampowered.com:443....
[15:57:25 0FE0] [STEAM_1] (000000000F020DB8) Connecting to ip 208.64.202.85:443 ....
[15:57:36 1358] SSL Server signaled SSL Shutdown
[15:57:36 1358] [STEAM_1] (000000000F021AC8:21544) Data received
HTTP/1.1 408 Request Timeout
[15:57:36 1358] [STEAM_1] (000000000F021AC8:21544) Data received
Content-Length: 104
Content-Type: text/html; charset=UTF-8
Date: Mon, 09 Nov 2015 14:57:35 GMT
expires: Mon, 26 Jul 1997 05:00:00 GMT
cache-control: no-cache,must-revalidate

[15:57:36 1358] [STEAM_1] Send request to https://api.steampowered.com/ISteamWebUserPresenceOAuth/Poll/v0001
[15:57:36 1358] [STEAM_1] (000000000F021AC8:21544) Connection closed internal
[15:57:36 1358] [STEAM_1] (000000000F021AC8) Connecting to server api.steampowered.com:443....
[15:57:36 1358] [STEAM_1] (000000000F021AC8) Connecting to ip 208.64.202.85:443 ....
[15:57:46 0FE0] [STEAM_1] src\netlibopenconn.cpp 727: connect() failed (10060)
[15:57:57 1358] [STEAM_1] src\netlibopenconn.cpp 727: connect() failed (10060)
[15:57:57 1358] [STEAM_1] (000000000F021AC8:4294967295) Connection closed
[15:57:57 1358] [STEAM_1] Send request to https://api.steampowered.com/ISteamWebUserPresenceOAuth/Poll/v0001
[15:57:57 1358] [STEAM_1] Connection request to api.steampowered.com:443 (Flags 11)....
[15:57:57 1358] [STEAM_1] (000000000F021998) Connecting to server api.steampowered.com:443....
[15:57:57 1358] [STEAM_1] (000000000F021998) Connecting to ip 208.64.202.85:443 ....
[15:58:18 1358] [STEAM_1] src\netlibopenconn.cpp 727: connect() failed (10060)
[15:58:18 1358] [STEAM_1] CSteamProto::PollingThread: leaving
[15:58:18 1358] [STEAM_1] CSteamProto::PollingThread: unexpected termination; switching protocol to offline
[15:58:18 1358] [STEAM_1] CSteamProto::SetStatus: changing status from 40072 to 40071
[15:58:18 18A4] [STEAM_1] Send request to https://api.steampowered.com/ISteamWebUserPresenceOAuth/Logoff/v0001
[15:58:18 18A4] [STEAM_1] Connection request to api.steampowered.com:443 (Flags 11)....
[15:58:18 18A4] [STEAM_1] (000000000F021608) Connecting to server api.steampowered.com:443....
[15:58:18 18A4] [STEAM_1] (000000000F021608) Connecting to ip 208.64.202.85:443 ....
[15:58:39 18A4] [STEAM_1] src\netlibopenconn.cpp 727: connect() failed (10060)

Also, if you could look into retrieval of offline messages, there could be some $$ in it for you :p (or whoever can make it work)
 

Offline Robyer

  • Hero Member
  • *****
  • Posts: 1082
  • Country: cz
  • Karma: 60
    • Robyer.cz website
  • Version Info
Re: Steam protocol
« Reply #311 on: 09 11 2015, 22:09:35 »
@Robyer, do you think it'd be possible to make the protocol more resilient to steam's crappy connectivity? To make it not give up so easily/quickly.

You can see that it doesn't give up that easily - it tries 3 times before giving up.
Anyway, I commited hidden setting to specify number of retries manually (and raised default value from 3 to 5). It's key "PollingErrorsLimit" (byte). There is nothing else I can do about that...

Also, if you could look into retrieval of offline messages, there could be some $$ in it for you :p (or whoever can make it work)
Ok, I'll probably look at it later this week if unsane won't be faster :-)
I was developing mainly Facebook, Omegle, Steam, Dummy and MobileState plugins. Now I'm retired. Goodbye, everyone. ~ You can still find me on Facebook.
 

Offline Robyer

  • Hero Member
  • *****
  • Posts: 1082
  • Country: cz
  • Karma: 60
    • Robyer.cz website
  • Version Info
Re: Steam protocol
« Reply #312 on: 10 11 2015, 08:00:44 »
I can't add contact. After when i add it in cl (only by id. searching by nick doesn't work) i select "ask authorisation" in context menu but that doesn't send any notification to the contact. And when contact try to add me, miranda crashes. So anyone added any contact to it? Which magic should i make?

Please make ticket(s) for your problem(s) to our tracker so it won't be forgotten.
I was developing mainly Facebook, Omegle, Steam, Dummy and MobileState plugins. Now I'm retired. Goodbye, everyone. ~ You can still find me on Facebook.
 

Offline Vulpix

  • Beta Tester
  • *****
  • Posts: 620
  • Country: 00
  • Karma: 15
Re: Steam protocol
« Reply #313 on: 10 11 2015, 09:22:22 »
@Robyer:

What  happened here?

Spoiler
[10:16:56 1A54] [STEAM_1] (00000000132DF9C8:2244) Data received
HTTP/1.1 200 OK
[10:16:56 1A54] [STEAM_1] (00000000132DF9C8:2244) Data received
Date: Tue, 10 Nov 2015 09:16:56 GMT
expires: Tue, 10 Nov 2015 09:16:56 GMT
Content-Type: application/json; charset=UTF-8
content-length: 56

[10:16:56 1A54] [STEAM_1] (00000000132DF9C8:2244) Data received
{
        "pollid": 0,
        "sectimeout": 30,
        "error": "Timeout"
}
[10:16:56 1A54] [STEAM_1] Send request to https://api.steampowered.com/ISteamWebUserPresenceOAuth/Poll/v0001
[10:17:27 1A54] [STEAM_1] (00000000132DF9C8:2244) Data received
HTTP/1.1 200 OK
[10:17:34 1A54] SSL Server signaled SSL Shutdown
[10:17:39 1A54] [STEAM_1] (00000000132DF9C8:2244) Data received
Date: Tue, 10 Nov 2015 09:17:26 GMT
expires: Tue, 10 Nov 2015 09:17:26 GMT
Content-Type: application/json; charset=UTF-8
content-length: 56

[10:17:44 1A54] [STEAM_1] (00000000132DF9C8:2244) Data received
{
        "pollid": 0,
        "sectimeout": 30,
        "error": "Timeout"
}
[10:17:48 1A54] [STEAM_1] Send request to https://api.steampowered.com/ISteamWebUserPresenceOAuth/Poll/v0001
[10:17:53 1A54] [STEAM_1] (00000000132DF9C8:2244) Connection closed internal
[10:17:57 1A54] [STEAM_1] (00000000132DF9C8) Connecting to server api.steampowered.com:443....
[10:17:58 1A54] [STEAM_1] (00000000132DF9C8) Connecting to ip 208.64.202.85:443 ....
[10:17:58 1A54] [STEAM_1] (10344) Connected to api.steampowered.com:443
[10:17:58 1A54] [STEAM_1] (10344 api.steampowered.com) Starting SSL negotiation
[10:17:59 1A54] [STEAM_1] (10344 api.steampowered.com) SSL negotiation successful
[10:17:59 1A54] [STEAM_1] (00000000132DF9C8:10344) Data received
HTTP/1.1 200 OK
[10:17:59 1A54] [STEAM_1] (00000000132DF9C8:10344) Data received
Date: Tue, 10 Nov 2015 09:17:59 GMT
expires: Tue, 10 Nov 2015 09:17:59 GMT
Content-Type: application/json; charset=UTF-8
content-length: 61

[10:17:59 1A54] [STEAM_1] (00000000132DF9C8:10344) Data received
{
        "pollid": 0,
        "sectimeout": 1,
        "error": "Not Logged On"
}
[10:17:59 1A54] [STEAM_1] CSteamProto::PollingThread: Not Logged On (200)
[10:17:59 1A54] [STEAM_1] CSteamProto::PollingThread: Timeout is too low (1)
[10:17:59 1A54] [STEAM_1] CSteamProto::PollingThread: leaving

[10:17:59 1A54] [STEAM_1] CSteamProto::PollingThread: unexpected termination; switching protocol to offline
[10:17:59 1A54] [STEAM_1] CSteamProto::SetStatus: changing status from 40072 to 40071
[10:17:59 1CE4] [STEAM_1] Send request to https://api.steampowered.com/ISteamWebUserPresenceOAuth/Logoff/v0001
[10:17:59 1CE4] [STEAM_1] Connection request to api.steampowered.com:443 (Flags 11)....
[10:17:59 1CE4] [STEAM_1] (000000001039B528) Connecting to server api.steampowered.com:443....
[10:17:59 1CE4] [STEAM_1] (000000001039B528) Connecting to ip 208.64.202.85:443 ....
[10:17:59 1CE4] [STEAM_1] (10336) Connected to api.steampowered.com:443
[10:17:59 1CE4] [STEAM_1] (10336 api.steampowered.com) Starting SSL negotiation
[10:17:59 1CE4] [STEAM_1] (10336 api.steampowered.com) SSL negotiation successful
[10:18:00 1CE4] [STEAM_1] (000000001039B528:10336) Data received
HTTP/1.1 200 OK
[10:18:00 1CE4] [STEAM_1] (000000001039B528:10336) Data received
Date: Tue, 10 Nov 2015 09:17:59 GMT
expires: Tue, 10 Nov 2015 09:17:59 GMT
Content-Type: application/json; charset=UTF-8
content-length: 29

[10:18:00 1CE4] [STEAM_1] (000000001039B528:10336) Data received
{
        "error": "Not Logged On"
}
[10:18:00 1CE4] [STEAM_1] (000000001039B528:10336) Connection closed internal
[10:18:00 1CE4] [STEAM_1] (000000001039B528:4294967295) Connection closed

I don't see any reconnection attempts. What's this signalled shutdown?
 

Offline Mataes

  • Global Moderator
  • *****
  • Posts: 119
  • Country: ru
  • Karma: 16
Re: Steam protocol
« Reply #314 on: 12 11 2015, 06:04:34 »
hi! i have a crash: http://pastebin.com/n5mzPdyT