有一些朋友问我teams是否支持将其他平台/系统里的聊天记录迁移某个channel里,答案是肯定的,teams团队在去年年中的时候就提供了这个功能。这个功能是通过graph api来完成的,我们今天就来看看如何迁移聊天记录到teams里。

首先,我们需要确保我们的app有了一个teams的权限:Teamwork.Migrate.All,然后确保下面调用的api都是在beta版本下。

  1. 创建一个team

需要注意的是这个team的creation mode是一个特殊的值:migration。如下:

POST https://graph.microsoft.com/beta/teamsRequest body:
{"@microsoft.graph.teamCreationMode": "migration","template@odata.bind": "https://graph.microsoft.com/beta/teamsTemplates('standard')","displayName": "Tony test team",...
}
  1. 创建一个channel

等上面的team创建完成后,我们再创建一个channel。它同样creation mode是一个特殊的值:migration。如下:

POST https://graph.microsoft.com/beta/teams/{team-id}/channelsRequest body:
{"@microsoft.graph.channelCreationMode": "migration","displayName": "Test channel","description": "test purpose only","membershipType": "standard",...
}
  1. 一条条的导入聊天记录

当一条消息是纯文本的时候,使用如下格式:

POST https://graph.microsoft.com/beta/teams/{team-id}/channels/{channel-id}/messagesRequest body:
{"createdDateTime":"2019-02-04T19:58:15.511Z","from":{"user":{"id": "user id","displayName": "Thomas","userIdentityType": "aadUser"}},"body":{"contentType": "html","content": "How is it going"}
}

如果这条消息含有图片的话,我们可以把图片内嵌到这条消息里:

POST https://graph.microsoft.com/beta/teams/{team-id}/channels/{channel-id}/messagesRequest body:
{"body": {"contentType": "html","content": "<img height=\"160\" src=\"../hostedContents/1/$value\" width=\"200\" style=\"vertical-align:bottom; width:176px; height:250px\">"},"hostedContents":[{"@microsoft.graph.temporaryId": "1","contentBytes": "iVBORw0KGgoA.........","contentType": "image/png"}]
}
  1. 当我们完成了聊天消息的导入后,我们就需要把channel和team的状态改成正常的状态,这样这个team和channel就可以开始正常的使用了

修改team的状态,结束迁移。

POST https://graph.microsoft.com/beta/teams/{team-id}/completeMigration
POST https://graph.microsoft.com/beta/teams/{team-id}/channels/{channel-id}/completeMigration

额外的一些工作:需要往我们刚才创建的team里增加用户,这样这个用户就可以开始使用这个team。这个也可以通过graph api来实现:

POST https://graph.microsoft.com/beta/teams/{team-id}/membersRequest body:
{"@odata.type": "#microsoft.graph.aadUserConversationMember",...
}

迁移聊天记录到Teams相关推荐

  1. 微信聊天记录迁移(Android到IOS)

    微信聊天记录迁移 注意:a. 两台设备需要在同一网域下(连接同一个WiFi,或者其中一台设备连接另一台设备的个人热点) b.保持屏幕常亮,避免中断 原设备登录微信 我的–>设置–>通用–& ...

  2. 电脑微信聊天记录迁移微信文件迁移备份恢复

    前言 前提:尽量保持微信版本号一致. 首先让我们了解一下微信官方聊天记录保存规则(只有手机的保存规则,但是原理都是一样的) 此文章方法原理:微信PC版一定要保证原来的路径目录,且一定要同时拷贝[All ...

  3. 换新手机后,如何将微信聊天记录迁移到新手机中?

    迁移前的准备: 在新手机中安装好微信软件,可以在手机自带的"应用市场"中进行安装: 先在旧手机中登录上需要转移聊天记录的微信账号: 确保新手机和旧手机连接的是同一个WIFI(这一点 ...

  4. 2019年5月 Teams Community Call (China)

    这个月有四个话题: Tony Xia:这个月的Teams的产品更新,Teams开发能力的更新,开源项目更新,库更新 王远:升级/迁移到Microsoft Teams 刘钰:Teams账号注册探索指南 ...

  5. 怎么查微信聊天记录?我来教你几招,祝你无忧。

    怎么查微信删除的聊天记录?很多人都有这个疑问,毕竟微信现在已经是国民第一大社交软件,里面不仅有家人,还有朋友.同事.客户,普通聊天记录误删了也就误删了,可是一旦重要的聊天记录丢失就简直就是灭顶之灾,毕 ...

  6. 微信发布Windows PC 测试版,支持电脑与手机互迁聊天记录

    现在大家在工作和日常生活的时候,都离不开微信,本身当年用户最多的软件的腾讯的QQ,但是现在微信已经后来居上了,已经压住了腾讯QQ一头,但是在日常使用的时候,微信的移动端和PC端使用的,记录并不是互通的 ...

  7. 微信聊天记录不小心被删了怎么办?看看如何恢复吧!

    如何恢复微信聊天记录一直都是我们很关心的问题,下面我们分享一下聊天记录不小心被删除了,如何恢复的问题. 1.安卓手机如何恢复聊天记录呢?首先我们要找到要恢复聊天记录的好友,然后在对话框输入英文的//r ...

  8. 微信怎么转移聊天记录到另一台新手机,3个免费方法!

    拿到新手机后,如何将微信聊天记录转移到新手机?换机好比换号,会涉及到很多重要数据的迁移,比如微信App就记录了很多手机用户的聊天记录.照片和视频等,特别是习惯以微信作为工作社交工具的话,通常也会涉及到 ...

  9. 记录导出微信聊天记录到硬盘的过程

    文章目录 大家的问题 问题描述 解决思路 同步聊天记录 备份iPad到电脑 导出聊天记录 进一步需求 大家的问题 文章发出来后有一些大家遇到的典型的问题,先列写下来 没有文件夹权限,软件无法读取备份: ...

最新文章

  1. 一些关于iText和iTextSharp的旧闻(some old news about iText and iTextSharp)
  2. Python基础04 运算
  3. .Net装箱拆箱编程实例
  4. 中南林业科技大学的计算机研究生分数线,2019中南林业科技大学研究生分数线汇总(含2016-2019历年复试)...
  5. Pod定义YAML文件详解
  6. 设计模式之_工厂系列_02
  7. 2012年终总结 二
  8. 使用React、Node.js、MongoDB、Socket.IO开发一个角色投票应用的学习过程(三)
  9. Eclipse和PyDev搭建完美Python开发环境(Windows篇)
  10. html4中basefont,html basefont标签怎么用
  11. 多线程junit单元测试
  12. 《Head First设计模式》第二版中译本的译稿(摘)
  13. .Net 之时间轮算法(终极版)
  14. 墨刀和axure使用经验分享
  15. 一般线性模型和混合线性模型_从零开始的线性混合模型
  16. 计算机之父图灵成为新50英镑“代言人”,吴恩达发推:Wonderful!
  17. [自娱自乐]玫瑰骑士结束了
  18. 如何使用 Reflector Keygen
  19. 2018年年末总结及2019年规划
  20. 利用mobi 和 epub 电子书文件建立自己的书库

热门文章

  1. 相对不容易用计算机语言编程实现的是,在描述算法的方法中,相对不容易用计算机语言编程实现的是(    )....
  2. 传统的线性降维方法效果不佳。_机器学习西瓜书简明笔记(11)降维与度量学习...
  3. 计算机c盘隐藏了怎么办,win7怎么隐藏c盘 win7c盘被隐藏了怎么解除
  4. 又一个基于 Esbuild 的神器!esno
  5. 从零开发一个命令行脚手架工具 等
  6. Android PermissionUtils:运行时权限工具类及申请权限的正确姿势
  7. 【系统知识点】linux入门基础命令
  8. 腾讯2016春招之算法编程解析
  9. selenium 使用js执行脚本儿链接整理
  10. 几个想法,有兴趣的可以深入下去