teespace-core v0.1.35
본 저장소는 TeeSpace Core 에 대한 저장소 입니다. TeeSpace를 위한 공통 Store와 API 모듈 및 WebSocket 모듈 등을 포함하고 있습니다. TeeSpace에 들어가는 각 앱은 본 저장소를 사용하여 구현합니다.
초기 설정 (Visual Studio Code)
Visual Studio Code를 설치합니다.
VSCode 설치가 완료되었다면, 다음과 같은 Extension 을 설치 합니다.
- prettier - Code formatter
- ESLint
- auto import
NodeJS LTS 버전과 yarn 패키지를 설치합니다.
설치가 완료되면, 다음과 같이 의존 라이브러리를 설치합니다.
$ yarn install
사용 가능한 명령어
yarn start
본 모듈을 개발모드로 실행합니다. 코드를 수정하면 자동으로 빌드를 시작합니다.
yarn test
테스트 러너를 실행합니다.
yarn build
본 모듈을 운영환경으로 빌드 합니다.
모듈 연동 방법 (packages.json 선언 방식)
teespace-core
저장소를 사용하고자 하는 프로젝트 내 packages.json 파일을 에디터로 엽니다. packages.json 파일에 있는 dependencies 필드에 다음과 같이 teespace-core
저장소를 추가 합니다.
"teespace-core": "git+http://git@192.168.158.12:teespace/teespace-core#develop"
teespace-core
저장소 추가가 완료 되었다면, 패키지를 다시 설치 합니다.
yarn install
모듈 연동 방법 (yarn link 방식)
본 모듈 연동 방식은 yarn link
방식으로 연동 하는 방법을 안내합니다. 앱 개발 및 플랫폼 연동을 진행할 때 개발 편의성을 위하여 사용 됩니다. 일반적인 사용을 원하신다면, packages.json 연동 방식
을 참고하시기 바랍니다.
teespace-core 프로젝트 설정
1. 본 저장소를 clone 받습니다.
$ git clone git@192.168.158.12:teespace/teespace-core.git
2. clone 받은 디렉토리로 이동합니다
$ cd teespace-core
3. 패키지를 설치합니다
$ yarn install
4. 본 모듈을 다른 프로젝트에서 사용할 수 있도록 global link 를 등록합니다
$ yarn link
5. (추가) 릴리즈되지 않은 최신 코드로 테스트 하고 싶은 경우
$ yarn start
위 명령어를 사용하면 최신 코드로 빌드하며, 코드 수정 시 바로 반영 됩니다
teespace 또는 app 에서 teespace-core 모듈 연동 방법
1. teespace-core를 사용하기 위한 프로젝트로 이동
$ cd teespace-platform
2. teespace-core를 등록
$ yarn link teespace-core
3. 위 과정까지 거치면 다음과 같이 teespace-platform(예시) 에서 사용할 수 있습니다
import { useCoreStores } from 'teespace-core'
4. (추가)packages.json 에 dependencies 필드에 다음과 같이 저장소 등록이 되어 있는지 확인이 필요합니다
"teespace-core": "git+http://git@192.168.158.12:teespace/teespace-core#develop"
모듈 업그레이드 방법
본 저장소는 지속적으로 develop
브랜치에서 업데이트가 진행되고 있습니다. 새로운 버전의 코드를 받아오길 원한다면 다음과 같이 모듈 업그레이드를 진행 해주세요
yarn upgrade teespace-core
기여 방법
git commit 메세지 컨벤션
git commit 메세지 컨벤션은 본 문서를 기반으로 작성되었습니다.
커밋 메세지는 타입(모듈): 설명
형태로 작성이 됩니다. 커밋할 때 자동으로 형식을 검사합니다. 유효하지 않은 형태로 커밋 메세지 작성 시 정상적으로 커밋이 되지 않습니다. 각 타입에 대한 설명은 다음과 같습니다.
타입 | 설명 |
---|---|
feat | 기능 추가, 라이브러리 추가, API 변경 시 사용 |
refactor | 코드 구조 변경 시 사용 |
fix | 버그 수정 시 사용 |
docs | 문서 수정 시 사용 |
test | 테스트 코드 작성 시 사용 |
chore | 자잘한 수정이 있을 시 사용 (예. 설정 파일 변경 등) |
코드 수정하여 다른 코드에 영향을 줄 수 있는 것은 BREAKING CHANGE
를 사용하여 작성합니다. 이에 대한 설명은 다음과 같습니다.
feat(common): TeeSpace를 위한 API 클래스 구현
BREAKING CHANGE: axios를 직접 사용하지 않고, API 클래스를 사용하여 구현 필요
Merge Request
작성 예정
Code Review
작성 예정
주의
- 깨진 코드 (빌드 되지 않거나 동작하지 않는 코드)를 develop 브랜치에 머지 되면 안됩니다.
- pull 받으실 때는 꼭 rebase pull 을 사용하세요. (git pull --rebase origin)
develop
브랜치에서 기능 브랜치를 생성하는 경우, 주기적으로develop
브랜치를 rebase 하여 충돌을 최소화 해주세요. (git rebase develop)- 가급적 merge commit은 자제하여 깨끗한 커밋 로그를 남길 수 있도록 합니다.
API Reference
API 모듈
- API
Get(url, params) ⇒ Promise ⏏Post(url, params, config) ⇒ Promise ⏏Put(url, params, config) ⇒ Promise ⏏Delete(url, params) ⇒ Promise ⏏- get(url, params) ⇒ Promise ⏏
- post(url, params, config) ⇒ Promise ⏏
- put(url, params, config) ⇒ Promise ⏏
- delete(url, params) ⇒ Promise ⏏
Get(url, params) ⇒ Promise ⏏
Deprecated
HTTP Get 요청
Kind: global method of API
Param | Type |
---|---|
url | string |
params | object |
Post(url, params, config) ⇒ Promise ⏏
Deprecated
HTTP Post 요청
Kind: global method of API
Param | Type |
---|---|
url | string |
params | object |
config | object |
Put(url, params, config) ⇒ Promise ⏏
Deprecated
HTTP Put 요청
Kind: global method of API
Param | Type |
---|---|
url | string |
params | object |
config | object |
Delete(url, params) ⇒ Promise ⏏
Deprecated
HTTP Delete 요청
Kind: global method of API
Param | Type |
---|---|
url | string |
params | object |
get(url, params) ⇒ Promise ⏏
HTTP Get 요청
Kind: global method of API
Param | Type |
---|---|
url | string |
params | object |
post(url, params, config) ⇒ Promise ⏏
HTTP Post 요청
Kind: global method of API
Param | Type |
---|---|
url | string |
params | object |
config | object |
put(url, params, config) ⇒ Promise ⏏
HTTP Put 요청
Kind: global method of API
Param | Type |
---|---|
url | string |
params | object |
config | object |
delete(url, params) ⇒ Promise ⏏
HTTP Delete 요청
Kind: global method of API
Param | Type |
---|---|
url | string |
params | object |
인증 스토어
- AuthStore
- isAuthenticated ⇒ boolean ⏏
- user ⇒ UserModel ⏏
- tokenTimer ⏏
- login(id, pw, deviceType, isAutoLogin, isLocalLogin) ⇒ Promise.<UserModel> ⏏
- autoLogin() ⇒ Promise.<UserModel> ⏏
- logout() ⇒ Promise.<boolean> ⏏
- duplicationCheckId(id) ⇒ string ⏏
- duplicationCheckPhone(phone, ncode) ⇒ string ⏏
- createAuthNumberPhone(phone) ⇒ string ⏏
- getAuthNumberPhone(authNumber, phone) ⇒ string ⏏
- createUser(registerObj) ⇒ Object ⏏
- setMyInfo() ⇒ Promise.<UserModel> ⏏
isAuthenticated ⇒ boolean ⏏
로그인 여부
Kind: global property of AuthStore
Returns: boolean - 로그인 여부
user ⇒ UserModel ⏏
로그인한 사용자에 대한 정보 오브젝트
Kind: global property of AuthStore
Returns: UserModel - myInfo from UserStore
tokenTimer ⏏
30분마다 토큰 재발급
Kind: global property of AuthStore
login(id, pw, deviceType, isAutoLogin, isLocalLogin) ⇒ Promise.<UserModel> ⏏
로그인
Kind: global method of AuthStore
Returns: Promise.<UserModel> - - Promise 형태의 myInfo
Param | Type | Description | ||
---|---|---|---|---|
id | string | (필수) 사용자 (로그인)아이디 | ||
pw | string | (필수) 사용자 패스워드 | ||
deviceType | string | (필수) 디바이스 타입 'PC' | 'Mobile' 둘 중 하나만 쓰임 | |
isAutoLogin | boolean | (필수) 자동 로그인 여부 | ||
isLocalLogin | boolean | (옵션) 로컬 환경 여부 |
autoLogin() ⇒ Promise.<UserModel> ⏏
자동 로그인
Kind: global method of AuthStore
Returns: Promise.<UserModel> - - Promise 형태의 myInfo
logout() ⇒ Promise.<boolean> ⏏
로그아웃
Kind: global method of AuthStore
Returns: Promise.<boolean> - - Promise 형태의 boolean 값
duplicationCheckId(id) ⇒ string ⏏
회웝가입 시, 아이디 중복 확인
Kind: global method of AuthStore
Returns: string - RST0001 : Duplication not exists ,RST0002: Duplication exists
Param | Type | Description |
---|---|---|
id | string | 회원가입하려는 아이디 |
duplicationCheckPhone(phone, ncode) ⇒ string ⏏
회웝가입 시, 핸드폰 번호 중복 확인
Kind: global method of AuthStore
Returns: string - RST0001 : Duplication not exists ,RST0002: Duplication exists
Param | Type | Description |
---|---|---|
phone | string | 휴대폰번호 |
ncode | string | 국가번호 |
createAuthNumberPhone(phone) ⇒ string ⏏
회웝가입 시, 인증 번호 생성 (휴대폰 번호)
Kind: global method of AuthStore
Returns: string - RST0001 : 인증번호 정상적으로 생성.
Param | Type | Description |
---|---|---|
phone | string | 휴대폰번호 |
getAuthNumberPhone(authNumber, phone) ⇒ string ⏏
회웝가입 시, 인증 번호 검증 (휴대폰 번호)
Kind: global method of AuthStore
Returns: string - RST0001 : 인증 번호 정상 검증
Param | Type | Description |
---|---|---|
authNumber | string | 휴대폰으로 온 인증 번호 |
phone | string | 휴대폰번호 |
createUser(registerObj) ⇒ Object ⏏
회웝가입 시, 유저 생성
Kind: global method of AuthStore
Returns: Object - - 회원가입 성공시, data.dto.RESULT_CD : RST0001 ,data.dto.RESULT_DATA : {USER_ID}
Param | Type | Description |
---|---|---|
registerObj | Object | 회원가입을 위한 정보 객체 |
registerObj.userId | string | 아이디 |
registerObj.pw | string | 비밀번호 |
registerObj.name | string | 이름 |
registerObj.phone | string | 휴대폰 번호 |
registerObj.ncode | string | 국가 코드 번호 |
registerObj.type | string | 유저 타입 : b2b - USR0001 / b2c - USR0002 / guest - USR0003 |
registerObj.email | string | 이메일 |
registerObj.personal | string | 개인 정보 활용 동의 여부: 'Y'/'N' |
registerObj.advertise | string | 광고 수신 여부: 'Y'/'N' |
registerObj.path | string | 가입 경로: Csp / TmaxOS / TmaxOSSR |
setMyInfo() ⇒ Promise.<UserModel> ⏏
테스트 통과를 위한 임시 코드
Kind: global method of AuthStore
Returns: Promise.<UserModel> - - Promise 형태의 myInfo
유저 스토어
- UserStore
- searchUsersByKeyword(keyword) ⇒ Promise.<Array.<UserModel>> ⏏
- searchUserById(userLoginId) ⇒ Promise.<UserModel> ⏏
- fetchProfile(userId) ⇒ Promise.<{(key:string): UserModel}> ⏏
- fetchRoomUserProfileList() ⇒ Promise.<{(key:string): UserModel}> ⏏
- getProfile(userId) ⇒ Promise.<{(key:string): UserModel}> ⏏
- getUserProfilePhoto(userId, size, isLocal, thumbPhoto) ⇒ string ⏏
- getUserBackPhoto(userId, isLocal, backPhoto) ⇒ string ⏏
- updateMyProfile(updatedInfo) ⇒ Promise.<UserModel> ⏏
- initHydratedMyProfile() ⏏
searchUsersByKeyword(keyword) ⇒ Promise.<Array.<UserModel>> ⏏
키워드 검색
Kind: global method of UserStore
Returns: Promise.<Array.<UserModel>> - - Promise 형태로 되어 있는 userModel의 배열
Param | Type | Description |
---|---|---|
keyword | string | (필수) 검색하고자 하는 키워드 |
searchUserById(userLoginId) ⇒ Promise.<UserModel> ⏏
아이디 검색
Kind: global method of UserStore
Returns: Promise.<UserModel> - - Promise 형태로 되어 있는 userModel
Param | Type | Description |
---|---|---|
userLoginId | string | (필수) 가져 오고자 하는 유저의 로그인 아이디 |
fetchProfile(userId) ⇒ Promise.<{(key:string): UserModel}> ⏏
프로필(Single User) 업데이트
Kind: global method of UserStore
Returns: Promise.<{(key:string): UserModel}> - - Promise 형태로 되어 있는 userId 를 key로 userModel을 value 로 하는 map
Param | Type | Description |
---|---|---|
userId | string | (필수) 가져 오고자 하는 유저의 UUID |
fetchRoomUserProfileList() ⇒ Promise.<{(key:string): UserModel}> ⏏
각 룸에서 최대 25명 까지의 유저 정보를(룸 인원이 25명 이하일 경우 모두) 불러와서 저장합니다.
Kind: global method of UserStore
Returns: Promise.<{(key:string): UserModel}> - - Promise 형태로 되어 있는 userId 를 key로 userModel을 value 로 하는 map(해당 사용자가 속해 있는 모든 룸에서 최대 25명의 정보를 userProfiles에 저장합니다)
getProfile(userId) ⇒ Promise.<{(key:string): UserModel}> ⏏
저장되어 있는(Single user profile) 반환(없을 경우 updateProfile 활용한 결과값 리턴)
Kind: global method of UserStore
Returns: Promise.<{(key:string): UserModel}> - - Promise 형태로 되어 있는 userId 를 key로 userModel을 value 로 하는 map
Param | Type | Description |
---|---|---|
userId | string | (필수) 찾을 사용자의 UUID |
getUserProfilePhoto(userId, size, isLocal, thumbPhoto) ⇒ string ⏏
유저의 Profile Photo URL을 반환
Kind: global method of UserStore
Returns: string - - Profile Photo URL
Param | Type | Description |
---|---|---|
userId | string | (필수) 사용자의 UUID |
size | string | (필수) photo size 'small'과 'medium' 둘중의 하나의 갑만 사용 가능 |
isLocal | boolean | (필수) local 환경인지 여부 |
thumbPhoto | string | (옵션) optional UserModel의 thumbPhoto 정보 |
getUserBackPhoto(userId, isLocal, backPhoto) ⇒ string ⏏
유저의 Background Photo URL을 반환
Kind: global method of UserStore
Returns: string - - Profile Photo URL
Param | Type | Description |
---|---|---|
userId | string | (필수) 사용자의 UUID |
isLocal | boolean | (필수) local 환경인지 여부 |
backPhoto | string | (옵션) optional UserModel의 backPhoto 정보 |
updateMyProfile(updatedInfo) ⇒ Promise.<UserModel> ⏏
내 정보 업데이트
Kind: global method of UserStore
Returns: Promise.<UserModel> - - Promise 형태의 UserModel
Param | Type | Description |
---|---|---|
updatedInfo | $Shape.<UserInfo> | (필수) UserInfo Type의 부분집합을 이루는 object 를사용할 수 있습니다. 예, { name: 'tmax' } |
initHydratedMyProfile() ⏏
Hydration 후에 일반 Object 정보를 UserModel 형식으로 변환하기 위한 함수
Kind: global method of UserStore
룸 스토어
- RoomStore
- createRoom(creatorId, name, description, parentId, photo, userList) ⇒ Promise.<{(roomId:string): string}> ⏏
- activateRoom(roomId, myUserId, isDmRoom) ⇒ Promise.<{(roomId:string): RoomModel}> ⏏
- fetchRoom(myUserId, roomId) ⇒ ⏏
- fetchRoomList(userId, isHiddenRoomIncluded) ⇒ ⏏
- updateRoomInfo(roomId, newName, newDescription, newIsUsed, newPhoto, newIsSearchable) ⇒ ⏏
- updateRoomMemberSetting(roomId, myUserId, newRole, newUserNick, newUserStatus, newIsVisible, newRoomCustomName, newIsAlarmUsed, newIsRoomBookmarked) ⇒ ⏏
- fetchRoomMemberList(userId, roomId) ⇒ ⏏
- getRoomList(userId) ⇒ Promise.<{(key:string): RoomModel}> ⏏
- getRoomDetails(myUserId, roomId) ⇒ Promise.<{room:RoomModel, roomMembers:Array.<RoomMemberModel>}> ⏏
- getChannelIds(roomId) ⇒ Object ⏏
- deleteFromRoomList(roomId) ⏏
- deleteFromRoomMemberList(roomId) ⏏
- deleteRoomMember(roomId, userId) ⏏
- inviteNewMembers(myUserId, userId, roomId, newMemberList) ⏏
- updateRoomMetadata(roomId, metadata) ⏏
createRoom(creatorId, name, description, parentId, photo, userList) ⇒ Promise.<{(roomId:string): string}> ⏏
룸 만들기
Kind: global method of RoomStore
Returns: Promise.<{(roomId:string): string}> - - Promise 형태로, roomId 를 key 값으로 하고, string 형식의 room Id
Param | Type | Description |
---|---|---|
creatorId | string | (필수) 생성하는 사용자의 UUID |
name | string | (옵션) 생성하는 룸 이름 |
description | string | (옵션) 생성하는 룸의 설명 |
parentId | string | (옵션) parentId - 명세 명확하지 않음 1-2팀 확인 필요 |
photo | string | (옵션) 생성하는 룸의 프로필 사진 |
userList | Array | (필수) Object Array 의 형태로 {userId: 'adf-sdf-sdf'},{userId: 'sfwefdf-sdf'}의 형태로 생성하는 룸의 멤버들 |
activateRoom(roomId, myUserId, isDmRoom) ⇒ Promise.<{(roomId:string): RoomModel}> ⏏
룸 활성화 하기
Kind: global method of RoomStore
Returns: Promise.<{(roomId:string): RoomModel}> - - Promise 형태로, roomId 를 key 값으로 하고, RoomModel 형식의 Room 정보를 리턴
Param | Type | Description |
---|---|---|
roomId | string | (필수) 활성화 하려는 임시방의 룸ID |
myUserId | string | (필수) 나의 유저 UUID |
isDmRoom | boolean | (필수) 1:1 룸인지 아니지에 대한 boolean 값 |
fetchRoom(myUserId, roomId) ⇒ ⏏
단일 룸 정보 가져오기 (룸 멤버는 별도의 콜 필요함)
Kind: global method of RoomStore
Returns: {Promise<{(key:string):{room:RoomModel,roomMembers:Array}>} - Promise 형태로, roomId 를 key 값으로 하고, 룸정보와 룸멤버 정보를 value 하는 하는 map
Param | Type | Description |
---|---|---|
myUserId | string | (필수) 사용자의 UUID |
roomId | string | (필수) 가져 오려는 룸의 ID |
fetchRoomList(userId, isHiddenRoomIncluded) ⇒ ⏏
룸 리스트 가져오기 (룸 멤버는 별도의 콜 필요함)
Kind: global method of RoomStore
Returns: {Promise<{(key:string):{room:RoomModel,roomMembers:Array}>} - Promise 형태로, roomId 를 key 값으로 하고, 룸정보와 룸멤버 정보를 value 하는 하는 map
Param | Type | Description |
---|---|---|
userId | string | (필수) 사용자의 UUID |
isHiddenRoomIncluded | boolean | (옵션) 숨겨진 방도 call 할지에 대한 옵션 |
updateRoomInfo(roomId, newName, newDescription, newIsUsed, newPhoto, newIsSearchable) ⇒ ⏏
룸 멤버 업데이트
Kind: global method of RoomStore
Returns: {Promise<{(key:string):{room:RoomModel,roomMembers:Array}>} - Promise 형태로, roomId 를 key 값으로 하고, 룸정보와 룸멤버 정보를 value 하는 하는 map
Param | Type | Description |
---|---|---|
roomId | string | (필수) 룸 ID |
newName | string | (옵션) 변경 하고 싶은 룸 이름 |
newDescription | string | (옵션) 변경 하고 싶은 룸 설명 |
newIsUsed | boolean | (옵션) 변경 하고 싶은 룸의 사용 여부 |
newPhoto | string | (옵션) 변경 하고 싶은 룸의 프로필 사진 |
newIsSearchable | boolean | (옵션) 변경 하고 싶은 룸 검색 허용 여부 |
updateRoomMemberSetting(roomId, myUserId, newRole, newUserNick, newUserStatus, newIsVisible, newRoomCustomName, newIsAlarmUsed, newIsRoomBookmarked) ⇒ ⏏
룸의 세팅에 대한 정보
Kind: global method of RoomStore
Returns: {Promise<{(key:string):{room:RoomModel,roomMembers:Array}>} - Promise 형태로, roomId 를 key 값으로 하고, 룸정보와 룸멤버 정보를 value 하는 하는 map
Param | Type | Description |
---|---|---|
roomId | string | (필수) 룸 ID |
myUserId | string | (필수) 나의 유저 UUID |
newRole | string | (옵션) 유저의 ROLE (WKS0004 - 그룹장, WKS0005 - 그룹원) |
newUserNick | string | (옵션) 룸 내 나의 닉네임 |
newUserStatus | string | (옵션) 나의 유저 상태 -> 레드마인 명세 명확하지 않음 1-2팀 확인 필요 |
newIsVisible | boolean | (옵션) 나의 룸 숨기기 옵션 |
newRoomCustomName | string | (옵션) 룸의 별칭 |
newIsAlarmUsed | boolean | (옵션) 룸 알람 옵션 |
newIsRoomBookmarked | boolean | (옵션) 룸 즐겨찾기 옵션 |
fetchRoomMemberList(userId, roomId) ⇒ ⏏
해당 하는 룸의 멤버정보 가져오기
Kind: global method of RoomStore
Returns: {Promise<{(key:string):{room:RoomModel,roomMembers:Array}>} - Promise 형태로, roomId 를 key 값으로 하고, 룸정보와 룸멤버 정보를 value 하는 하는 map
Param | Type | Description |
---|---|---|
userId | string | (필수) 사용자 UUID |
roomId | string | (필수) 룸 ID |
getRoomList(userId) ⇒ Promise.<{(key:string): RoomModel}> ⏏
현재 저장되어 있는 룸 리스트 가져오기(없을 경우 fetchRoomList 활용한 결과값 리턴)
Kind: global method of RoomStore
Returns: Promise.<{(key:string): RoomModel}> - - Promise 형태로, roomId 를 key 값으로 하고, 룸정보와 룸멤버 정보를 value 하는 하는 map
Param | Type | Description |
---|---|---|
userId | string | (필수) 룸 ID |
getRoomDetails(myUserId, roomId) ⇒ Promise.<{room:RoomModel, roomMembers:Array.<RoomMemberModel>}> ⏏
해당 룸 정보와 룸에 속한 멤버를 같이 리턴
Kind: global method of RoomStore
Returns: Promise.<{room:RoomModel, roomMembers:Array.<RoomMemberModel>}> - - Promise 형태로 룸정보와 룸멤버 정보를 value 하는 하는 object
Param | Type | Description |
---|---|---|
myUserId | string | (필수) 나의 유저 UUID |
roomId | string | (필수) 룸 ID |
getChannelIds(roomId) ⇒ Object ⏏
채널 아이디 목록 가져오기
Kind: global method of RoomStore
Returns: Object - - channelType을 key로 하는 map 형태의 반환값
Param | Type | Description |
---|---|---|
roomId | string | (필수) 룸 ID |
deleteFromRoomList(roomId) ⏏
특정한 룸을 리스트에서 제거
Kind: global method of RoomStore
Param | Type | Description |
---|---|---|
roomId | string | (필수) 룸 아이디 |
deleteFromRoomMemberList(roomId) ⏏
특정한 룸멤버들을 리스트에서 제거
Kind: global method of RoomStore
Param | Type | Description |
---|---|---|
roomId | string | (필수) 룸 아이디 |
deleteRoomMember(roomId, userId) ⏏
룸에 있는 멤버를 강퇴(제거)
Kind: global method of RoomStore
Param | Type | Description |
---|---|---|
roomId | string | (필수) 룸 아이디 |
userId | string | (필수) 사용자 아이디 |
inviteNewMembers(myUserId, userId, roomId, newMemberList) ⏏
새로운 멤버 초대
Kind: global method of RoomStore
Param | Type | Description |
---|---|---|
myUserId | string | (필수) 나의 유저 UUID |
userId | string | (필수) 초대한 유저의 UUID |
roomId | string | (필수) 룸 아이디 |
newMemberList | Array | (필수) Object Array 의 형태로 {userId: 'adf-sdf-sdf'},{userId: 'sfwefdf-sdf'}의 형태로 생성하는 룸의 멤버들 |
updateRoomMetadata(roomId, metadata) ⏏
룸의 메타데이터 정보 수정
Kind: global method of RoomStore
Param | Type | Description |
---|---|---|
roomId | string | 룸 ID |
metadata | Object | 변경할 메타데이터 정보 |
metadata.lastMessage | string | 마지막 메세지 |
metadata.lastMessageDate | string | 마지막 메세지에 대한 날짜 및 시간 |
metadata.count | number | 화면에 표현할 갯수 |
3 years ago