변경된 정보 전달
• 변경된 CUSTOMER INFO 전달 함수 group.updateUser
채팅을 예로 들면 중간에 nickname 등의 CUSTOMER INFO 가 변경될 경우가 있습니다. 변경이 발생 될 경우 updateUser 를 통해서 DPMessage Server 에 해당 변경 사항을 알리고 다른 모든 Client 의 local CUSTOMER INFO 와 sync 를 맟추게 됩니다.
기본선언은 다음과 같습니다.
group.updateUser( 변경된 CUSTOMER INFO 정보 );
group.updateUser(custinfo);
- custinfo (Object) required
변경된 CUSTOMER INFO
updateUser 가 호출된 경우 해당 함수를 호출한 client 를 포함 모든 client 그룹으로 onUserUpdated 이벤트가 발생하게 됩니다.
채팅의 예로 nickname 변경에 대해서는 다음과 같이 호출하면 됩니다.
group.updateUser({ 'nickname' : '홍길동' });
• 전체 CUSTOMER INFO 정보를 리턴하는 group.getUserList()
채팅을 예로 들면 Client 들의 nickname 을 표현해야 합니다. 전체 CUSTOMER INFO 는 DPMessage Server 와 각각의 Client local 사이에 언제나 Sync 를 하도록 되어 있습니다. group.getUserList()를 호출하는 경우 local 의 정보를 리턴하게 됩니다.
기본선언은 다음과 같습니다.
var userlist = group.getUserList();
전체 Client 의 CUSTINFO 를 반환은 다음과 같이 하면 됩니다.
var userlist = group.getUserList(); // 채팅 목록에 userlist 표현
CUSTOMER INFO 의 경우 DPMessage Server 와 각각의 Client 간의 정보 무결성을 완전히 보장하지는 못합니다.
• group.getUserList()의 DATA FORMAT
일반적인 CUSTOMER INFO의 callback 함수는 userid가 파라미터로 값을 전달 받습니다. 다만 group.getUserList()의 경우 목록을 표현해야 함으로 다음과 같은 DATA FORMAT 으로 리턴됩니다.
{ '[userid 값 1]': CUSTOMER INFO 값 1, '[userid 값 2]': CUSTOMER INFO 값 2, ... }