관리채팅방 동결채팅방 동결

채팅방 동결

개요

채팅방 동결 기능은 채팅방 상태를 업데이트하여 채팅방 사용을 일시 중지하거나 비활성화합니다. 채팅방 상태를 비활성(status=0)으로 설정하면 채팅방이 동결되며, 사용자는 해당 채팅방에서 정상적으로 상호작용할 수 없습니다. 이 기능은 콘텐츠 관리, 규정 위반 처리 및 채팅방 유지보수에 적합합니다.


API 엔드포인트

지정된 채팅방 동결

채팅방 상태를 업데이트하여 채팅방을 동결하고 비활성 상태로 만듭니다.

PUT /rooms/{id}

Headers

매개변수타입필수설명
IM-CLIENT-KEYstring클라이언트 키
IM-Authorizationstring클라이언트 토큰

Path Parameters

매개변수타입필수설명
idstring채팅방 ID

Post Body

매개변수타입필수설명
statusnumber채팅방 상태: 0=비활성(동결), 1=활성

요청 예시

채팅방 동결

PUT /rooms/58871b877390be11d5f1ab30 HTTP/1.1
IM-CLIENT-KEY: 9FSk26d4AIbZh0k44F5+DzbetgAJA9WjC7WP36Khm6c=
IM-Authorization: fVy7YhqBZqEzNO9LhMmcyA==
Content-Type: application/json; charset=utf-8
Host: your-app.imkit.io
Connection: close
 
{
  "status": 0
}

채팅방 동결 해제

PUT /rooms/58871b877390be11d5f1ab30 HTTP/1.1
IM-CLIENT-KEY: 9FSk26d4AIbZh0k44F5+DzbetgAJA9WjC7WP36Khm6c=
IM-Authorization: fVy7YhqBZqEzNO9LhMmcyA==
Content-Type: application/json; charset=utf-8
Host: your-app.imkit.io
Connection: close
 
{
  "status": 1
}

JavaScript 예시:

const response = await axios.put(
  `https://your-app.imkit.io/rooms/${roomId}`,
  {
    status: 0,
  },
  {
    headers: {
      "IM-CLIENT-KEY": IM_CLIENT_KEY,
      "IM-Authorization": TOKEN,
      "Content-Type": "application/json",
    },
  }
);

cURL 예시:

curl -X "PUT" "https://your-app.imkit.io/rooms/{id}" \
     -H 'IM-CLIENT-KEY: {IM-CLIENT-KEY}' \
     -H 'IM-Authorization: {IM-Authorization}' \
     -H 'Content-Type: application/json' \
     -d '{"status": 0}'

Response

성공 응답 (200 OK)

매개변수타입설명
RCnumber응답 코드 (0은 성공을 의미함)
RMstring응답 메시지
resultobject업데이트된 채팅방 데이터

채팅방 객체 구조

매개변수타입설명
_idstring채팅방 고유 식별자
namestring채팅방 이름
coverstring채팅방 커버 이미지 URL
descriptionstring채팅방 설명
statusnumber채팅방 상태 (0=동결, 1=정상)
lastMessageobject마지막 메시지 정보
membersarray채팅방 멤버 목록

응답 예시

채팅방 동결 성공

{
  "RC": 0,
  "RM": "Room frozen successfully",
  "result": {
    "_id": "58871b877390be11d5f1ab30",
    "name": "Test Room",
    "cover": "http://loremflickr.com/240/240/style?Kelly",
    "description": "This room has been frozen",
    "status": 0,
    "lastMessage": {
      "_id": "588723a346006e17f4d82fe3",
      "message": "Last message before freeze",
      "messageType": "text",
      "sender": {
        "_id": "1485248560558",
        "nickname": "Test User",
        "avatarUrl": "http://example.com/avatarUrl",
        "lastLoginTimeMS": 0
      },
      "messageTimeMS": 1485251491375
    },
    "members": [
      {
        "_id": "1485248560558",
        "nickname": "Test User",
        "avatarUrl": "http://example.com/avatarUrl",
        "lastLoginTimeMS": 1485764751552
      }
    ]
  }
}

오류 응답

401 Unauthorized - 인증 실패

{
  "RC": 401,
  "RM": "Unauthorized",
  "error": {
    "code": "INVALID_TOKEN",
    "message": "Invalid or expired token"
  }
}

403 Forbidden - 권한 부족

{
  "RC": 403,
  "RM": "Permission denied",
  "error": {
    "code": "INSUFFICIENT_PERMISSIONS",
    "message": "Only room owner, manager, or platform admin can freeze room"
  }
}

404 Not Found - 채팅방이 존재하지 않음

{
  "RC": 404,
  "RM": "Room not found",
  "error": {
    "code": "ROOM_NOT_FOUND",
    "message": "Room with specified ID does not exist"
  }
}

사용 시나리오

콘텐츠 관리

  • 규정 위반 처리: 커뮤니티 규정을 위반한 채팅방에 대해 일시적 동결을 진행합니다.
  • 긴급 상황: 긴급 사건 발생 시 채팅방을 빠르게 차단합니다.
  • 콘텐츠 검토: 콘텐츠 검토를 위해 채팅방을 일시적으로 동결합니다.

채팅방 유지보수

  • 시스템 점검: 시스템 점검 기간 동안 채팅방을 일시적으로 동결합니다.
  • 기능 업데이트: 채팅방 기능 업데이트 시 일시적으로 사용을 중지합니다.
  • 데이터 마이그레이션: 데이터 마이그레이션 진행 시 채팅방 사용을 중단합니다.

관리 작업

  • 대량 관리: 여러 채팅방을 일괄적으로 동결하거나 동결 해제합니다.
  • 권한 제어: 승인된 사용자만 동결 작업을 수행할 수 있도록 보장합니다.
  • 상태 추적: 채팅방의 동결 상태와 이력을 모니터링합니다.

주의 사항

  • 권한 제한: 채팅방 소유자, 관리자 또는 플랫폼 관리자만 동결 작업을 수행할 수 있습니다.
  • 상태 영향: 동결된 채팅방(status=0)은 정상적으로 사용할 수 없습니다.
  • 사용자 경험: 동결 기간 동안 사용자는 메시지를 보내거나 상호작용할 수 없습니다.
  • 즉시 반영: 상태 변경은 즉시 반영되어 모든 채팅방 멤버에게 영향을 미칩니다.
  • 가역적 작업: status=1로 설정하여 채팅방 동결을 해제할 수 있습니다.
  • 데이터 보존: 채팅방을 동결해도 이전 메시지와 멤버 데이터는 삭제되지 않습니다.
  • 알림 메커니즘: 동결 작업은 관련 알림이나 이벤트를 트리거할 수 있습니다.
© 2026 FUNTEK Software Inc. All rights reserved.