#38 Chat/IM service (e.g. Gitter)

Open
opened 1 year ago by hjacobs · 12 comments
hjacobs commented 1 year ago

It would be awesome to integrate Codeberg with some Open Source chat/social platform, e.g. Gitter which is Open Source: https://gitlab.com/gitlab-org/gitter/webapp

It would be awesome to integrate Codeberg with some Open Source chat/social platform, e.g. [Gitter](https://gitter.im/) which is Open Source: https://gitlab.com/gitlab-org/gitter/webapp
hjacobs commented 1 year ago
Poster

I would try to have a look at setting up Gitter, but probably won't get around doing this in the next days/weeks.

I would try to have a look at setting up Gitter, but probably won't get around doing this in the next days/weeks.
hw commented 1 year ago
Owner

This would be great!

This would be great!
ashimokawa commented 1 year ago
Owner

Yes, gitter would be great!

Yes, gitter would be great!
pcsv commented 1 year ago

Gitter has a “Direct Chat” feature just like all other social networks. (Except GitHub.)

Gitter has a "Direct Chat" feature just like all other social networks. (Except GitHub.)
momar commented 1 year ago

What about a Matrix/Riot server as an alternative? Although it's not quite as beautiful and mature as Gitter, it's federated (so it can be used for everything messaging-related instead of just for some projects), end-to-end encrypted, and supports communities with rooms just like Gitter.

What about a Matrix/Riot server as an alternative? Although it's not quite as beautiful and mature as Gitter, it's federated (so it can be used for everything messaging-related instead of just for some projects), end-to-end encrypted, and supports communities with rooms just like Gitter.

My recommendation is XMPP (Jabber)

XMPP (Jabber) is a open protocol for instant messaging.

  • Extensible Messaging and Presence Protocol (XMPP): Core - rfc6120
  • Extensible Messaging and Presence Protocol (XMPP): Instant Messaging and Presence - rfc6121
  • Extensible Messaging and Presence Protocol (XMPP): Address Format - rfc7622

See for example https://tools.ietf.org/html/rfc6120 for more information about XMPP Core.

XMPP is extensible. Extensions are defines in XEPs: https://xmpp.org/extensions/

MUCs are Multi User Chats defined within XEP-0045: Multi-User Chat https://xmpp.org/extensions/xep-0045.html

A free and open-source XMPP chat client in your browser https://conversejs.org/

Android Client for Smartphones https://conversations.im/

Desktop Client https://dino.im/

Encryption via GnuPG or OMEMO.

My recommendation is XMPP (Jabber) XMPP (Jabber) is a open protocol for instant messaging. * Extensible Messaging and Presence Protocol (XMPP): Core - rfc6120 * Extensible Messaging and Presence Protocol (XMPP): Instant Messaging and Presence - rfc6121 * Extensible Messaging and Presence Protocol (XMPP): Address Format - rfc7622 See for example https://tools.ietf.org/html/rfc6120 for more information about XMPP Core. XMPP is *extensible*. Extensions are defines in XEPs: https://xmpp.org/extensions/ MUCs are Multi User Chats defined within XEP-0045: Multi-User Chat https://xmpp.org/extensions/xep-0045.html A free and open-source XMPP chat client in your browser https://conversejs.org/ Android Client for Smartphones https://conversations.im/ Desktop Client https://dino.im/ Encryption via GnuPG or OMEMO.
brickup commented 3 months ago

Hi there :grin:

I think adding any form of private messaging to codeberg would really help enforcing Code of Conducts early on.

I'm currently planning to add a CoC like this one to a project, but the first stage of enforcement currently seems impossible via codeberg, as there isn't a non-public way to make contributors aware of improper behaviour. At least that I'm aware of and if the mail address is hidden on the user profile.

No preference on the way it's implemented on my site - Gitter, Matrix/Riot and XMPP all would do the trick I think. But I wanted to share this aspect as I think it is important. :-)

Hi there :grin: I think adding any form of private messaging to codeberg would really help enforcing Code of Conducts early on. I'm currently planning to add a CoC like [this one](https://www.contributor-covenant.org/version/2/0/code_of_conduct) to a project, but the [first stage of enforcement](https://www.contributor-covenant.org/version/2/0/code_of_conduct/#1-correction) currently seems impossible via codeberg, as there isn't a non-public way to make contributors aware of improper behaviour. At least that I'm aware of and if the mail address is hidden on the user profile. No preference on the way it's implemented on my site - Gitter, Matrix/Riot and XMPP all would do the trick I think. But I wanted to share this aspect as I think it is important. :-)
hw commented 3 months ago
Owner

good one.

good one.
hunger commented 2 months ago

If you add chat, then it would be really cool to have something that ties into codeberg. Otherwise there is no real benefit of having that come as part of the package IMHO.

Maybe have a matrix server that creates a room for each project with a bot that reports on changes happening in the project or something.

If you add chat, then it would be really cool to have something that ties into codeberg. Otherwise there is no real benefit of having that come as part of the package IMHO. Maybe have a matrix server that creates a room for each project with a bot that reports on changes happening in the project or something.

I created a small project (just a kind of prototype so far). This is a XMPP Bot with a Codeberg Module. The Bot is listening on a TCP Port. The Codeberg Webhook can be used to call the bot. The bot will post information to a Multi Use Chat (MUC).

Example:

[18:43:42] hawkbit-bot: Kommentar von DebXWoody : Konzept - Anwendungsdesign Module https://codeberg.org/xmpp-messenger/hawkbit-bot/issues/19#issuecomment-53699

It's not ready for production, but it's working.

https://codeberg.org/xmpp-messenger/hawkbit-bot/src/branch/master/src/modules/CodebergModule.cpp

I created a small project (just a kind of prototype so far). This is a XMPP Bot with a Codeberg Module. The Bot is listening on a TCP Port. The Codeberg Webhook can be used to call the bot. The bot will post information to a Multi Use Chat (MUC). Example: > [18:43:42] hawkbit-bot: Kommentar von DebXWoody : Konzept - Anwendungsdesign Module https://codeberg.org/xmpp-messenger/hawkbit-bot/issues/19#issuecomment-53699 It's not ready for production, but it's working. https://codeberg.org/xmpp-messenger/hawkbit-bot/src/branch/master/src/modules/CodebergModule.cpp
ashimokawa commented 2 months ago
Owner

@DebXWoody

Sounds cool, need to check that out

@DebXWoody Sounds cool, need to check that out
momar commented 2 months ago

@hunger I think with RocketChat (which seems like the most potent option if we want to provide a chat for Codeberg instead of a full general-purpose messenger server, which is quite hard to maintain) it should be relatively easy to just forbid creating new rooms for people, and instead creating them automatically through the Gitea repositories.

Then I'm imagining that “Chat” could be just another option that can be enabled for a repository, like “Wiki” or “Issues” right now.

@hunger I think with RocketChat (which seems like the most potent option if we want to provide a chat for Codeberg instead of a full general-purpose messenger server, which is quite hard to maintain) it should be relatively easy to just forbid creating new rooms for people, and instead creating them automatically through the Gitea repositories. Then I'm imagining that "Chat" could be just another option that can be enabled for a repository, like "Wiki" or "Issues" right now.
Sign in to join this conversation.
No Milestone
No Assignees
8 Participants
Due Date

No due date set.

Dependencies

This issue currently doesn't have any dependencies.

Loading…
Cancel
Save
There is no content yet.