MessagesModal component displays a modal for direct and group messages.
import React from 'react';import { MessagesModal } from 'mediasfu-reactjs';import { io } from 'socket.io-client';const messages = [ { sender: "user1", receivers: ["user2"], message: "Hello, user2!", group: false }, { sender: "user2", receivers: ["user1"], message: "Hi, user1!", group: false },];const App = () => { const socket = io("http://localhost:3000"); const handleClose = () => console.log("Modal closed"); const handleSendMessage = async (options) => console.log("Message sent", options); const handleAlert = (message, type) => console.log("Alert shown:", message, type); return ( <MessagesModal isMessagesModalVisible={true} onMessagesClose={handleClose} onSendMessagePress={handleSendMessage} messages={messages} position="topRight" backgroundColor="#f5f5f5" activeTabBackgroundColor="#2b7ce5" eventType="webinar" member="user1" islevel="1" coHostResponsibility={[{ name: "chat", value: true }, { name: "video", value: false }]} coHost="user2" startDirectMessage={true} directMessageDetails={{ username: "user2", name: "User 2" }} updateStartDirectMessage={(start) => console.log("Start direct message:", start)} updateDirectMessageDetails={(participant) => console.log("Direct message details:", participant)} showAlert={handleAlert} roomName="1234567890" socket={socket} chatSetting="public" /> );};export default App; Copy
import React from 'react';import { MessagesModal } from 'mediasfu-reactjs';import { io } from 'socket.io-client';const messages = [ { sender: "user1", receivers: ["user2"], message: "Hello, user2!", group: false }, { sender: "user2", receivers: ["user1"], message: "Hi, user1!", group: false },];const App = () => { const socket = io("http://localhost:3000"); const handleClose = () => console.log("Modal closed"); const handleSendMessage = async (options) => console.log("Message sent", options); const handleAlert = (message, type) => console.log("Alert shown:", message, type); return ( <MessagesModal isMessagesModalVisible={true} onMessagesClose={handleClose} onSendMessagePress={handleSendMessage} messages={messages} position="topRight" backgroundColor="#f5f5f5" activeTabBackgroundColor="#2b7ce5" eventType="webinar" member="user1" islevel="1" coHostResponsibility={[{ name: "chat", value: true }, { name: "video", value: false }]} coHost="user2" startDirectMessage={true} directMessageDetails={{ username: "user2", name: "User 2" }} updateStartDirectMessage={(start) => console.log("Start direct message:", start)} updateDirectMessageDetails={(participant) => console.log("Direct message details:", participant)} showAlert={handleAlert} roomName="1234567890" socket={socket} chatSetting="public" /> );};export default App;
The properties for MessagesModal component.
The rendered MessagesModal component.
Optional
Ignored by React.
Only kept in types for backwards compatibility. Will be removed in a future major release.
Used in debugging messages. You might want to set it explicitly if you want to display a different name for debugging purposes.
Legacy React Docs
const MyComponent: FC = () => { return <div>Hello!</div>}MyComponent.displayName = 'MyAwesomeComponent' Copy
const MyComponent: FC = () => { return <div>Hello!</div>}MyComponent.displayName = 'MyAwesomeComponent'
MessagesModal component displays a modal for direct and group messages.
Example