diff --git a/src/components/views/settings/BridgeTile.tsx b/src/components/views/settings/BridgeTile.tsx index 062fdbeb6e..67f0eb7802 100644 --- a/src/components/views/settings/BridgeTile.tsx +++ b/src/components/views/settings/BridgeTile.tsx @@ -70,10 +70,16 @@ export default class BridgeTile extends React.PureComponent { render() { const content: IBridgeStateEvent = this.props.ev.getContent(); // Validate - if (!content.bridgebot || !content.channel?.id || !content.protocol?.id) { + if (!content.channel?.id || !content.protocol?.id) { console.warn(`Bridge info event ${this.props.ev.getId()} has missing content. Tile will not render`); return null; } + if (!content.bridgebot) { + // Bridgebot was not required previously, so in order to not break rooms we are allowing + // the sender to be used in place. When the proposal is merged, this should be removed. + console.warn(`Bridge info event ${this.props.ev.getId()} does not provide a 'bridgebot' key which is deprecated behaviour. Using sender for now.`); + content.bridgebot = this.props.ev.getSender(); + } const { channel, network, protocol } = content; const protocolName = protocol.displayname || protocol.id; const channelName = channel.displayname || channel.id;