Author Topic: Steam protocol  (Read 378761 times)

0 Members and 14 Guests are viewing this topic.

Offline Smiling Spectre

  • Jr. Member
  • **
  • Posts: 66
  • Country: 00
Re: Steam protocol
« Reply #60 on: 03 07 2014, 06:00:15 »
Ok, feedback. :)

I got v.095.1 build #9651 with Steam protocol only

1. Right after starting Steam it correctly asked for approval code from Steam, taken it and went online, displaying contacts with statuses. But I wasn't able to send anything to anyone - "there was error sending this message". Hmm. I went offline and entered Steam through browser chat - it works as usual. Ok, went online in Miranda - _now_ it works allright. Closed browser and Miranda, restarted Miranda, error not returned. I have no idea, if error was connected with browser or first initialization of Steam protocol.

2. I can change my status in two places - global (that one with hotkeys Ctrl+0/Ctrl+1) and by protocol. Global works as intended, protocol changing doesn't work right at all:

- From the first attempt it correctly made Steam offline, but when I went online, it did nothing. I.e. status in Miranda changed to "online", but all contacts remained invisible. No more fiddling with online/offline made it back, so I went "globally" offline/online. It worked.

- From the second attempt it was just reverse: regardless of my Miranda status contacts was connected.

- From the third attempt (trice in row, actually, so technically it was tries 3-6) Miranda hangs, eating one processor core completely. (Also in first time, when I closed one opened chat window from this Miranda, it closed program altogether - but that's quite common for Miranda in general, I seen this behavior quite often when Miranda hangs. There wasn't opened windows in attempts #2-3). I was forced to kill the process.

3. In my Russian Steam I see now 4 statuses in my friend list: online, away, sleeping and offline. But in my Russian Miranda "sleeping" status named "lunch" ("Обедаю"). I am not sure, if it wrong Russian translation or wrong status recognition. Hmm, seems, I am totally wrong here. Ok, again: "Lunch" is status for "Friends in game" actually. Is it work as intended? :)

Otherwise everything seems work so far. Thank you! :)

Only one problem, non-Steam-related: I used stdclist.dll, and I see no way to add groups to contact list. Menu "groups" exists, but there are nothing here, except "<root group>" entry. Can I add groups somehow?

---addition---
4. Client silently cutting messages both way. English is longer, Russian is must shorter. Examples:

4.1. (English text for review for Greenlight game Spellcrafter):
Quote
Magic is not an art or religion. Magic is a craft.

Experience an amazing and unforgettable adventure set in a dark fantasy universe!

Spellcrafter will be an RPG game with deep tactical turn-based combat and a unique spell casting system. Explore the magical world, collect gold, interact with NPCs, take quests and make moral choices! Recruit heroes, assemble and summon powerful troops and send them into battle!

The unique feature of Spellcrafter will be the spell casting system.
This message was cut after sending on words "into battle!", making it around 420 bytes.

Test sending the full review in Steam browser client hadn't issues.

4.2. And moreover, it mirrored in Miranda - but had last bytes cut (review ends with words "challenging title!", but in my history I see only "challenging titl"). Full length of resulting message in Miranda history is 1 320 bytes.

When I tried the same with Russian text, I got resulting "mirror" message of 1 126 bytes. So it seems like the different issue, not the same as 4.3.

4.3. Russian messages suffered much more. Here is S.T.A.L.K.E.R.:
Quote
В 1986 на Чернобыльской электростанции произошла худшая в мире ядерная катастрофа. Советские власти учредили 30км 'Запретную зону' вокруг этого ядерного пустыря, но в 2006 пораженный реактор потряс второй взрыв, уничтожая всех живых существ и заставляя границы Зоны разойтись.

Receiver got it only to "2006 пораженны", making mere 181 byte.
« Last Edit: 03 07 2014, 07:45:43 by Smiling Spectre »
 

Offline White-Tiger

  • Developer
  • *****
  • Posts: 182
  • Country: 00
  • SendSS maintainer
Re: Steam protocol
« Reply #61 on: 04 07 2014, 00:34:22 »
About Russian vs English...
well we mostly use UTF-8 today... which means "normal" characters use only 1 byte, but "weird" ones use 2+^^ (up to 4)
So Russian symbols will always use more then 1 byte per character... so the maximum message length is in both cases the same, just that Russian text eats more space.

 

Offline Smiling Spectre

  • Jr. Member
  • **
  • Posts: 66
  • Country: 00
Re: Steam protocol
« Reply #62 on: 04 07 2014, 04:47:40 »
So Russian symbols will always use more then 1 byte per character...
Yeah, I guessed that. It's the big issue on Steam with reviews - it supposedly gives quite enough symbols to make decent review, but in Russian it actually hardly quarter of named amount. I hit this limit several times already, so I know...

Meanwhile, two new issues:

5. When I am talking thru proprietary Steam client (opposite to browser one), it mirrored to Miranda too, but results are strange:

5.1. Mirrored replies are _very_ short (I got strings only 65-70 bytes long in Russian, everything above that was truncated).

5.2. When I talked from in-game chat (thru Shift+Tab), everything was allright - except bad mirroring. But when I went to the same chat window after game, it mirrored in the wrong encoding - "РћРє, будем считать," instead "Ок, будем считать,". Same results for replies to other respondents, without messing with in-game chats, so I believe, it's common Steam issue.
 

Offline unsane

Re: Steam protocol
« Reply #63 on: 04 07 2014, 19:07:23 »
Hello, Smiling Spectre. Thanks for report.
I couldn't reproduce 1, 2, 3. Can you repeat them or it was only once?
4. In my case text only cut in miranda->steam direction.
Si no estas con nosotros, estas contra nosotros.
 

Offline Smiling Spectre

  • Jr. Member
  • **
  • Posts: 66
  • Country: 00
Re: Steam protocol
« Reply #64 on: 05 07 2014, 14:46:38 »
I couldn't reproduce 1, 2, 3. Can you repeat them or it was only once?
1. It was only once at work, and once at home. Now at home (on cable) it works always, but at work (on ADSL) it cannot detect when line is broken, and even after reconnect it says "I wasn't able to send" for any message - until I take protocol offline and back online.

2. It's quite reproduceable for me, as at home, as at work. If I am changing to offline protocol status (opposite to changing global client status) thru menu Status->Steam->Offline, it hangs, eating processor. At home, on 4-cores 64x Win8.1 it eats about 33%, at work, on double-core 32x WinXP SP3 it's always 50%.

3. I am using "standard" Contact list (stdclist.dll), and there are 4 types of icon in Steam for me and 4 correspondent statuses: lit icon->online, unlit->offline, with "..." sign->away - all this three statuses the same as in Steam. But 4th - with "green spoon" icon - show me "lunch" status, but actually correspondent to "In-Game" and "Snooze" statuses (I haven't more friend statuses, so I have no idea what others can be). Ah, wait, I have also one "Looking to play" that translates to "online".
Quote
4. In my case text only cut in miranda->steam direction.
Hmm. It's always the same for me. Maybe I explained wrong? Let me try again to rephrase 4 and 5:

- If I am receiving messages from Steam, everything is allright.

- If I am sending messages, results depends of used client:

1. Messages sent from Miranda silently cropped after about 420 bytes for English text, and less than 200 for Russian. (I see it entirely in my history, it's recipient who doesn't receive it).

2. Messages sent from browser Steam client not cropped for recipient. (At least, for about 2kb, and it's not very rational to send more :). But if Miranda is running, simultaneously I am receiving "mirrored" copy of this sent message in Miranda. And this "mirrored" message cropped at about 1.2kb. Russian text was cropped only slightly shorter, so I suppose, it not depends on encoding here.

3. Messages sent from the in-game Steam chat automatically mirrored to out-game Steam chat (if I have correspondent chat window open) and to Miranda. But for Miranda it's cropped after mere 60-70 bytes for Russian (I didn't test English).

4. Message sent from the out-game Steam chat mirrored to Miranda too. But in that case Russian text not simply short, but have wrong encoding too.

Hope that helps.
 

Offline watcher

Re: Steam protocol
« Reply #65 on: 06 07 2014, 18:35:32 »
Binaries updated to r9716.
Пожалуйста, внимательно прочтите правила постинга перед тем, как открыть новую тему.
Please read forum rules.
 

Offline watcher

Re: Steam protocol
« Reply #66 on: 04 08 2014, 18:05:28 »
Testing builds from Steam protocol experimental branch (testing purposes only, some things that used to work might be broken, use at your own risk):

Changes include:

- Internals of plugin were re-worked, now it supposed to work almost the same way that Steam does in web browser.
- Messages cut-off problem should be fixed.
Пожалуйста, внимательно прочтите правила постинга перед тем, как открыть новую тему.
Please read forum rules.
 

Offline Vulpix

Re: Steam protocol
« Reply #67 on: 06 08 2014, 18:46:36 »
I have a strange issue where if I try to message a user, the message is never sent. (Using the latest binaries you just posted, the "completely different" ones). When I revert, Miranda doesn't connect to Steam at all. Anything I should do?

I use latest everything (pluginupdater, set to nightlies)

EDIT:
I was able to log in using the old plugin after I "wiped" the steamguard settings for all of the devices from the steam account settings.
« Last Edit: 07 08 2014, 09:17:00 by Vulpix »
 

Offline Vulpix

Re: Steam protocol
« Reply #68 on: 10 08 2014, 13:45:04 »
I have a strange issue with the latest x64 steam plugin (not the one that you just posted, but the latest "normal" binary.

When I look into steam protocol history, I sometimes see the messages strangely duplicated. The duplicates seem to be missing letters/words from the left, and the also appear as if they were sent by the other party rather than by me (which was the original case). See example below:

Quote
Vulpix, 8.8.2014 19:51:36:
And thank you for the flacpix~

<party B>, 19:51:42:
u for the flacpix~

<party B>, 19:51:56:
u for the flacpix~

<party B>, 20:54:02:
u for the flacpix~

<party B>, 20:54:16:
u for the flacpix~

Obviously all of the above are my message "Thank you for the flacpix~"

Also, the messages are attributed to the wrong user as you can see - even though I sent them, they seem to be attributed to party B.

Some more examples:

Quote
Vulpix, 9.8.2014 0:42:51:
See you (probably a lot later)!

<party b>, 1:15:29:
 a lot later)!

<party b>, 1:15:35:
 a lot later)!

<party b>, 1:17:06:
 a lot later)!


The strange thing is that the history events actually coincide with the user's actual message. It's as if their message TEXT was substitured for the text of my LAST message, while the timestamps remain the same:

Quote
Vulpix, 9.8.2014 20:37:15:
How are you~

<party b>, 20:51:28:
How are you~

<party b>, 20:51:32:
w are you~

<party b>, 20:51:34:
w are you~

<party b>, 20:52:52:
are you~

<party b>, 20:52:52:
><

Here you can see "How are you" from me (which I did send), but then later "how are you" from party b - which I didn't send; party B said something along the lines of "are you still here?" and then "oh no..." and then " >< ". From what I see, in the history, I can only see that last >< - nothing else is preserved.


Also, when I check history, sometimes I see absolutely garbled text that looks chinese:


<party b>, 9.8.2014 14:13:44:
瑳渠瑯甠敳愠祮漠桴牥愠灰楬慣楴湯⁳牯愠祮桴湩Ⱨ栠桥⹥礀桴湩Ⱨ栠桥⹥㨀ü퀀ᖺ

But this was in fact a link to a 3Dmark result and a question mark:

"http://www.3dmark.com/3dm/3750573 ?"

It feels as though the history entires are somehow overwriting some events and/or merging themselves together.

I am able to reproduce this and I can supply more logs or whatever you need! :)

Currently, the only activated protocols are steam and AIM.

VersionInfo
Quote
CPU: Intel(R) Core(TM) i7-4765T CPU @ 2.00GHz [Intel64 Family 6 Model 60 Stepping 3] [DEP enabled] [8 CPUs]
Installed RAM: 16329 MBytes
Operating System: Microsoft Windows 7 Ultimate Edition, 64-bit Service Pack 1 (build 7601)
Shell: explorer.exe
Internet Explorer: 8.0.7601.17514 (build 87601)
Administrator privileges: Yes
OS Languages: (UI | Locale (User/System)) : English/English | Czech/Czech
Free disk space on Miranda partition: 1211484 MBytes

Miranda path: D:\Programs\Programs\Miranda NG
Miranda NG version: 0.95.3 alpha build #10140 x64
Build time: 10 Aug 2014 5:52:48
Profile path: D:\Programs\Programs\Miranda NG\Profiles\Vulpix\Vulpix.dat
Profile size: 126528,00 KBytes
Profile creation date: 26 Oct 2013 17:24:40
Language pack: No language pack installed
Service Mode: No

Active Plugins (45):
  AddContactPlus.dll v.0.9.9.2 [14 Feb 2014 6:47:44] - Add contact+
  AdvaImg.dll v.0.11.0.1 [2 Jan 2014 6:45:32] - Miranda image services
  AIM.dll v.0.11.0.1 [6 Aug 2014 5:43:44] - AIM protocol
  AssocMgr.dll v.0.1.1.0 [6 Aug 2014 5:48:32] - File association manager
  AuthState.dll v.0.0.2.1 [14 Feb 2014 6:46:26] - Authorization state
  AvatarHistory.dll v.0.1.0.1 [6 Aug 2014 5:48:38] - Avatar history
  AVS.dll v.0.95.3.1 [6 Aug 2014 5:43:28] - Avatar service
  ClientChangeNotify.dll v.0.1.1.3 [8 Aug 2014 5:48:56] - Client change notify
  Clist_modern.dll v.0.9.1.1 [6 Aug 2014 5:46:24] - Modern contact list
  Contacts.dll v.1.6.0.0 [6 Aug 2014 5:44:42] - Send/receive contacts
  CrashDumper.dll v.0.0.4.22 [1 Jul 2014 5:49:48] - Crash dumper
  CSList.dll v.0.1.1.0 [16 Mar 2014 0:38:54] - Custom status list
  DbEditorPP.dll v.3.2.0.1 [9 Aug 2014 5:45:02] - Database editor++
  Dbx_mmap.dll v.0.95.1.3 [10 Aug 2014 5:45:38] - Miranda NG mmap database driver
  FileAsMessage.dll v.0.0.2.4 [18 Jun 2014 12:59:54] - File as message
  Fingerprint.dll v.0.1.0.0 [6 Aug 2014 5:48:28] - Fingerprint NG
  Flags.dll v.0.1.0.4 [14 Feb 2014 6:46:34] - Country flags
  Folders.dll v.0.2.0.1 [5 Mar 2014 6:43:36] - Custom profile folders
  GTalkExt.dll v.0.1.1.0 [25 Apr 2014 5:47:18] - GTalk Extension
  HistoryPP.dll v.1.5.1.5 [22 Jul 2014 11:48:30] - History++
  ChangeKeyboardLayout.dll v.0.0.1.6 [13 Jun 2014 9:39:12] - Change keyboard layout
  ICQ.dll v.0.11.2.5 [6 Aug 2014 5:44:12] - IcqOscarJ protocol
  IEView.dll v.1.4.0.0 [6 Aug 2014 5:44:54] - IEView
  IgnoreState.dll v.0.0.3.0 [23 May 2014 5:50:32] - Ignore state
  Jabber.dll v.0.11.0.4 [6 Aug 2014 5:44:40] - Jabber protocol
  KeepStatus.dll v.0.9.0.2 [12 Jun 2014 5:43:16] - Keep status
  mTextControl.dll v.0.8.0.1 [12 Jun 2014 5:42:58] - Miranda text control
  NewXstatusNotify.dll v.1.4.0.10 [6 Aug 2014 5:44:56] - xStatus notify
  Nudge.dll v.0.1.0.1 [6 Aug 2014 5:44:58] - Nudge
  OpenFolder.dll v.1.1.0.0 [29 Jun 2014 5:49:20] - Open Miranda folder
  PluginUpdater.dll v.0.1.2.2 [6 Aug 2014 5:47:38] - Plugin updater
  PManagerEx.dll v.0.0.0.5 [6 Aug 2014 5:47:42] - Miranda NG profile changer
  Restart.dll v.0.0.6.0 [9 Jul 2013 6:56:52] - Restart
  SeenPlugin.dll v.5.0.4.9 [6 Aug 2014 5:45:02] - Last seen
  SimpleStatusMsg.dll v.1.9.0.4 [2 Jul 2014 5:43:44] - Simple status message
  Skype.dll v.0.11.0.2 [7 Aug 2014 5:54:16] - Skype protocol
  SmileyAdd.dll v.0.2.3.17 [6 Aug 2014 5:45:16] - SmileyAdd
  StartPosition.dll v.0.2.0.3 [29 Jun 2014 5:50:44] - Start position
  Steam.dll v.0.11.0.1 [25 Jul 2014 18:22:48] - Steam protocol
  TabSRMM.dll v.3.4.0.2 [8 Aug 2014 5:46:46] - TabSRMM
  TopToolBar.dll v.0.8.0.3 [6 Aug 2014 5:46:08] - TopToolBar
  UInfoEx.dll v.0.8.5.0 [6 Aug 2014 5:45:40] - User info ext
  Variables.dll v.0.2.3.10 [6 Aug 2014 5:51:02] - Variables
  VersionInfo.dll v.1.5.0.3 [6 Aug 2014 5:47:16] - Version information
  Yahoo.dll v.0.11.0.1 [6 Aug 2014 5:44:08] - Yahoo protocol

Unloadable Plugins (1):
  ImportTXT.dll v.0.0.0.0 [27 Dec 2012 6:42:59] - <unknown>
    Plugin statically links to missing dll file: pcre3.dll


Weather ini files:
-------------------------------------------------------------------------------
[close]
« Last Edit: 10 08 2014, 13:46:55 by Vulpix »
 

Offline Robyer

Re: Steam protocol
« Reply #69 on: 10 08 2014, 21:46:47 »
I have a strange issue with the latest x64 steam plugin (not the one that you just posted, but the latest "normal" binary.

There is no point of using older version. It's not going back. Use latest version and report errors of it. You said you can't send messages - try to capture network log with it.
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 watcher

Re: Steam protocol
« Reply #70 on: 11 08 2014, 06:28:25 »
There is no point of using older version. It's not going back. Use latest version and report errors of it. You said you can't send messages - try to capture network log with it.

No - latest testing build (different branch) is here only for authorization and message sending test, it's pretty much still unusable - it's recommended by author to still use binaries from the first post of this tread  for general usage.
Пожалуйста, внимательно прочтите правила постинга перед тем, как открыть новую тему.
Please read forum rules.
 

Offline Robyer

Re: Steam protocol
« Reply #71 on: 11 08 2014, 08:34:39 »
watcher, oh, sorry for my misunderstanding. But still - old version may be recommended for "general usage", but bugs should be (IMHO) reported on latest version, no? Otherwise it doesn't make much sense (unless this whole new version with "web api" is just an experiment).  ???
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

Re: Steam protocol
« Reply #72 on: 11 08 2014, 21:35:06 »
It sounded like an experiment to me :o I tried it, but it broke everything horribly x3 I was essentially unable to reply to people after sending the first reply. If data is required for that, I can supply; but it kinda feels like this should be reproducible for anyone.
 

Offline Smiling Spectre

  • Jr. Member
  • **
  • Posts: 66
  • Country: 00
Re: Steam protocol
« Reply #73 on: 26 08 2014, 04:15:47 »
I am using 0.11.0.1 (with shortened messages), and it looks quite good for me (most annoying error - with total hang after going on/off thru protocols - went away after Miranda updates). I need "full" message transfer that exist in the "experimental" build, but I didn't touch it yet. Still there is one issue that bothers me now and again.

Steam protocol doesn't track it's own status. It's most important during internet shortage or going to hibernation (both cases are quite common for me). All other protocols correctly detects that line was off and goes offline. Not Steam. It simply stops updating, "freezing" friend status in last seen state. I am usually noticing it when new Steam pop-up window appears from Steam client - and nothing in Miranda. :( Turning Miranda offline/online fixes problem, obviously.

Can it be changed to "standard" net update behavior, please?
 

Offline Vulpix

Re: Steam protocol
« Reply #74 on: 26 08 2014, 06:36:41 »
Yeah! It's pretty much the same for me actually. Thing is, I do neither of these things - sometimes, steam just goes offline because of steam servers going off (or whatever really) - and then I cannot send messages to any of my friends anymore.

It'd be neat if what the poster above me says was implemented :)