tencent cloud

피드백

그룹 내 발언 전 콜백

마지막 업데이트 시간:2024-02-22 11:04:45

    기능 설명

    이 API는 App 백엔드에서 다음을 포함하여 사용자의 그룹 메시지를 실시간으로 보는 데 사용됩니다.
    예를 들어 로그를 기록하거나 다른 시스템에 메시지를 동기화하여 실시간으로 그룹 메시지를 기록합니다.
    그룹에서 메시지를 보내려는 사용자의 요청을 차단합니다.
    주의:
    메시지 전 콜백은 기본적으로 2s의 시간 초과로 설정되며 조정하지 않는 것이 좋습니다. 콘텐츠 조정은 이전 콜백을 사용하여 처리되며 이로 인해 전체 이전 콜백이 시간 초과될 수 있습니다.

    주의 사항

    이 콜백을 활성화하려면 콜백 URL을 구성하고 이 콜백에 해당하는 스위치를 활성화해야 합니다. 설정 방법에 대한 자세한 내용은 콜백 설정을 참고하십시오.
    이 콜백 중에 IM 백엔드는 App 백엔드에 대한 HTTP POST 요청을 시작합니다.
    콜백 요청을 받은 후 App 백엔드는 요청 URL에 포함된 SDKAppID가 앱의 SDKAppID인지 확인해야 합니다.
    보안 고려 사항에 대한 자세한 내용은 타사 콜백 개요의 보안 고려 사항 섹션을 참고하십시오.

    콜백 트리거 시나리오

    App 사용자는 클라이언트에서 그룹 메시지를 보냅니다.
    App 관리자는 REST API 호출을 통해 그룹 메시지를 보냅니다.

    콜백 트리거 시간

    콜백은 IM 백엔드가 그룹 구성원에게 그룹 메시지를 보내기 전에 트리거됩니다.

    API 설명

    요청 예시 URL

    다음 예시에서 App에 구성된 콜백 URL은 https://www.example.com입니다. 예시:
    https://www.example.com?SdkAppid=$SDKAppID&CallbackCommand=$CallbackCommand&contenttype=json&ClientIP=$ClientIP&OptPlatform=$OptPlatform

    요청 매개변수

    매개변수
    설명
    https
    요청 프로토콜은 HTTPS이고 요청 방법은 POST
    www.example.com
    콜백 URL
    SdkAppid
    애플리케이션 생성 시 IM 콘솔에서 할당된 SDKAppID
    CallbackCommand
    값은 항상 Group.CallbackBeforeSendMsg
    contenttype
    값은 항상 JSON
    ClientIP
    클라이언트의 IP 주소(예: 127.0.0.1)
    OptPlatform
    클라이언트의 플랫폼. 유효한 값에 대한 자세한 내용은 타사 콜백 개요의 콜백 프로토콜 섹션에서 OptPlatform 설명 참고

    요청 예시

    {
    "CallbackCommand": "Group.CallbackBeforeSendMsg", // 콜백 명령
    "GroupId": "@TGS#2J4SZEAEL", // 그룹 ID
    "Type": "Community", // 그룹 유형
    "From_Account": "jared", // 발신자
    "Operator_Account":"admin", // 요청 개시자
    "Random": 123456, // 랜덤 숫자
    "OnlineOnlyFlag": 1, // 값은 온라인 메시지인 경우 1이고 그렇지 않은 경우 0(기본값)입니다. 오디오/비디오 그룹의 경우 값은 0입니다.
    "MsgBody": [ // 메시지 본문, 자세한 내용은 TIMMessage 메시지 객체 참고
    {
    "MsgType": "TIMTextElem", // 텍스트
    "MsgContent": {
    "Text": "red packet"
    }
    }
    ],
    "CloudCustomData": "your cloud custom data",
    "TopicId":"@TGS#_@TGS#cQVLVHIM62CJ@TOPIC#_TestTopic",// 주제의 ID, 이 옵션은 주제 기능을 지원하는 커뮤니티에서만 사용할 수 있습니다
    "EventTime":"1670574414123"//밀리초 수준, 이벤트 트리거 타임스탬프
    }

    응답 필드

    필드
    유형
    설명
    CallbackCommand
    String
    콜백 명령
    GroupId
    String
    그룹 메시지를 생성하는 그룹의 ID
    Type
    String
    Public과 같이 그룹 메시지를 생성하는 그룹의 유형이며, 자세한 내용은 그룹 유형 참고
    From_Account
    String
    메시지 발신자의 UserID
    Operator_Account
    String
    관리자가 요청을 시작했는지 여부를 시스템에서 식별할 수 있는 요청 개시자의 UserID
    Random
    Integer
    요청의 32비트 난수
    OnlineOnlyFlag
    Integer
    값은 온라인 메시지인 경우 1이고 그렇지 않은 경우 0(기본값)입니다. 오디오/비디오 그룹의 경우 값은 0입니다.
    MsgBody
    Array
    메시지 본문, 자세한 내용은 메시지 형식 참고
    CloudCustomData
    String
    메시지 사용자 지정 데이터(클라우드에 저장되고 피어 측으로 전송되며 프로그램을 언로드하고 다시 설치한 후에도 데이터를 가져올 수 있음)
    TopicId
    String
    주제의 ID, 이 옵션은 주제 기능을 지원하는 커뮤니티에서만 사용
    EventTime
    Integer
    이벤트 트리거의 밀리초 수준 타임스탬프

    응답 예시

    그룹 메시지 전송 허용

    사용자는 그룹 메시지를 보낼 수 있으며 메시지 내용은 수정되지 않습니다.
    {
    "ActionStatus": "OK",
    "ErrorInfo": "",
    "ErrorCode": 0 // 0은 사용자가 그룹 메시지를 보낼 수 있음을 나타냅니다
    }

    그룹 메시지 전송 금지

    사용자는 그룹 메시지를 보낼 수 없습니다. 이 경우 메시지가 전송되지 않고 호출자에게 에러 코드 10016이 반환됩니다.
    {
    "ActionStatus": "OK",
    "ErrorInfo": "",
    "ErrorCode": 1 // 1은 사용자가 그룹 메시지를 보낼 수 없음을 나타냅니다
    }

    자동으로 메시지 삭제

    사용자는 그룹 메시지를 보낼 수 없습니다. 이 경우 메시지가 전송되지 않지만 호출자에게 성공 메시지가 반환됩니다.
    {
    "ActionStatus": "OK",
    "ErrorInfo": "",
    "ErrorCode": 2 // 2는 메시지가 자동으로 삭제됨을 나타냅니다
    }

    메시지 내용 수정

    다음 응답 예시에서는 사용자가 보낸 그룹 메시지가 수정되고(사용자 지정 메시지가 추가됨) IM 백엔드가 수정된 메시지를 보냅니다. 이 기능을 통해 App 백엔드는 사용자가 보낸 메시지에 사용자 수준 및 제목과 같은 특수 콘텐츠를 추가할 수 있습니다.
    {
    "ActionStatus": "OK",
    "ErrorInfo": "",
    "ErrorCode": 0, // 이 필드는 0으로 설정해야 수정된 메시지가 정상적으로 전송될 수 있습니다
    "MsgBody": [ // App 백엔드에서 수정한 메시지, App 백엔드가 메시지를 수정하지 않으면 기본적으로 사용자가 보낸 메시지가 사용됩니다
    {
    "MsgType": "TIMTextElem", // 텍스트
    "MsgContent": {
    "Text": "red packet"
    }
    },
    {
    "MsgType": "TIMCustomElem", // 사용자 지정 메시지
    "MsgContent": {
    "Desc": "CustomElement.MemberLevel", // 설명
    "Data": "LV1" // 데이터
    }
    }
    ],
    "CloudCustomData": "your cloud custom data"
    }

    응답 필드

    필드
    유형
    필수
    설명
    ActionStatus
    String
    Yes
    요청 처리 결과. OK: 성공, FAIL: 실패
    ErrorCode
    Integer
    Yes
    오류 코드가 반환되었습니다. 0: 그룹 메시지 전송 허용; 1: 그룹 메시지 전송 금지; 2: 메시지를 조용히 버립니다. 비즈니스 측에서 사용자가 그룹 메시지를 보내고 클라이언트에 ErrorCode 및 ErrorInfo를 보내는 것을 금지하려면 ErrorCode 값이 [10100, 10200] 범위 내로 설정되었는지 확인하십시오.
    ErrorInfo
    String
    Yes
    오류 정보
    MsgBody
    Array
    No
    App 백엔드에서 수정한 메시지 본문입니다. IM 백엔드는 수정된 메시지를 그룹에 보냅니다. 형식에 대한 자세한 내용은 메시지 형식을 참고하십시오.
    CloudCustomData
    String
    No
    메시지 사용자 지정 데이터(클라우드에 저장되고 피어 측으로 전송되며 프로그램을 언로드하고 다시 설치한 후에도 데이터를 가져올 수 있음)

    참고

    문의하기

    고객의 업무에 전용 서비스를 제공해드립니다.

    기술 지원

    더 많은 도움이 필요하시면, 티켓을 통해 연락 바랍니다. 티켓 서비스는 연중무휴 24시간 제공됩니다.

    연중무휴 24시간 전화 지원