Author Topic: Steam protocol  (Read 271405 times)

0 Members and 2 Guests are viewing this topic.

Offline unsane

Re: Steam protocol
« Reply #495 on: 28 12 2017, 18:29:12 »
Ratha, i've made a commit today that should show game name if appid is exists.

To all.  Guys, i made global rafactoring of code, so if something will not work please tell to me about it)
Si no estas con nosotros, estas contra nosotros.
 

Offline Vulpix

Re: Steam protocol
« Reply #496 on: 28 12 2017, 19:50:15 »
Sounds great, @unsane ! I saw the refactor commit. Can't wait for it to be compiled :) Thanks for the hard work!

Nice! I can see the steamID'd games now!
« Last Edit: 29 12 2017, 08:17:10 by Vulpix »
 

Offline Vulpix

Re: Steam protocol
« Reply #497 on: 29 12 2017, 09:11:17 »
I noticed that the new steam seems to consume an unusually large amount of CPU. (Normally <0.5% , with the new steam logged on, it's at least 6-7%, constant). Nothing jumps at me in the logs so I don't know why this is, but it's definitely because of Steam.
 

Offline Ratha

Re: Steam protocol
« Reply #498 on: 29 12 2017, 22:51:10 »
I can confirm that whatever was done during the refactoring seems to have fixed the display of game names. I'd be quite curious to know what was done to fix that. I tried reading the commit but it was bit over my head admittedly. Are we making new API calls (and if so what API calls) or are we now manually checking the GameID for each API response since steam (seems) to have stopped providing that through the old API calls?

I can also confirm the exceptionally high Steam CPU usage as of Miranda NG 0.95.8.19064. Seems to only exist while Steam is in online mode and stays at 25% (one core) worth of CPU usage for about 10 seconds solid before dipping for about half a second and then going right back up to maximum again. I let the process run until it'd burned 3 minutes of CPU time before logging off which immediately lowered the CPU usage. Looks like the build I was testing was the build prior to the CPUfix update (c4759940cd). Will revert to a previous version for now and try updating again tomorrow to see if its fixed, should better be able to do a before/after comparison then too.

Thanks for all the hard work you guys have been putting into the Steam protocol lately. Not being able to easily see what game friends have been playing during the holiday break has made me realize just how much I used to rely on that feature. Will be great to have it up and running again once all the kinks are worked out.
 

Offline Vulpix

Re: Steam protocol
« Reply #499 on: 30 12 2017, 12:56:57 »
CPU utilization is fixed but I am not able to send any messages. Rather, tabsrmm complains they are not sent - but they actually do get sent correctly. They do not appear in my history. My contacts can see them, and I also retrieve incoming messages without issues. Spoke to unsane about it, hopefully he can fix it soon :)
 

Offline unsane

Re: Steam protocol
« Reply #500 on: 30 12 2017, 16:58:45 »
Are we making new API calls (and if so what API calls)
I've found new (actually old  :D) api call that returns simple data (appid, name ande some picture links). If contact info contain only game id it api will be called additionally.

Vulpix, bug has already been fixed  :-X
Si no estas con nosotros, estas contra nosotros.
 

Offline Vulpix

Re: Steam protocol
« Reply #501 on: 30 12 2017, 18:35:36 »
Awesome! :D thanks, can't wait for it to be compiled :3
 

Offline Lizard

  • Newbie
  • *
  • Posts: 21
Re: Steam protocol
« Reply #502 on: 31 12 2017, 12:51:17 »
is there a smiley pack for Steam?  8)
 

Offline Ratha

Re: Steam protocol
« Reply #503 on: 01 02 2018, 07:22:21 »
I recently updated to the new Steam build after the refactoring and have noticed that some contacts are showing that they're playing a game when they're not until logging off and back onto Steam again. Can anyone else confirm this? I believe that friends -were- playing said game, but that the plugin didnt update to show that they'd stopped. This leads me to believe that the method in which contacts are being updated is possibly not being done frequently enough, or that Miranda might be missing out on some of the contact updates such as when someone starts/exits a game and more importantly when someone goes on or offline.

Another possibility is that Miranda could have been disconnected from the network and thus isnt receiving updates but still shows that it is online / retained the old data from before it got disconnected. (I should have sent someone a test message to see whether that was the case, or if sending a message would have caused the list to re-update but didnt think about it before logging off/on to fix the game/status issue.)

VersionInfo
Quote
CPU: Intel(R) Core(TM) i5-4670K CPU @ 3.40GHz [Intel64 Family 6 Model 60 Stepping 3] [DEP Enabled] [4 CPUs]
Installed RAM: 24521 MBytes
Microsoft Windows 7 Ultimate Edition, 64-bit Service Pack 1 (build 7601)
Internet Explorer: 9.11.9600.18665 (build 99600)
Administrator privileges: Yes
OS Languages: (UI | Locale (User/System)) : English/English | English/English
Free disk space on Miranda partition: 84982 MBytes

Miranda NG Version: 0.95.8 alpha build #19227 (f71ba68ef3) [running inside WOW64]
Build time: 27 Jan 2018 12:32:10
Profile: C:\Program Files (x86)\Miranda NG\Profiles\Ratha\Ratha.dat (dbx mmap driver)
Profile size: 85458944 Bytes
Profile creation date: 29 Dec 2017 15:51:49
Language pack: No language pack installed
Service Mode: No

Active Plugins (18):
¤ AdvaImg.dll v.0.11.0.2 [27 Jan 2018 12:33:32] - Miranda image services
¤ AVS.dll v.0.95.3.4 [27 Jan 2018 12:32:52] - Avatar service
¤ CrashDumper.dll v.0.0.5.2 [27 Jan 2018 12:32:42] - Crash dumper
¤ DbEditorPP.dll v.4.0.1.2 [27 Jan 2018 12:32:42] - Database editor++
¤ Dbx_mdbx.dll v.0.95.8.3 [27 Jan 2018 12:33:36] - Miranda NG MDBX database driver
¤ Dbx_mmap.dll v.0.95.3.1 [27 Jan 2018 12:32:14] - Miranda NG mmap database driver
¤ Discord.dll v.0.5.1.2 [27 Jan 2018 12:33:28] - Discord protocol
¤ HistoryPP.dll v.1.5.1.5 [11 Dec 2017 9:24:52] - History++
¤ ICQ.dll v.0.95.8.1 [27 Jan 2018 12:32:18] - IcqOscarJ protocol
¤ ImportTXT.dll v.0.0.1.12 [16 Dec 2017 4:06:40] - Import TXT
¤ PluginUpdater.dll v.0.1.2.5 [27 Jan 2018 12:32:42] - Plugin updater
¤ SeenPlugin.dll v.5.0.5.3 [27 Jan 2018 12:32:24] - Last seen
¤ SkypeWeb.dll v.0.12.2.5 [27 Jan 2018 12:33:28] - Skype protocol (Web)
¤ SpellChecker.dll v.0.2.6.6 [27 Jan 2018 12:33:10] - Spell checker
¤ Steam.dll v.0.11.6.3 [27 Jan 2018 12:33:20] - Steam protocol
¤ TabSRMM.dll v.3.5.0.8 [27 Jan 2018 12:32:58] - TabSRMM
¤ Tipper.dll v.2.1.0.7 [27 Jan 2018 12:32:54] - Tipper
¤ YAMN.dll v.0.1.2.6 [27 Jan 2018 12:32:50] - Mail Notifier

Unloadable Plugins (1):
¤ DbChecker.dll v.0.0.0.0 [27 Jan 2018 12:32:44] - <unknown>
    Plugin statically linked to missing module: mir_core.mir
    Plugin statically linked to missing module: mir_app.mir


Protocols and Accounts:
-------------------------------------------------------------------------------
Discord                  1 - Enabled 0 - Disabled  Loaded
ICQ                      1 - Enabled 1 - Disabled  Loaded
SKYPE                    1 - Enabled 0 - Disabled  Loaded
STEAM                    1 - Enabled 0 - Disabled  Loaded
MetaContacts             1 - Enabled 0 - Disabled  Not Loaded
YAMN                     1 - Enabled 0 - Disabled  Loaded

Icon Packs:
-------------------------------------------------------------------------------
 Flags_icons.dll [27 Jan 2018 12:34:30]
 HistoryPP_icons.dll [16 Dec 2017 4:06:34]
 Proto_Discord.dll [27 Jan 2018 12:34:32]
 Proto_ICQ.dll [27 Jan 2018 12:34:30]
 Proto_MetaContacts.dll [27 Jan 2018 12:34:32]
 Proto_Skype.dll [27 Jan 2018 12:34:32]
 Proto_Steam.dll [27 Jan 2018 12:34:32]
 Proto_Yahoo.dll [13 Feb 2016 21:01:38]
 Proto_YAMN.dll [27 Jan 2018 12:34:32]
 TabSRMM_icons.dll [27 Jan 2018 12:34:32]
 xStatus_ICQ.dll [27 Jan 2018 12:34:32]
[close]
 

Offline Vulpix

Re: Steam protocol
« Reply #504 on: 01 02 2018, 09:34:45 »
I believe this actually used to be the case before the major changes as well; I'd see people playing even long after they existed the game. I am able to make the comparison because I have some contacts on Discord and Steam at the same time, and I can easily see the discrepancies.
 

Offline Ratha

Re: Steam protocol
« Reply #505 on: 01 02 2018, 18:05:34 »
I had the opposite experience where it'd update pretty much instantly when someone started playing or stopped playing for me, just couldnt see the game titles back then.

Edit: After spending a bit more time simply observing how Miranda updates the Steam contact list over the course of the day, it seems that the only time the Miranda updates what game someone is playing is when Miranda first logs in, or when the person on your contact list goes offline. It no longer seems to update to show when they've started a game, or when they quit a game.

Since my last login about 12 hours ago it seems like no new 'playing game' notifications have been created and old ones have only been removed by the players logging off and back on again. Definitely appears that things are a bit broken at the moment / that Miranda is not receiving or interpreting updates to gameplay status.
« Last Edit: 02 02 2018, 06:54:26 by Ratha »
 

Offline Ratha

Re: Steam protocol
« Reply #506 on: 02 02 2018, 08:47:01 »
I updated to the latest build of Miranda 0.95.8.19248 and used an alt Steam account to log what happens to my main account when it starts and stops playing a game. I saved this under Steam_Game_Start_And_Stop_No_SSL.txt. It appears that no game info is being logged on starting or stopping a game from what I can tell by the included logs. (Or if it is, its being done over SSL which I didnt record.)

Additionally, my observation so far is that no game information is logged when a user goes offline and then back online, even while they're still in a game. (I attempted to capture this as well, but the logs looked essentially identical to the one above and so I didnt include it.)

Statuses such as Online, Offline, Away, and Busy seem to be updated on Miranda instantly, although these status changes do not seem to appear in the logs either (like they used to) and are presumably being transmitted over SSL now and thus probably why they dont show up in the logs either.)

-

VersionInfo
Quote
CPU: Intel(R) Core(TM) i5-4670K CPU @ 3.40GHz [Intel64 Family 6 Model 60 Stepping 3] [DEP Enabled] [4 CPUs]
Installed RAM: 24521 MBytes
Microsoft Windows 7 Ultimate Edition, 64-bit Service Pack 1 (build 7601)
Internet Explorer: 9.11.9600.18665 (build 99600)
Administrator privileges: Yes
OS Languages: (UI | Locale (User/System)) : English/English | English/English
Free disk space on Miranda partition: 84422 MBytes

Miranda NG Version: 0.95.8 alpha build #19248 (7253436a88) [running inside WOW64]
Build time: 2 Feb 2018 2:01:06
Profile: C:\Users\Ratha\Desktop\Miranda test\Profiles\AltSteam\AltSteam.dat (MDBX database driver)
Profile size: 262144 Bytes
Profile creation date: 2 Feb 2018 0:04:33
Language pack: No language pack installed
Service Mode: No

Active Plugins (11):
¤ AdvaImg.dll v.0.11.0.2 [27 Jan 2018 12:33:32] - Miranda image services
¤ AVS.dll v.0.95.3.4 [27 Jan 2018 12:32:52] - Avatar service
¤ CrashDumper.dll v.0.0.5.2 [27 Jan 2018 12:32:42] - Crash dumper
¤ DbEditorPP.dll v.4.0.1.2 [27 Jan 2018 12:32:42] - Database editor++
¤ Dbx_mdbx.dll v.0.95.8.3 [2 Feb 2018 2:02:30] - Miranda NG MDBX database driver
¤ Dbx_mmap.dll v.0.95.3.1 [2 Feb 2018 2:01:10] - Miranda NG mmap database driver
¤ PluginUpdater.dll v.0.1.2.5 [27 Jan 2018 12:32:42] - Plugin updater
¤ SeenPlugin.dll v.5.0.5.3 [27 Jan 2018 12:32:24] - Last seen
¤ Steam.dll v.0.11.6.3 [2 Feb 2018 2:02:16] - Steam protocol
¤ TabSRMM.dll v.3.5.0.8 [27 Jan 2018 12:32:58] - TabSRMM
¤ Tipper.dll v.2.1.0.7 [27 Jan 2018 12:32:54] - Tipper

Unloadable Plugins (1):
¤ DbChecker.dll v.0.0.0.0 [2 Feb 2018 2:01:38] - <unknown>
    Plugin statically linked to missing module: mir_core.mir
    Plugin statically linked to missing module: mir_app.mir


Protocols and Accounts:
-------------------------------------------------------------------------------
STEAM                    1 - Enabled 0 - Disabled  Loaded
MetaContacts             1 - Enabled 0 - Disabled  Not Loaded

Icon Packs:
-------------------------------------------------------------------------------
 Flags_icons.dll [27 Jan 2018 12:34:30]
 Proto_MetaContacts.dll [2 Feb 2018 2:03:36]
 Proto_Steam.dll [2 Feb 2018 2:03:36]
 TabSRMM_icons.dll [27 Jan 2018 12:34:32]
[close]
« Last Edit: 02 02 2018, 08:49:07 by Ratha »
 

Offline unsane

Re: Steam protocol
« Reply #507 on: 02 02 2018, 19:43:39 »
It seems that event ("type": "personastate") arrives for any changes in profile. There is one change in message: status_flags changed from 9055 to 13151 and back.
Ratha, can you check relations between playing or stopped playing event and changes of status_flags?


Post Merge: 02 02 2018, 20:36:47
Anyway, i've revert summary updates when protocol gets "personastate" event.
« Last Edit: 02 02 2018, 20:36:47 by unsane »
Si no estas con nosotros, estas contra nosotros.
 

Offline Ratha

Re: Steam protocol
« Reply #508 on: 02 02 2018, 21:26:11 »
I dont know much about whats going on under the hood in Miranda, however when i log onto steam on my main profile, only 3 of my contacts show 13151 as their status, and all 3 of them are in games.. but when I manually count how many friends are playing games it shows 9 of them are.. and the other 6 of those people have 9055 as their status_flags. But with that said, if i start a game and then quit a game, my status changes from 9055 to 13151 and then back to 9055 again based on the log. So.. im not sure what to make of that.

A quick check of the logs seems to indicate persona states are related to the following:
0 = offline
1 = online
2 = busy
3 = away
4 = not available (long away)
5 = looking to trade
6 = looking to play
« Last Edit: 02 02 2018, 21:27:55 by Ratha »
 

Offline Ratha

Re: Steam protocol
« Reply #509 on: 02 02 2018, 22:16:48 »
I noticed an issue on the tracker earlier and was wondering if it might be related to another issue im seeing: I added a new contact to my list recently (through the Steam client) and while they show up on my Miranda contact list and i can send messages to them, they never show an avatar, or a homepage icon in the contact list like the rest of my Steam friends do. Is that related to the following issue by chance? https://github.com/miranda-ng/miranda-ng/issues/1114

It seems like the proper permissions are being sent as otherwise I shouldnt be able to converse with the new contact, however the fact that im never able to see their avatar, and that their homepage icon never updates or shows up makes me think that adding the contact never creates the proper database entries for those things to be stored and displayed perhaps?