Callback
아래와 같이 Callback을 등록하여 받을 수 있습니다.
tag 값은 채널 이벤트 등록 또는 삭제를 위한 문자열 값으로써, 유니크한 문자열 값으로 설정하면 됩니다.
// 채널 이벤트 수신을 위한 리스너 등록
TalkPlus.addChannelListener(tag, new TalkPlus.ChannelListener() {
@Override
public void onMemberAdded(TPChannel channel, List<TPMember> users) {
// 현재 참여중인 채널에 새로운 멤버가 추가되었을 경우 발생하는 콜백
}
@Override
public void onMemberLeft(TPChannel channel, List<TPMember> users) {
// 현재 참여중인 채널에 멤버가 나갔을 경우 발생하는 콜백
}
@Override
public void onMessageReceived(TPChannel channel, TPMessage message) {
// 현재 참여중인 채널에 메시지를 수신할 경우 발생하는 콜백
}
@Override
public void onMessageDeleted(TPChannel channel, TPMessage message) {
// 현재 참여중인 채널에 메시지가 삭제될 경우 발생하는 콜백
}
@Override
public void onChannelAdded(TPChannel channel) {
// 채널이 추가되었을 경우 발생하는 콜백
}
@Override
public void onChannelChanged(TPChannel channel) {
// 현재 참여중인 채널에 변동사항이 있을 경우 발생하는 콜백
}
@Override
public void onChannelRemoved(TPChannel channel) {
// 채널이 삭제되었을 경우 발생하는 콜백
}
@Override
public void onMemberMuted(TPChannel channel) {
// 현재 참여중인 채널에 멤버가 Mute 된 경우 발생하는 콜백
}
@Override
public void onMemberUnMuted(TPChannel channel) {
// 현재 참여중인 채널에 멤버가 UnMute 된 경우 발생하는 콜백
}
@Override
public void onMemberBanned(TPChannel channel) {
// 현재 참여중인 채널에 멤버가 Ban 된 경우 발생하는 콜백
}
@Override
public void onMemberUnBanned(TPChannel channel) {
// Ban 된 멤버가 Unban 된 경우 발생하는 콜백
}
});
// 채널 이벤트 리스너 등록 해제
// 메모리 누수 방지를 위해서 반드시 등록 해제 필요
TalkPlus.removeChannelListener(tag);
// 채널 이벤트 수신을 위한 리스너 등록
TalkPlus.addChannelListener(channelId, object : ChannelListener {
override fun onMemberAdded(channel: TPChannel, users: List<TPMember>) {
// 현재 참여중인 채널에 새로운 멤버가 추가되었을 경우 발생하는 콜백
}
override fun onMemberLeft(channel: TPChannel, users: List<TPMember>) {
// 현재 참여중인 채널에 멤버가 나갔을 경우 발생하는 콜백
}
override fun onMessageReceived(channel: TPChannel, tpMessage: TPMessage) {
// 현재 참여중인 채널에 메시지를 수신할 경우 발생하는 콜백
}
override fun onMessageDeleted(channel: TPChannel, message: TPMessage) {
// 현재 참여중인 채널에 메시지가 삭제될 경우 발생하는 콜백
}
override fun onChannelAdded(channel: TPChannel) {
// 채널이 추가되었을 경우 발생하는 콜백
}
override fun onChannelChanged(channel: TPChannel) {
// 현재 참여중인 채널에 변동사항이 있을 경우 발생하는 콜백
}
override fun onChannelRemoved(channel: TPChannel) {
// 채널이 삭제되었을 경우 발생하는 콜백
}
override fun onMemberMuted(channel: TPChannel) {
// 현재 참여중인 채널에 멤버가 Mute 된 경우 발생하는 콜백
}
override fun onMemberUnMuted(channel: TPChannel) {
// 현재 참여중인 채널에 멤버가 UnMute 된 경우 발생하는 콜백
}
override fun onMemberBanned(channel: TPChannel) {
// 현재 참여중인 채널에서 멤버 차단후 퇴장(강퇴)당했을 경우 발생하는 콜백
}
override fun onMemberUnBanned(channel: TPChannel) {
// 현재 참여중인 채널에서 멤버가 차단 해제된 경우 발생하는 콜백
}
}
// 채널 이벤트 리스너 등록 해제
// 메모리 누수 방지를 위해서 반드시 등록 해제 필요
TalkPlus.removeChannelListener(tag);
정의된 interface는 다음과 같습니다.
public interface ChannelListener {
default void onMemberAdded(TPChannel channel, List<TPMember> users) {}
default void onMemberLeft(TPChannel channel, List<TPMember> users) {}
default void onMessageReceived(TPChannel channel, TPMessage message) {}
default void onMessageDeleted(TPChannel channel, TPMessage message) {}
default void onChannelAdded(TPChannel channel) {}
default void onChannelChanged(TPChannel channel) {}
default void onChannelRemoved(TPChannel channel) {}
default void onPublicMemberAdded(TPChannel channel, List<TPMember> users) {}
default void onPublicMemberLeft(TPChannel channel, List<TPMember> users) {}
default void onPublicChannelAdded(TPChannel channel) {}
default void onPublicChannelChanged(TPChannel channel) {}
default void onPublicChannelRemoved(TPChannel channel) {}
default void onMemberMuted(TPChannel channel, List<TPMember> users) {}
default void onMemberUnMuted(TPChannel channel, List<TPMember> users) {}
default void onPublicMemberMuted(TPChannel channel, List<TPMember> users) {}
default void onPublicMemberUnMuted(TPChannel channel, List<TPMember> users) {}
}
Last updated