collectives
collectives copied to clipboard
Talk app integration
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
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.
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)?
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
}
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.
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- 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.
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.