14 ms·
The not-so-talked-about but killer feature of Matrix is that you can bridge other services into it. I'm currently able to send and receive messages from Hangout
by mikenew 7y ago
The not-so-talked-about but killer feature of Matrix is that you can bridge other services into it. I'm currently able to send and receive messages from Hangouts, iMessage, SMS, and Slack all from within Matrix. If I'm working on my laptop I can put my phone in my bag and not even touch it for 8 hours, because there's no need. I have Riot running on my laptop with a full keyboard and access to all my communication platforms.
It's not exactly easy to do (iMessage requires a dedicated Mac, for example), but it's possible. And it works pretty well. Pulling out my phone to tap out an SMS when I have a full keyboard in front of me seems silly at this point. Hopefully the bridging will continue to evolve and become more accessible to the average user, because it's amazing.
- ixwt 7y agoIs this difficult to setup? How much of the data do you control?
- lytedev 7y agoIt's not super easy, I'll say, but you have all the data and it's searchable in the Riot client.
- lytedev 7y agoHuge props to the Matrix team! It's given me back ownership of my messages for which I am very grateful. Simple integration is a really killer feature! I'm not sure why every matrix post seems to be met with a lot of negativity here on HN, but I always appreciate the way devs handle it. Well done!
- dustinmr 7y agoCan you point to any tutorials/articles/documentation? I got off Mac for Linux or Chromebook with the whole keyboard horror. About the only thing I miss is a full keyboard for sms & iMessage. And I have an old Mac Mini laying around that could be put to use if necessary.
- mikenew 7y agoIt very much depends on the kind of bridging you want to do and on the service you want to do it with. My iMessage bridge, for example, is a "double puppeted bridge", meaning the people receiving messages from me via iMessage don't even know I'm using a different service, and they show up in Matrix as if I got a message from a matrix user. It's also possible to bridge the contents of an entire room (on, say, Slack or Discord) into a matrix room. The two rooms mirror each other and anyone who talks in either room has their messages relayed to the other. A good place to get a basic rundown would be here: https://matrix.org/docs/projects/bridges https://matrix.org/docs/projects/bridges For the puppet bridges (which is what I'm running), you can take a look at this repo: https://github.com/matrix-hacks/matrix-puppet-bridge https://github.com/matrix-hacks/matrix-puppet-bridge. You're also very welcome to ask around in #matrix-puppet-bridge:matrix.org about getting the bridges set up. We're pretty friendly in general :)
- wishinghand 7y ago> iMessage requires a dedicated Mac, for example You had me really excited until this part. I'm moving away from a Macbook soon and my most missed feature will be desktop texting.
- roland-s 7y agoIf you're willing to ditch iOS, Android has Messages for Web (an official service by Google) which lets you view/send SMS from any browser and supports file attachments etc. It's pretty great.
- mikenew 7y agoYeah sorry :/ There isn't an iMessage API to talk to, so the only way that anyone has found to bridge with iMessage is to have an instance of macOS running, logged in as you, and to send messages through the iMessage app via AppleScripts and to watch the filesystem for incoming messages. It would be great if there were some API you could use to send messages through, but Apple has worked hard to keep iMessage locked down to Apple devices. Having said that, I bought an old Mac Mini off of ebay for about $100, and it's been working pretty well for the past year or so. It's not an easy solution, but as far as I know it's the only solution for using iMessage on an Android or non-macOS desktop.
- tbrock 7y agoI’ve been wanting to do this since I run a Linux desktop and laptop. What software did you use to make it work?
- Stubb 7y ago> Pulling out my phone to tap out an SMS when I have a full keyboard in front of me seems silly at this point. Responding to SMS encourages people to keep using it.
- A1B73A63 7y agoI wish you the best of luck getting everyone you communicate with to stop using SMS.
- cedex12 7y agoIs that bad?
- Funes- 7y agoI'd bet he's implicitly expressing his concerns about SMS's vulnerabilities in terms of security, especially compared to other, more secure alternatives.
- r3bl 7y agoI wouldn't call it bad, but I would call it incredibly expensive if you're using non-English alphabet. Try filling out all the characters available within a single message, then replace one of them with something unusual (let's say "ć" for example). What used to fit into a single SMS will now be three.
- defanor 7y ago> The not-so-talked-about but killer feature of Matrix is that you can bridge other services into it. It seems to be getting brought up each time Matrix is mentioned, with a standard reply that it's not unique, and available in XMPP for a while.
- chrismorgan 7y agoThis interests me, as a potential user; but it’s only a killer feature if it’s accessible. I start by looking into Hangouts matters, because I use Hangouts to talk to some of my family, currently only on my phone and not on my laptop; and I see three projects listed in https://matrix.org/docs/projects/try-matrix-now https://matrix.org/docs/projects/try-matrix-now: matrix-appservice-hangouts, mautrix-hangouts, and Hangouts Bridge. https://matrix.org/docs/projects/bridges/#hangouts https://matrix.org/docs/projects/bridges/#hangouts lists two, matrix-puppet-hangouts and matrix-appservice-hangouts. Bridge, puppeting bridge, appservice—I have no idea what any of this means. I’m generally hoping for something like an instruction to install a piece of software on my laptop with `curl … | sudo bash` or some unsigned .exe or something. (Are any of these things basically a Matrix server that I could run on localhost, or do they slot into a Matrix server that I’d need to host elsewhere?) And so I give up. The content formatting of those pages on matrix.org was super-ugly anyway, it’s clearly either not a good product or not for normal people. (This remark may seem harsh, but this is how most will think.) What do I need to do for all of this to get Hangouts, SMS and Slack working in Matrix? Is Matrix ever going to focus on users and make questions like this easier to answer, or will it remain a niche product that I should not bother with?
- shaan7 7y ago> or not for normal people Given that the documentation you're reading is for sysadmins, it shouldn't be a surprise that its not targeted to end-users (assuming that is what you meant by "normal people") > but it’s only a killer feature if it’s accessible. Again, depends on your definition of accessible. Personally, if there is a feature I really like, I don't mind being patient and spending couple of hours to understand the docs. I'm not denying that Matrix needs to improve the issues that you've pointed out, but that shouldn't make one disregard how useful it is.
- mikenew 7y agoMaybe "killer feature" was the wrong way to put it. Matrix has good support for things like bots and bridges, but those bridges are written by people like myself who are mostly just trying to hack something together and make it work. Over time they're becoming more solid and easy to use, and hopefully at some point it will just be a matter of `pacman -S hangouts-bridge` or whatever. For certain things it's pretty easy. Bridges like IRC, Gitter, and Slack are a couple clicks from within the Riot app, although you do have to go goof around in the settings for those third party services to get it talking to Matrix. There's also starting to be some hosted services for bridging public rooms where you can just invite the bridge bot to the room to get things going. Like here: https://t2bot.io https://t2bot.io The thing that I find particularly exciting about Matrix is that it 1) has support for doing that kind of thing, and 2) it can scale pretty gracefully from a 1-to-1 chat all the way up to a room with thousands of users. So you can (even if it isn't always easy, currently) bridge a 1-to-1 Hangouts chat, or a Slack room with a few dozen people, or a Discord server with thousands. I'm not trying to oversell it right now. Many of the bridges are difficult to set up and not really something the average user will be able to do (although there are many that are). But it's pretty damn cool that we're able to do it, and I expect it to get easier as things progress. Matrix itself is only just now leaving beta, and even then the reference server is slow and still missing some big features. So the "extra" stuff written by the community is going to take a while to develop into "click to enable".
- bubblethink 7y ago>The not-so-talked-about but killer feature of Matrix is that you can bridge other services into it This is useful, but why is it killer ? Stuff like this has always existed even with IRC or XMPP. The annoying part with all these proprietary services is reverse engineering their APIs and APIs not being stable etc. Once you do the main legwork, can't you pipe it to anything, whether it's Matrix or not ? What does Matrix add to this ?
- ATsch 7y agoWell, not directly, but for seamless bridging to work properly, your protocol must support being able to mock users easily. Many new protocols simply don't allow that. This means you need to fall back on a protocol session per user (like with IRC, telegram, etc), Bot Api hacks (Discord, Slack), or, worst of all, putting the name of the chat participants into the message. Unlike that, matrix has the concept of Application Services, which are priviledged "users" that can pretend to be any number of users that are bridged over from other protocols.
- ubercow13 7y agoIs that any use when the bridged protocols don't support mocking users? It might look a bit cleaner to you in your Matrix client but not to the users on the other services
- cheez 7y agoTo the other users it looks just like you normally would, no?
- ubercow13 7y agoI thought the idea is that there is one bridge running per room. For example a discord room would be bridged to a matrix room by one running bridge. In discord, unless the API allows impersonating multiple users so that they appear as normal users in discord, the bridge couldn't mirror messages from all users in the matrix room and make them look like discord users. Unless I am misunderstanding how it works completely?
- zaarn 7y agoProbably not so talked about because, in my experience, it barely works. The bridges I've tried to install were either largely outdated for either matrix or the service it's federating to (Discord for example), or dropped a lot of messages going through (Slack, IRC), or had incredibly annoying limitations (SMS, Hangouts). I don't see how that is a "killer feature" if it's barely developed.
- Arathorn 7y agoThe bridging API in matrix hasn’t really changed since day 1, so unsure how they can be outdated for Matrix. For something like Discord, folks are constantly hacking on the bridge; PRs merged 5 days ago on https://github.com/Half-Shot/matrix-appservice-discord https://github.com/Half-Shot/matrix-appservice-discord for instance, and last I checked it worked relatively well and targets the highest common denominator of functionality between Matrix and Discord. Lost messages sounds like the server is overloaded (certainly there is performance work still to be done). Unsure it’s fair to say that it’s barely developed...
- zaarn 7y agoWell, here is my experience with the discord bridge: I installed the bridge and provided as the readme specified all the config options. Upon startup it started spamming requests at my matrix instance all of which were failing. After some tinkering I got it to relay about 70% of the messages from discord to my matrix instance and about 80% of my messages to discord. The server in question was not overloaded but idling at a load of around 3 (8 cores total). The "common denominator" functionality is a joke that establishes on the minimum I would consider functional for a chat client, not what either Matrix or Discord could offer.
- frayesto 7y agoI'm also really interested in setting up a bot/bridge with our Matrix server. Anyone know of a bot that will send emails for messages in a room? I basically want to bridge a room with an already existing email list to send out announcements using Matrix.
- jrruethe 7y agoIs there a way to bridge Matrix with ActivityPub? I see MXToot[1] as an option, but I'm hoping for something a little less Mastodon-specific. I'd like to be able to bridge Matrix with Mastodon, Hubzilla, Peertube, Pixelfed, and the other ActivityPub federated services that are popping up. Would it be possible to get the Bifrost[2] to integrate with ActivityPub? [1] https://github.com/ma1uta/mxtoot https://github.com/ma1uta/mxtoot [2] https://github.com/matrix-org/matrix-bifrost https://github.com/matrix-org/matrix-bifrost
- Arathorn 7y agoThere isn't a particularly sophisticated ActivityPub bridge yet, but there's also nothing stopping someone from writing one. Bifrost would be a nice framework for writing such a thing - it's basically a bridge server you can plug protocols into as needed, a bit like Bitlbee is for IRC.