내일배움캠프

230825 sendbird javascript 메시지 보내기

Neda 2023. 8. 25. 18:35

230825 sendbird javascript 메시지 보내기

sendbird javascript SDK를 사용하여 메시지를 보내는 방법

 

사용자 아이디로 샌드버드 연결 -> 메시지 보낼 채널 가져오기 -> 메시지 보내기

export const sendRequestTutoringMessage = async (studentId: string, tutorId: string) => {
  try {
    await sendbird.connect(studentId);
  } catch (err) {
    throw new Error('채팅 연결 에러');
  }

  let channel;
  try {
    channel = await getGroupChannel(studentId, tutorId);
  } catch (err) {
    throw new Error('채팅 연결 에러');
  }

  if (!channel) throw Error('채널 생성 에러');
  
  const messageParams = {
    message: '매칭 요청입니다.',
    customType: 'request',
    data: studentId,
  };
  
  channel
    .sendUserMessage(messageParams)
    .onPending(() => {
      console.log('메시지를 보내는 중입니다.');
    })
    .onFailed(async (error, message) => {
      console.error(error, message);
      alert('메시지를 보내기에 실패했습니다.');
      await sendbird.disconnect();
    })
    .onSucceeded(async () => {
      alert('메시지를 성공적으로 보냈습니다.');
      await sendbird.disconnect();
    });
};