rayner_个人页

个人头像照片 rayner
338
4
0

个人介绍

暂无个人介绍

擅长的技术

获得更多能力
通用技术能力:

暂时未有相关通用技术能力~

云产品技术能力:

暂时未有相关云产品技术能力~

阿里云技能认证

详细说明
暂无更多信息
  • 发表了文章 2018-08-02

    Spring_总结_04_高级配置(一)之Profile

  • 发表了文章 2018-08-01

    Java_脚本引擎_01_用法入门

  • 发表了文章 2018-07-31

    Java_脚本引擎_00_资源帖

  • 发表了文章 2018-07-28

    Spring_总结_03_装配Bean(四)之导入与混合配置

  • 发表了文章 2018-07-28

    Spring_总结_03_装配Bean(三)之XML配置

  • 发表了文章 2018-07-28

    Spring_总结_03_装配Bean(二)之Java配置

  • 发表了文章 2018-07-27

    Spring_总结_03_装配Bean(一)之自动装配

  • 发表了文章 2018-07-27

    Spring_总结_02_依赖注入

  • 发表了文章 2018-07-26

    Spring_总结_01_Spring概述

  • 发表了文章 2018-07-26

    Spring_学习_00_资源帖

  • 发表了文章 2018-07-09

    SpringBoot_07_Springboot test 使用mockito进行web测试

  • 发表了文章 2018-07-09

    SpringBoot_06_使用Swagger2构建强大的RESTful API文档

  • 发表了文章 2018-07-05

    ElasticSearch_学习_01_单实例安装与分布式安装

  • 发表了文章 2018-06-13

    GEF入门实例_总结_06_为编辑器添加内容

  • 发表了文章 2018-06-13

    GEF入门实例_总结_05_显示一个空白编辑器

  • 发表了文章 2018-06-12

    GEF入门实例_总结_04_Eclipse插件启动流程分析

  • 发表了文章 2018-06-08

    GEF入门实例_总结_03_显示菜单和工具栏

  • 发表了文章 2018-06-07

    GEF入门实例_总结_02_新建初始RCP空项目

  • 发表了文章 2018-06-07

    GEF入门实例_总结_01_教程、源码、开发环境准备

  • 发表了文章 2018-05-31

    Eclipse插件开发_学习_02_GEF入门实例

正在加载, 请稍后...
滑动查看更多
  • 提交了问题 2017-10-23

    钉钉扫码的时候,安卓手机可以扫,苹果手机扫不了

  • 提交了问题 2017-10-19

    对应企业未开通域名微应用

  • 回答了问题 2017-10-13

    dingtalk.corp.message.corpconversation.asyncsend企业会话消息异步发送,Missing method

    Redingtalk.corp.message.corpconversation.asyncsend企业会话消息异步发送,Missing meth
    三。源码
    AsyncMessage
    package com.ray.dingtalk.model.message.asyncsend;

    /**@desc  :
    *
    * 参考文档地址:https://open-doc.dingtalk.com/docs/
    * doc.htm?spm=a219a.7629140.0.0.hZSBgV&treeId=385&
    * articleId=28915&docType=2
    *
    * @author: shirayner
    * @date  : 2017年10月13日 下午1:53:40
    */
    public class AsyncMessage {
        //1.公共参数
        //必须 ,API接口名称
        private String method;
        //必须 ,钉钉提供的授权Token
        private String session;
        //必须,时间戳,格式为yyyy-MM-dd HH:mm:ss,时区为GMT+8,例如:2015-01-01 12:00:00。
        //淘宝API服务端允许客户端请求最大时间误差为10分钟。
        private String timestamp;
        //必须,API协议版本,可选值:2.0。
        private String v;
        
        //2.请求参数
        
        private String msgtype;
        //必须,微应用的id
        private Number agent_id;
        //必须,与msgtype对应的消息体,参见文档
        private String msgcontent;
        
        //否
        private String []     userid_list;
        //否
        private Boolean to_all_user;
        
        
        
        
        
        
        
        
        
        public String getMethod() {
            return method;
        }
        public void setMethod(String method) {
            this.method = method;
        }
        public String getSession() {
            return session;
        }
        public void setSession(String session) {
            this.session = session;
        }
        public String getTimestamp() {
            return timestamp;
        }
        public void setTimestamp(String timestamp) {
            this.timestamp = timestamp;
        }
        public String getV() {
            return v;
        }
        public void setV(String v) {
            this.v = v;
        }
        public String getMsgtype() {
            return msgtype;
        }
        public void setMsgtype(String msgtype) {
            this.msgtype = msgtype;
        }
        public Number getAgent_id() {
            return agent_id;
        }
        public void setAgent_id(Number agent_id) {
            this.agent_id = agent_id;
        }
        public String getMsgcontent() {
            return msgcontent;
        }
        public String[] getUserid_list() {
            return userid_list;
        }
        public void setUserid_list(String[] userid_list) {
            this.userid_list = userid_list;
        }
        public Boolean getTo_all_user() {
            return to_all_user;
        }
        public void setTo_all_user(Boolean to_all_user) {
            this.to_all_user = to_all_user;
        }
        public void setMsgcontent(String msgcontent) {
            this.msgcontent = msgcontent;
        }


        
    }


    2.AsyncSendMessageService
    package com.ray.dingtalk.service.message.asyncsend;

    import com.alibaba.fastjson.JSON;
    import com.alibaba.fastjson.JSONObject;
    import com.ray.dingtalk.model.message.asyncsend.AsyncMessage;
    import com.ray.dingtalk.util.HttpHelper;

    /**@desc  : 主动发送异步消息
    *
    * @author: shirayner
    * @date  : 2017年10月13日 下午1:39:46
    */
    public class AsyncSendMessageService {
        private static final String SEND_ASYNCSENDMESSAGE_URL="https://eco.taobao.com/router/rest";

        
        
        public void sendMessage(String accessToken) throws Exception{
            //1.封装请求参数
            String method="dingtalk.corp.message.corpconversation.asyncsend";
            String session =accessToken;
            String timestamp= String.valueOf( System.currentTimeMillis() / 1000 );
            String v="2.0";

            String msgtype ="text";
            Number agent_id=128838526;
            String msgcontent="发送异步消息测试";
            Boolean to_all_user=true;
            
            AsyncMessage cca=new AsyncMessage();
            cca.setMethod(method);
            cca.setSession(session);
            cca.setTimestamp(timestamp);
            cca.setV(v);
            
            cca.setMsgtype(msgtype);
            cca.setAgent_id(agent_id);
            cca.setMsgcontent(msgcontent);
            cca.setTo_all_user(to_all_user);
            
            //1.准备POST请求参数
            Object data=JSON.toJSON(cca);      //将javaBean 转为 json
            System.out.println(data);

            //2.获取请求url
            String url=SEND_ASYNCSENDMESSAGE_URL;

            //3.发起POST请求,获取返回结果
            JSONObject jsonObject=HttpHelper.httpPost(url, data);
            System.out.println("jsonObject:"+jsonObject.toString());

            //4.解析结果,获取
            if (null != jsonObject) {  

                //5.错误消息处理
                if (0 != jsonObject.getInteger("errcode")) {  
                    int errCode = jsonObject.getInteger("errcode");
                    String errMsg = jsonObject.getString("errmsg");
                    throw new Exception("error code:"+errCode+", error message:"+errMsg);
                }  
            }          
            
        }
        
        
        
    }



    3.AsyncSendMessageServiceTest


    /**@desc  :
    *
    * @author: shirayner
    * @date  : 2017年10月13日 下午2:36:27
    */
    public class AsyncSendMessageServiceTest {

        @Test
        public void testSendNotice() throws Exception {
            String accessToken=AuthHelper.getAccessToken(Env.CORP_ID, Env.CORP_SECRET);
            
            AsyncSendMessageService asm=new AsyncSendMessageService();
            asm.sendMessage(accessToken);
        }
        
        
        
    }


    踩0 评论0
  • 提交了问题 2017-10-13

    dingtalk.corp.message.corpconversation.asyncsend企业会话消息异步发送,Missing method

正在加载, 请稍后...
滑动查看更多
正在加载, 请稍后...
暂无更多信息