>  기사  >  위챗 애플릿  >  WeChat 포털 및 애플리케이션의 C# 개발 - WeChat 기업 계정을 위한 메시징(텍스트, 사진, 파일, 음성, 비디오, 그래픽 메시지 등)

WeChat 포털 및 애플리케이션의 C# 개발 - WeChat 기업 계정을 위한 메시징(텍스트, 사진, 파일, 음성, 비디오, 그래픽 메시지 등)

高洛峰
高洛峰원래의
2017-02-18 09:36:282007검색

기업 계정은 주로 기업의 요구 사항을 충족하기 위해 설계되었으므로 내부 메시지 교환이 매우 중요하며, 특히 대기업의 경우 보내고 답장하는 메시지의 수가 상당해야 하므로 기업 계정과 결합하여 내부 커뮤니케이션 메시지를 구현합니다. 기업 계정은 보안에 중점을 두고 무제한 메시징을 제공한다는 특징이 있어 기업 내부 환경에 매우 적합합니다. 이 글에서는 주로 기업 계정을 사용하여 문자, 사진, 파일, 음성, 영상, 그래픽 메시지 및 기타 메시지를 보내는 방법을 소개합니다.

1. 기업 계정의 특징

기업 계정의 경우 다음과 같은 기능이 있습니다.

1) 보안에 집중

– 전용 기업 커뮤니케이션 등록된 회원만이 회사 계정을 팔로우할 수 있으며, 계층적 관리자, 비밀 메시지 등 다양한 기능을 통해 회사 내부 정보의 보안을 보장합니다.

기업은 기업 정보의 사용 및 전송에 대한 보안을 보장하기 위해 팔로워 신원에 대한 자체 확인을 설정하고 2차 보안 확인을 수행할 수 있습니다.

직원이 퇴사하는 경우 회사 관리자가 주소록에서 해당 회원을 삭제할 수 있으며, 해당 회원은 자동으로 회사 계정을 언팔로우하고, 위챗의 회사 계정 기록도 삭제됩니다.

2) 애플리케이션 구성

– 기업은 기업 계정에 여러 서비스 계정을 구성할 수 있으며, 이를 통해 승인된 기업 구성원만 해당 서비스 번호를 사용할 수 있습니다.

3) 무제한 메시지

– 메시지 전송에 제한이 없으며 기업의 복잡하고 개인화된 애플리케이션 시나리오에 적응할 수 있는 완전한 관리 인터페이스와 WeChat 기본 기능을 제공합니다.

기업에서는 직원들에게 적극적으로 메시지를 보낼 수 있으며, 메시지 개수에는 제한이 없습니다.

4) 더 편리해진 사용

– 기업 계정은 WeChat에서 통합된 메시지 입구를 가지며, 사용자는 기업 계정 메시지를 더욱 편리하게 관리할 수 있습니다. WeChat 주소록은 기업 계정의 애플리케이션에 직접 액세스할 수도 있습니다.

2. 기업 계정 관리 인터페이스 콘텐츠

기업 계정의 현재 콘텐츠는 자재 관리, 수동 응답 메시지, 주소록 관리, 사용자 정의 메뉴 등에 대한 자세한 내용은 아래 도표를 참조하세요.

C#开发微信门户及应用-微信企业号的消息发送(文本、图片、文件、语音、视频、图文消息等)

3. 기업 계정 메시지 및 이벤트 처리

기업 계정은 공식 계정과 마찬가지로 메시지 처리와 이벤트로 구분할 수 있습니다. 처리 처리에는 두 가지 유형의 처리 작업이 있습니다. 즉, 전송된 메시지에는 문자 메시지, 사진 메시지, 파일 메시지, 비디오 메시지, 음성 메시지, 지리적 문자 메시지, 그래픽 및 멀티미디어 메시지 등이 포함됩니다.

이벤트 처리에는 주로 팔로우 및 언팔로우 이벤트, 메뉴 클릭 유형 및 보기 유형 작업, 지리적 위치 보고 이벤트 등이 포함됩니다.

두 가지 유형의 처리 다이어그램은 다음과 같습니다.

C#开发微信门户及应用-微信企业号的消息发送(文本、图片、文件、语音、视频、图文消息等)

4. 기업 계정 메시지 관리

기업 관리 배경에서도 공식 계정과 마찬가지로 해당 내용을 확인할 수 있습니다. 정보교환에 관한 기록은 문자, 그림, 지리적 위치 등을 포함하며 다음과 같습니다.

C#开发微信门户及应用-微信企业号的消息发送(文本、图片、文件、语音、视频、图文消息等)

메시지는 텍스트, 이미지, 파일, 음성, 비디오, 사진 뉴스, MpNews 등 여러 유형으로 나누어져 있기 때문입니다.

따라서 이들을 각각 정의하고 캡슐화해야 합니다. 다음은 정보 객체 설계 다이어그램입니다.

C#开发微信门户及应用-微信企业号的消息发送(文本、图片、文件、语音、视频、图文消息等)

기업 계정에서 보내는 메시지의 공식적인 정의는 다음과 같습니다.

기업이 직원에게 적극적으로 메시지를 보낼 수 있습니다. 메시지 양은 제한되지 않습니다.

인터페이스 호출 시에는 HTTPS 프로토콜과 JSON 데이터 패킷 형식을 사용하세요. 데이터 패킷은 암호화할 필요가 없습니다.

현재 텍스트, 사진, 음성, 비디오, 파일, 그래픽 및 기타 메시지 유형을 지원합니다. 뉴스 유형 외에도 기밀 옵션을 사용하여 다른 유형의 메시지를 보낼 수 있습니다. 기밀 메시지는 워터마크가 표시되며 수신자만 읽을 수 있습니다.

전송된 문자 메시지의 정의는 다음과 같습니다.

  • 문자 메시지

rreee

参数 必须 说明
touser UserID列表(消息接收者,多个接收者用‘|’分隔)。特殊情况:指定为@all,则向关注该企业应用的全部成员发送
toparty PartyID列表,多个接受者用‘|’分隔。当touser为@all时忽略本参数
totag TagID列表,多个接受者用‘|’分隔。当touser为@all时忽略本参数
msgtype 消息类型,此时固定为:text
agentid 企业应用的id,整型。可在应用的设置页面查看
content 消息内容
safe 表示是否是保密消息,0表示否,1表示是,默认0

모든 메시지에는 공통 속성인 다음 메시지가 포함됩니다.


{
   "touser": "UserID1|UserID2|UserID3",
   "toparty": " PartyID1 | PartyID2 ",
   "totag": " TagID1 | TagID2 ",
   "msgtype": "text",
   "agentid": "1",
   "text": {
       "content": "Holiday Request For Pony(http://www.php.cn/)"
   },
   "safe":"0"
}


따라서 이를 편리하게 전달하기 위해 기본 클래스를 정의할 수 있습니다. 일반적인 정보.


    touser": "UserID1|UserID2|UserID3",   "toparty": " PartyID1 | PartyID2 ",   "totag": " TagID1 | TagID2 ",   "msgtype": "text",   "agentid": "1",


그러면 아래와 같이 다른 메시지가 이 기본 클래스를 하나씩 상속할 수 있습니다.

C#开发微信门户及应用-微信企业号的消息发送(文本、图片、文件、语音、视频、图文消息等)

은 결국 아래와 같은 상속 다이어그램을 형성하게 됩니다.

C#开发微信门户及应用-微信企业号的消息发送(文本、图片、文件、语音、视频、图文消息等)

5. 메시지 인터페이스 정의 및 구현

관련 전송 개체를 정의한 후 다음과 같이 통합 전송 인터페이스를 정의할 수 있습니다.


    /// <summary>
    /// 企业号发送消息的基础消息内容    /// </summary>
    public class CorpSendBase
    {      
        /// <summary>
        /// UserID列表(消息接收者,多个接收者用‘|’分隔)。特殊情况:指定为@all,则向关注该企业应用的全部成员发送        /// </summary>
        public string touser { get; set; }        /// <summary>
        /// PartyID列表,多个接受者用‘|’分隔。当touser为@all时忽略本参数        /// </summary>
        public string toparty { get; set; }        /// <summary>
        /// TagID列表,多个接受者用‘|’分隔。当touser为@all时忽略本参数        /// </summary>
        public string totag { get; set; }        /// <summary>
        /// 消息类型        /// </summary>
        public string msgtype { get; set; }        /// <summary>
        /// 企业应用的id,整型。可在应用的设置页面查看        /// </summary>
        public string agentid { get; set; }        /// <summary>
        /// 表示是否是保密消息,0表示否,1表示是,默认0        /// </summary>
        [JsonProperty(NullValueHandling = NullValueHandling.Ignore)]        public string safe { get; set; }

    }


마지막으로 인터페이스 정의에 따라 텍스트 및 기타 형태의 메시지가 구현되며, 구현 코드는 다음과 같다. 전송 프로세스에서는 암호화를 위한 암호화 클래스 호출이 필요하지 않습니다.


    /// <summary>
    /// 企业号消息管理接口定义    /// </summary>
    public interface ICorpMessageApi
    {        
        /// <summary>
        /// 发送消息。        /// 需要管理员对应用有使用权限,对收件人touser、toparty、totag有查看权限,否则本次调用失败。        /// </summary>
        /// <param name="accessToken"></param>
        /// <returns></returns>
        CommonResult SendMessage(string accessToken, CorpSendBase data);
    }


6. 메시지 전송 동작 및 실제 효과

해당 전송 개체를 정의한 후 메시지 전송을 통합합니다. 텍스트, 사진, 파일, 음성 및 기타 유형의 메시지를 포함한 작업을 수행할 수 있습니다. 일부 메시지는 서버에 업로드된 다음 mediaId에 따라 전송되어야 합니다.

문자와 사진을 보내기 위한 연산코드는 다음과 같습니다.


    /// <summary>
    /// 企业号消息管理实现类    /// </summary>
    public class CorpMessageApi : ICorpMessageApi
    {        /// <summary>
        /// 发送消息。        /// 需要管理员对应用有使用权限,对收件人touser、toparty、totag有查看权限,否则本次调用失败。        /// </summary>
        /// <param name="accessToken"></param>
        /// <returns></returns>
        public CommonResult SendMessage(string accessToken, CorpSendBase data)
        {        
            CommonResult result = new CommonResult();            string urlFormat = "http://www.php.cn/{0}";            var url = string.Format(urlFormat, accessToken);            var postData = data.ToJson();            //数据不用加密发送
            CorpSendResult sendResult = CorpJsonHelper<CorpSendResult>.ConvertJson(url, postData);            if (sendResult != null)
            {
                result.Success = (sendResult.errcode == CorpReturnCode.请求成功);
                result.ErrorMessage = string.Format("invaliduser:{0},invalidparty:{1},invalidtag:{2}",
                    sendResult.invaliduser, sendResult.invalidparty, sendResult.invalidtag);
            }            return result;
        }
    }


위챗 기업 계정의 최종 스크린샷은 다음과 같습니다. 텍스트 테스트, 파일 테스트, 그래픽 테스트, 음성 테스트 포함 테스트 결과는 모두 정상입니다.

C#开发微信门户及应用-微信企业号的消息发送(文本、图片、文件、语音、视频、图文消息等) C#开发微信门户及应用-微信企业号的消息发送(文本、图片、文件、语音、视频、图文消息等)

WeChat 포털 및 애플리케이션의 추가 C# 개발 - WeChat 기업 계정 메시징(텍스트, 사진, 파일, 음성, 비디오, 그래픽 메시지 등) 관련 기사를 보려면 PHP 중국어 웹사이트에 주목하세요!


성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.