DING日程-API对接:
官方API:https://ding-doc.dingtalk.com/doc#/serverapi2/iqel76

对接评语:
优点:钉钉API对接相对于微信API对接比较简单顺畅
缺点:1、官方DING日程API文档太缺乏具体描述,没有一定的界内开放平台对接经验很难做事;2、钉钉服务端API提供功能太少,能做的事情太少,如没有DING任务、DING等APP里应具有的功能;3、签到更是没有服务端API进行签到。

实现代码:

public async Task CreateCalendarScheduleAsync()
{var currentTime = DateTime.Now;var createVo = new OpenCalendarCreateVo{Summary = "ding日程主题-测试001",Description = "this is tester send ding richeng test 1111111  日程提醒日程提醒啊啊啊啊啊!",BizId = Guid.NewGuid().ToString("N")};createVo.Uuid = createVo.BizId;createVo.CreatorUserId = "042521620533169925";createVo.ReceiverUserIds = new string[] { "011015592638078731" };createVo.StartTime.UnixTimestamp = ToUnixDateTime(currentTime);createVo.EndTime.UnixTimestamp = ToUnixDateTime(currentTime.AddMinutes(30));createVo.Source.Title = "this is tester notification message test 001";createVo.Source.Url = "http://www.dingtalk.com/page=xxx";createVo.Reminder.Minutes = 15;createVo.Reminder.RemindType = "app";var request = new OapiCalendarCreateRequest{CreateVo = createVo};var httpContent = new StringContent(JsonConvert.SerializeObject(request));await AccessTokenCheckedAsync();//Do Post 。。。。。。}private long ToUnixDateTime(DateTime dateTime)
{if (dateTime.Kind != DateTimeKind.Utc){dateTime = dateTime.ToUniversalTime();}return (long)(dateTime.Subtract(new DateTime(1970, 1, 1))).TotalMilliseconds;
}public class OapiCalendarCreateRequest
{[JsonProperty("create_vo")]public OpenCalendarCreateVo CreateVo { get; set; }
}public class OpenCalendarCreateVo
{public OpenCalendarCreateVo(){StartTime = new DatetimeVo();EndTime = new DatetimeVo();Source = new OpenCalendarSourceVo();Reminder = new OpenCalendarReminderVo();}[JsonProperty("summary")]public string Summary { get; set; }[JsonProperty("description")]public string Description { get; set; }[JsonProperty("biz_id")]public string BizId { get; set; }[JsonProperty("uuid")]public string Uuid { get; set; }[JsonProperty("creator_userid")]public string CreatorUserId { get; set; }[JsonProperty("calendar_type")]public string CalendarType { get; set; } = "notification";[JsonProperty("receiver_userids")]public string[] ReceiverUserIds { get; set; }[JsonProperty("start_time")]public DatetimeVo StartTime { get; set; }[JsonProperty("end_time")]public DatetimeVo EndTime { get; set; }[JsonProperty("source")]public OpenCalendarSourceVo Source { get; set; }[JsonProperty("reminder")]public OpenCalendarReminderVo Reminder { get; set; }
}
public class OpenCalendarSourceVo
{[JsonProperty("title")]public string Title { get; set; }[JsonProperty("url")]public string Url { get; set; }
}
public class OpenCalendarReminderVo
{[JsonProperty("minutes")]public int Minutes { get; set; }[JsonProperty("remind_type")]public string RemindType { get; set; }
}

钉钉开放平台API对接第一讲相关推荐

  1. 钉钉开放平台API对接第三讲

    钉钉开放平台-服务端API-发起审批实例 官方API: https://ding-doc.dingtalk.com/doc#/serverapi2/cmct1a 需要做的事项: 1.进入钉钉后台管理- ...

  2. 360点睛营销开放平台API对接遇到的坑

    最近做了一个项目将各个搜索平台的账户数据整合统计,方便SEM竞价人员调整广告投放成本,在对接360点睛API接口的时候,遇到了个坑,现在整理如下: 因为点睛所有的请求接口都需要传递token码,但是t ...

  3. 新浪微博开放平台API中page参数的使用方法

    新浪微博开放平台API中page参数的使用方法 在做项目的时候,有时候要调用新浪微博开放平台的API.说实话,新浪微博的API功能很强大,但是API文档写的不是很清楚. 我在做项目的时候,调用了很多A ...

  4. php开放平台,顺丰开放平台API PHP SDK demo

    顺丰开放平台Api PHP SDK demo 引用 对接前期工作注册 提交接入申请 接口初始化配置,获得 app_id 和app_secret 完成测试环境测试 进入生产使用 接入注意事项申请令牌 ( ...

  5. 淘宝开放平台API开发(一)

    2019独角兽企业重金招聘Python工程师标准>>> 一.前言 淘宝官方为应用开发者提供了一套很好的API,开发是只要调用它的API接口就可以获取相应的数据.笔者现正从事Java ...

  6. 支付宝开放平台api接口封装统一调用方式

    在对接支付宝过程中,发现支付宝每个接口例子,都定义了AlipayClient和xxxRequest.xxxResponse. 老的写法就是每次都去写new一个AlipayClient package ...

  7. 产品 电信nb接口调用_通用电信华为物联网IOT开放平台NB-IOT对接profile透传编解码插件离线定制开发...

    原标题:通用电信华为物联网IOT开放平台NB-IOT对接profile透传编解码插件离线定制开发 电信平台登录界面: 设备发送数据到电信平台透传 : 设备发送数据到电信平台透传 NB-IOT设备到电信 ...

  8. 关于淘宝API的详细说明(淘宝开放平台API揭秘)

    自淘宝开放平台Beta公测开始,陆续开放了上百次个API,这些API涵盖了淘宝基本业务,截止发日志当天开放平台API每天的调用量可是说是天文数字. 作为TOP开发者的您对 于淘宝平台-API可以信手拿 ...

  9. 《后端》开放平台API安全设计

    文章目录 开放平台API接口加密,签名策略 参考各大平台策略 支付宝 微信 签名的概念与方法 2.1 为什么要签名? 2.2 签名算法过程 2.2.1 APPKEY+签名认证 2.2.2 token+ ...

最新文章

  1. irobot擦地机器人故障_懒人必备神器,电动高频擦地,科沃斯地宝T8 AIVI扫地机器人...
  2. 【hdu2089】不要62
  3. 阿里云ubuntu mysql_Ubuntu下安装MySQL(阿里云服务器)
  4. 信息学奥赛一本通(1237:求排列的逆序数)
  5. 安卓页面布局中android:gravity与android:layout_gravity的区别
  6. 读书笔记2013第5本:《拖延心理学》
  7. java mvc页面传值方式_详解SpringMVC的ModelAndView传值方法
  8. Android学习总结(3)——Handler深入详解
  9. Android 开发高效工具之道
  10. “做人难,人难做,难做人,做男人更难啊!
  11. 绿色版DNF(地下城勇士)全键盘连发工具,支持DNF双开
  12. Flutter 添加 armeabi-v7a 本地库出现的一些问题
  13. 曲奇云盘资源搜索引擎_曲奇云盘下载-曲奇云盘官网版v3.2.4-sosyes
  14. 【PCB设计工具】在线 mil到mm单位转换、mm到mils换算
  15. tweak环境安装及编写
  16. 配置git mergetool不产生*.orig文件
  17. webmagic保存html页面,WebMagic抓取前端Ajax渲染的页面
  18. python_爬校花图片
  19. html学习——介绍
  20. 图片的合成(个人练习,不喜勿喷!)

热门文章

  1. python数据挖掘实战笔记——文本挖掘(8):用sklearn包进行关键字提取
  2. 平均回复在5s内的快捷短语
  3. 使用splinter+requests批量下载微信公众号中的音频文件
  4. sd和sem啥区别_sd和sem的区别 sem测试主要测什么
  5. windows云服务器部署web网站
  6. bootstrap页面sidebar
  7. 电机控制学习笔记——PMSM数学模型
  8. Linux svn checkout命令使用示例
  9. 学习FPGA之一:初识FPGA
  10. 2021-07-09 MacBook M1 安装Android Studio