[HN Gopher] discordo: Lightweight, secure, and feature-rich Disc... ___________________________________________________________________ discordo: Lightweight, secure, and feature-rich Discord terminal client Author : ducktective Score : 59 points Date : 2022-08-15 19:26 UTC (3 hours ago) (HTM) web link (github.com) (TXT) w3m dump (github.com) | lbrito wrote: | What do you disagree with? | | EDIT: wow, people really hate jokes. No fun allowed! | agluszak wrote: | Discord and other biggest communication platforms should be | legally required to provide a fully featured API. Forbidding | users from writing and using 3rd party clients is outrageous. | tptacek wrote: | Why? What else should I be able to demand from other people's | products, simply by dint of their products fitting a particular | description? | neoromantique wrote: | Demanding opening and tolerating programmatic access to an | extent would probably be a good thing tbh, even if from | accessibility PoV. | | Make it opt-in with advanced user verification if you want to | fight spam, not simply blanket ban everyone whose data you | can't monetize easily :shrug: | tptacek wrote: | It's not just spam; in fact, spam might be the least of it. | Part of the reason companies require specific clients is | that doing so makes it easier for them to build the product | and deliver the specific value that they've decided they | want to deliver. | HidyBush wrote: | Discord clients can't magically implement features that the | Discord API doesn't have. The only thing they can do is | personalize the experience locally, maybe by changing the | interface or implementing more comfortable defaults and | shortcuts. This is not a case of a Discord client offering | Nitro (i.e. paid) features for free, to get the paid features | you have to authenticate yourself through the API meaning | Discord still gets the money and everyone's happy. | tptacek wrote: | Why should companies that build products with serverside | components be required to let you build your own clients? | What you're saying when you make this demand is that it | should be unlawful to build closed systems (or: unlawful to | build closed systems if there's a network API anywhere in | them). | HidyBush wrote: | The moment you have a publicly facing API you are saying | "these are the rules to talk to us". It doesn't matter | what the client is, if it follows the rules then it | should work. | | A website is a publicly facing API and if two different | browsers can talk the HTTP protocol and implement all the | other APIs the website requires then you shouldn't be | blocked from accessing the website through one of them | tptacek wrote: | You're not really answering my question. "One of the | rules of this API is that you exclusively use this | client" is an expressible rule. What gives you the right | to dictate the terms that other people build by? I don't | understand the principle here. | HidyBush wrote: | How can a server know I'm using a different client if all | the features are implemented? The condition that you may | not use a third party client cannot be imposed by the API | but is stipulated externally. | Firmwarrior wrote: | I'll explain why I want the right to dictate the terms by | which software on my computer talks to software on other | people's computers. It's because it's relatively easy to | customize local software to work in ways I and other | people want it to, and the only thing stopping us from | doing so is arbitrary draconian laws and rules. This | results in situations where you can't access a lot of | straightforward websites and services unless you download | an "app" that's actually just a wrapper around a web | browser and a bunch of spyware, and it makes it | impossible for people with various minor disabilities to | use a lot of services comfortably. | | The rule right now is "Any jerkoff can dictate what is | and isn't allowed to run on my computer" and I would like | to change that rule to "I'm in charge of what runs on my | computer, you're in charge of what runs on your | computer". | prvit wrote: | > and I would like to change that rule to "I'm in charge | of what runs on my computer, you're in charge of what | runs on your computer". | | Who is forcing you to install Discord? | spion wrote: | A study group, a programming community, any social group | that you want to be a part of and they've decided to use | Discord. | | Don't like the Discord client or have trouble using it? | Pay the price of not participating in dozens of | communities you would like to participate in. | psanford wrote: | Indeed. Discord also works just fine in a browser where | it doesn't have any privileged access to your system. | citizenkeen wrote: | While I understand your sentiment, no jerkoff is | dictating what is and isn't allowed to run on your | computer. You're always welcome to use something other | than Discord. | neoromantique wrote: | At certain size companies should become platforms. | Discord is just about there I feel. | cartesius13 wrote: | You are in charge of what runs on your computer, nobody | is forcing you to use Discord. | | There's no jerk dictating what is allowed to run on your | computer, there's someone offering a piece of software | that you can willingly install on your computer if you | want. | | If you don't want that, you're always free to not use the | software or use workarounds to avoid the things you don't | like. | | I, for example, hate ads and use adblock always. But I | don't think it's fair for me to go and say that everyone | should _forced_ to not put ads on their stuff. | | I'm not a fan but I understand that I have no right to | dictate what people do with their software | spion wrote: | This is not true for platforms. If a community decides | they're going to use Discord, then you, the individual, | are out of luck. You either use that or miss out on the | community or convince the entire community not to use | Discord. | tptacek wrote: | How is that different from, say, being forced to buy a | PS5 or an X-whatever to participate in a gaming | community, or to get a Spotify membership to hear a | particular podcast? | spion wrote: | They aren't very different. With Spotify we actually gave | up a lot of power that custom clients had for the lowest- | common-denominator sort of stuff, which is really sad. | | With each of these products we keep giving up more and | more of the powerful variety that was available before. | While the average person doesn't lose much, the average | person doesn't really exist and we've really lost a lot | of long tails of value. | tptacek wrote: | I see the potential value, I just don't understand the | principle that enables us to dictate that private | companies provide it to us. | troops_h8r wrote: | The same principle behind antitrust laws: dismantling | monopolies is good for the public and good for innovation | jelly wrote: | The demand isn't being made to the product side; Discord and | other chat clients already have a chat API which their | clients authenticate and talk to, it's all already built and | user-facing. They already distrust their clients. They | already made everything a third party client would need. | | It's a policy change, not a product change, and demanding a | company adjust their bad policy is totally normal. | e12e wrote: | They are in various ways more like utilities than products - | like other utilities they/we would benefit from regulation - | leveling the playing field and helping future proof these | services. | CapitaineToinon wrote: | I cannot wait not to use it because it's against ToS | [deleted] | smoldesu wrote: | Super cool to see this underway, I've been waiting for a cordless | replacement for a while now! | hprotagonist wrote: | will you get banned for using it like you will for every other | alt client? Automated user accounts or "self- | bots" are against Discord's Terms of Service. I am not | responsible for any loss caused by using "self-bots" or Discordo. | | hmm. seems like no. | [deleted] | madars wrote: | Official Twitter account: | | >All 3rd party apps or client modifiers are against our ToS, | and the use of them can result in your account being disabled. | I don't recommend using them. | | https://twitter.com/discord/status/1229357198918197248 | | Thus it looks like in practice you can't have a client that has | local chat history, local search, or just better information | density on the screen, and simultaneously hope to not have your | account nuked. | lifthrasiir wrote: | Note that this is a slightly different way to phrase the | actual ToS [1]: | | _You may not copy, modify, create derivative works based | upon, distribute, sell, lease, or sublicense any of our | software or services. You also may not reverse engineer or | decompile our software or services, attempt to do so, or | assist anyone in doing so, unless you have our written | consent or applicable law permits it._ | | In the other words, they want to disallow derivative works as | long as law permits. There are two possible workarounds: | | 1. If your software doesn't actually depend on Discord | clients and servers at all, for example AutoHotKey macros, | you would be probably fine as they wouldn't be derivative | works. Legal 3rd-party clients may be created with this way | (I haven't seen any such attempts though); create a virtual | desktop where the official client runs and reconstruct an | alternative interface from screen captures, in principle. | | 2. They can only do things allowed by the law. Reverse | engineering in particular is allowed in many jurisdictions | when it's necessary to operate with other programs or | devices, and a virtual desktop mentioned in 1 may qualify for | this (but: IANAL). If a broader allowance is desired though, | the law has to be changed. | | [1] https://discord.com/terms | madars wrote: | They also have: | | >We reserve the right to block, remove, and/or permanently | delete your content for any reason, including breach of | these terms, our Community Guidelines, our other policies, | or any applicable law or regulation. | lifthrasiir wrote: | This is a wrong paragraph to cite, because "your content" | does not include an "account" (the ToS is very clear | about this). The relevant paragraph would be the | following: | | _Subject to applicable law, we reserve the right to | suspend or terminate your account and /or your access to | some or all of our services with or without notice, at | our discretion, including if:_ | | _- You breach these terms, our policies, or additional | terms that apply to specific products._ | | _- We're required to do so to comply with a legal | requirement or court order._ | | _- We reasonably believe termination is necessary to | prevent harm to you, us, other users, or third parties._ | | _- Your account has been inactive for more than two | years._ | | Given the current ToS using a third-party client already | qualifies as an explicit reason for the account | suspension and it doesn't seem to be wise to risk that. | Yes, they still reserve the right to suspend your account | for other unstated reasons, but that's another matter. | keb_ wrote: | You don't get banned for using Ripcord since it uses the same | APIs as the web client. | fouric wrote: | What prevents Discord from doing a synchronized change of | their web client and server APIs and using accesses to the | old API to detect Ripcord users, then banning them? | lima wrote: | Nothing whatsoever. | keb_ wrote: | Nothing, but in doing so, they'll likely ban non-Ripcord | uses who are using outdated clients as well, followed by a | bunch of support tickets by confused users. | benbenolson wrote: | Yeah, this is what I use, and I've not been banned or | anything. | | I have been locked out of my account, though. There was a | week during which I got locked out, and had to re- | authenticate with 2FA to get into my account, once a day. | However, they eventually stopped doing that after enough | support tickets rolled in, and Ripcord has been rippin' along | ever since. | baal80spam wrote: | I'm using Ripcord for over 3 years now and love it. | euclaise wrote: | It has happened before https://annaclemens.io/discord | keb_ wrote: | Yes, I remember when this happened. Everyone who got banned | had their accounts unbanned (I was not banned however, and | I've used Ripcord daily since 2018). You were also just as | likely to have gotten banned if you used an outdated | Android client. | stepupmakeup wrote: | If they're willing to lie about using a third party client | (which is what they did to initially reach front page here | many moons ago), I'd wager they were actually attempting to | automate their actions instead of "BANNED after manually | pressing 6 buttons". | Operyl wrote: | Yes, you likely will. They have heuristics that will snuff out | custom clients, and it's frequent to see people get nabbed by | this. It's unfortunate, because from an abuse perspective I | understand why (they have issues with spam from user accounts | joining guilds and spamming users with "Free Nitro" (premium | membership for Discord)). | zorkian wrote: | (I work at Discord and manage our Infrastructure, Security, | and Safety engineering organizations.) | | We currently don't intentionally block or disable third party | clients or action the accounts of people who use them. | | We do monitor the traffic of spammers and we build heuristics | around how to identify them -- and sometimes third party | clients get caught up in that. Cold comfort, I know, but it's | not us trying to block/come after well-behaved third party | clients. | | Anyway, to OP, good luck with discordo! For one of our | internal hack weeks a few years ago I tried to build an | RFC1459 compliant Discord gateway... it was a fun POC, but | definitely lots of rough edges because the paradigms don't | exactly match up. :) | game-of-throws wrote: | Is it possible those heuristics could accidentally trigger | for browsers other than Chrome? I had an old account where | I normally used the android app, then one day I logged in | with Firefox on desktop (with adblocker) and my account was | banned about a minute later. | | At a business level, can you share why the ToS forbids | third party clients at all? We all know that "trusting the | client" is not a viable security plan, so why does it | matter what client people use? | [deleted] | Operyl wrote: | Eh, this reads weird to me. So third party clients are | "ignored," but things like Better Discord which modify the | first party client are explicitly not kosher? I'd love for | better clarification around this at some point honestly. | BoorishBears wrote: | Clearly Discord as a corporation is not ok with third | party clients or modifications to the client. | | But the engineers who would be in charge of enforcing | those rules do not spend time explicitly seeking out | third party clients or modifications. They instead look | for "non-standard behavior", which may incidentally catch | either. | | PS: This is why you don't speak about your employer's | business unless asked to by your employer. | Operyl wrote: | Which brings me back to my initial post, despite the | (mind you, high level engineer)'s opinion, you should | probably stay way clear. Support will just not help you | in certain situations, and it's not worth the risk. Was | surprised to even see a reply from him, Discord the | organization has typically been _very_ clear it's not | kosher. | ducktective wrote: | disclaimer : I'm not involved in the project in any way. I | just posted for publicity. | scohesc wrote: | That's the really frustrating part about this - I understand | they want to keep their walled ecosystem/garden/whatever for | whatever reasons they want. | | I just wish I could customize discord's GUI so: | | -The GUI have so less empty space | | -Have a "compact" version where it just shows the users in | the channel and who's speaking, and compact view of a chat | channel. | | The default window is just an absolute PAIN, it doesn't go | smaller than a certain size and it just has so much | irrelevant information not pertinent to the voice/video call | I'm in or who I'm chatting with. | | Maybe I'm the boomer longing for individual/group chats a la | MSN messenger 20 years ago. :O | Operyl wrote: | > Maybe I'm the boomer longing for individual/group chats a | la MSN messenger 20 years ago. :O | | I know, right? The thing is, the vast majority of the | generation using this don't have these qualms, it works for | them. This must be how it felt like when we stopped used | corded phones, haha. Or hand written stuff to type | writers.. | Firmwarrior wrote: | I think the really frustrating part is that tons of | knowledge and discourse is getting blackholed into | Discord's walled dumpster where it's not searchable and | likely to disappear forever within a few years | est31 wrote: | FTR there is a compact setting for discord. I use it | together with 80% zoom so that it has a "normal" font size. | Turns it into an actually usable product :). | ronsor wrote: | I would better understand why if I wasn't still seeing | people's accounts getting hacked regularly and spammers going | around with botted accounts. Spammers also generally don't | care if their accounts get shut down after a few days. | Operyl wrote: | It was so so so much worse before, to be fair. We just see | the limited stuff that does get through, for better or for | worse. | ranger_danger wrote: | > lightweight | | > golang | | yet another terminal discord client that will be abandoned | shortly ___________________________________________________________________ (page generated 2022-08-15 23:00 UTC)