Skip to main content
Version: Next

ChatInitSettings

A collection of settings to start a new chat conversation

Type

fdc3.chat.initSettings

Schema

https://fdc3.finos.org/schemas/next/context/chatInitSettings.schema.json

Details

PropertyTypeRequiredExample Value
typestringYes'fdc3.chat.initSettings'
chatNamestringNo'Instrument XYZ'
membersContactListNoContactList - cf. below
messageMessageNoMessage - cf. below
options.groupRecipientsbooleanNotrue: if false a separate chat will be created for each member
options.isPublicbooleanNotrue: the room will be visible to everyone in the chat application
options.allowHistoryBrowsingbooleanNotrue: members will be allowed to browse past messages
options.allowMessageCopybooleanNotrue: members will be allowed to copy/paste messages
options.allowAddUserbooleanNotrue: members will be allowed to add other members to the chat

If members or chatName are not provided, the application executing this intent is expected to provide a means to enter such information.

Example

const initSettings = {
type: 'fdc3.chat.initSettings',
chatName: 'Chat ABCD',
members: {
type: 'fdc3.contactList',
contacts: [{
type: 'fdc3.contact',
name: 'Jane Doe',
id: {
email: 'jane@mail.com'
}
},{
type: 'fdc3.contact',
name: 'John Doe',
id: {
email: 'john@mail.com'
},
}]
},
options: {
groupRecipients: true, // one chat with both contacts
isPublic: false, // private chat room
allowHistoryBrowsing: true,
allowMessageCopy: true
},
message: {
type: 'fdc3.message',
text: {
'text/plain': 'Hey all, can we discuss the issue together? I attached a screenshot'
},
entities: {
'0': {
type: 'fdc3.fileAttachment',
data: {
name: 'myImage.png',
dataUri: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAIAQMAAAD+wSzIAAAABlBMVEX///+/v7+jQ3Y5AAAADklEQVQI12P4AIX8EAgALgAD/aNpbtEAAAAASUVORK5CYII'
}
}
}
}
}

const res = fdc3.raiseIntent('StartChat', initSettings);

// Return a reference to the room
const chatRoom = await res.getResult();

See Also

Other Types

Intents

FINOS Financial Objects