collectives icon indicating copy to clipboard operation
collectives copied to clipboard

Talk app integration

Open mejo- opened this issue 3 years ago • 6 comments

Ideas:

  • maybe automatically create a Talk conversation for each new Collective
  • link to this conversation from Collectives
  • a button to open a page in the Talk conversation
  • allow to open a collective (with page list) in a talk conversation

mejo- avatar Mar 20 '21 14:03 mejo-

In GitLab by @azul on Aug 7, 2021, 13:54

The talk API is quite well documented: https://nextcloud-talk.readthedocs.io/en/latest/conversation/

The first three items should be feasible. Opening a collective with page list in talk seems way harder.

mejo- avatar Aug 07 '21 11:08 mejo-

Uh, well documented :heart_eyes:

I'm not sure though whether I still like the idea to automatically open a Talk room for each collective. I can imagine a few usecases where talk integration is not needed. Personally I probably would be annoyed by those rooms filling my Talk room list.

Maybe it's better to add a menu item that allows to "open" or "join" the Collectives Talk room (depending on whether it already exists or not)?

mejo- avatar Aug 07 '21 15:08 mejo-

In GitLab by @azul on Aug 9, 2021, 08:51

I'm playing with the talk api. Have not yet figured out how to create a room for a circle.

I try to create a room by POSTing to https://nextcloud.local/ocs/v2.php/apps/spreed/api/v4/room

{
  invite: "HfuytoqELsyAIPnujm8yWKTMsGyQK3S"
  roomName: "huhu"
  roomType: 2
  source: "circles"
}

And i would expect the room to have actor_type circle and the circleId as the actor_id. But it has:

{
  "actorType": "users",
  "actorId": "admin",
}
Full data entry
{
  "id": 2,
  "token": "nvnwjaoo",
  "type": 2,
  "name": "huhu",
  "displayName": "huhu",
  "objectType": "",
  "objectId": "",
  "participantType": 1,
  "participantFlags": 0,
  "readOnly": 0,
  "hasPassword": false,
  "hasCall": false,
  "canStartCall": true,
  "lastActivity": 1628376266,
  "lastReadMessage": 29,
  "unreadMessages": 0,
  "unreadMention": false,
  "isFavorite": false,
  "canLeaveConversation": true,
  "canDeleteConversation": true,
  "notificationLevel": 2,
  "lobbyState": 0,
  "lobbyTimer": 0,
  "lastPing": 0,
  "sessionId": "0",
  "lastMessage": {
    "id": 29,
    "token": "nvnwjaoo",
    "actorType": "users",
    "actorId": "admin",
    "actorDisplayName": "admin",
    "timestamp": 1628376266,
    "message": "Sie haben die Unterhaltung erstellt",
    "messageParameters": {
      "actor": {
        "type": "user",
        "id": "admin",
        "name": "admin"
      }
    },
    "systemMessage": "conversation_created",
    "messageType": "system",
    "isReplyable": false,
    "referenceId": ""
  },
  "sipEnabled": 0,
  "actorType": "users",
  "actorId": "admin",
  "attendeeId": 2,
  "publishingPermissions": 7,
  "canEnableSIP": false,
  "attendeePin": "",
  "description": "",
  "lastCommonReadMessage": 29,
  "listable": 0,
  "callFlag": 0
}

mejo- avatar Aug 09 '21 06:08 mejo-

In GitLab by @azul on Aug 9, 2021, 09:08

https://github.com/nextcloud/spreed/blob/12e0287e78eb931619629bed56e07c97cd9034b9/lib/Controller/RoomController.php#L748 looks like creating a circle room is equivalent to creating an empty room and adding the circle.

So looks like there's no way of telling which of my conversations is the one for the circle based on the room list and i have to either keep track of them in the collectives database or query the participants of each conversation.

mejo- avatar Aug 09 '21 07:08 mejo-

In GitLab by @azul on Aug 9, 2021, 10:13

https://github.com/nextcloud/spreed/issues/2854 - talk currently does not sync circle and conversation members

mejo- avatar Aug 09 '21 08:08 mejo-

@mejo- We had the idea to dive into this topic for 31, but no concrete discussion yet. Maybe something to think about a bit more so we can come up with some ideas on what we could implement in that area.

juliusknorr avatar Sep 20 '24 09:09 juliusknorr

Hey, right now I can only put the link to a Talk-Chat on a Collective-Page. It would be handy to embed a talk-chat directly into a Collectives-Page for direct communication without leaving the Collectives Page.

ChrisFa90 avatar Oct 08 '24 17:10 ChrisFa90