C1rdec / Poe-Lurker

Ease your trading experience in Path of Exile.
MIT License
564 stars 53 forks source link

International / weird characters make whispers ignored #270

Closed ofbeaton closed 3 years ago

ofbeaton commented 3 years ago

Describe the bug If someone whispers who has weird characters in their names, like many symbols, or chinese or Korean characters which is super common at the time of day I play, then the incoming whisper is not picked up at all.

For outgoing whispers, if the name has weird characters in it, it won't show up in the outgoing list of whisper drawer at all.

for the record I am in NA on the English client.

To Reproduce Steps to reproduce the behavior:

  1. Receive any whisper from any person with korean characters in their name
  2. No offer button shows up.

Expected behavior Offer button should show up for incoming trades, and the name should be added to outgoing drawer for outgoing.

Please complete the following information:

Additional context For example, the name @뉴비뜨미 breaks poe lurker. Sometimes the name is not clearly Korean or Chinese, but the person used a special character that looks normal to get around duplicate name restrictions, and this breaks too.

I don't know how you're dealing with encoding, or if the encoding of the poe chat log matters (it probably does), but my first guess is "utf8" has something to do with it.

This has been happening a lot and I was just doing my trades the old fashion way when it happens. I'd say at least a quarter of my trades have special characters in them, especially after midnight ET.

If you need or would like more examples, I can try to reply with more examples as they happen.

C1rdec commented 3 years ago

Please look at closed issue #4

Its regarding korean poe client.

ofbeaton commented 3 years ago

edit: ah, you are correct. I checked the client.txt and the whisper is not there. So this has to be a Korean client, even if the name was not in Korean.

My previous message, no longer valid.

Not just the Korean client. It seems more an issue of the encoding of the client.txt file.

I noticed just now @POE_VERA failed to be picked up, because the GUILD tag had utf8 chars in it. Couldn't this case be handled, since guild tags are not used when whispering?

image

ofbeaton commented 3 years ago

edit: you are correct, these are Korean whispers, not unparsed whispers, so they are not in the file at all. poo.

my previous incorrect message and ramblings, please disregard:

Also likely extremely impractical and of dubious use, would be a way to feed poe-lurker the proper name. For example if I CTRL-ENTER to reply, then SHIFT-HOME to select the text, I could hit a poe-lurker hotkey to "copy" the text. If this text starts with @ it could be assumed to be the correct name. You could then display a list of recent unparsed whispers, letting them click on the whisper that the person. I doubt fuzzy matching against the client.txt would work well for most cases of korean characters.

but even typing that out I think it's probably error prone and a bit confusing.

Still I can't think of any reason the guild tags case can't be fixed.

Also, now that I am thinking about it, one of the things I use poe-lurker for is to highlight the item. So even if the name doesn't parse and I can't invite/kick/whisper with it, I would still like to be able to alt-click and keep track of the trade. You don't need the name for that, or you can display the mangled name even as a hint.