开发者社区> 镜像站> NPM> @fastweb/linkup
@fastweb/linkup
#### 设置运行环境
Last updated a month ago by tellmepz .
ISC · Repository · Original npm · Tarball · package.json
$ cnpm install @fastweb/linkup 
SYNC missed versions from official npm registry.

基础用法

设置运行环境

linkUp.setEnv({
  env: '1', //1 为H5 2为小程序
  __linkUpRuntime: 'TR' //环境有 TR 三方 QA PRE ONLINE
});

初始化

e.g.

const im = linkUp.trDrugStore({
  owner: {
    userId: '98225514'
  },
  appInfo: 'GY'
});

说明

linkUp.trDrugStore为 IMSDK 初始化方法

参数说明

参数名 默认值 说明
owner.userId userId由服务端获取 初始化时传入
appInfo 规定字符串 用来识别三方用户 初始化时传入 例如国药GY

方法

closeCore() 关闭 IM

e.g.

im.closeCore();
getwsStatus() 获取 IM 状态

e.g.

im.getwsStatus();
linkUp.api.getHistory({ groupId, start, limit, startServerMsgId }) 异步方法 获取 IM 状态

e.g.

linkUp.api.getHistory({ groupId, start, limit, startServerMsgId }).then(r => {
  r ==
    {
      data: [
        {
          serverMessageId: 1566474238400,
          clientMsgId: 1566474238400,
          createDate: 1566474238400,
          group: {
            groupId: 94881,
            type: 1,
            avatar: 'http://static.qa.91jkys.com/index/478d5744-81c2-4cca-aa10-e4db1298d077.png',
            title: '测试',
            subTitle: '点点滴滴',
            date: 1566474238400
          },
          owner: {
            userId: 98215506,
            userName: '所属',
            userAvatar: 'http://static.qa.91jkys.com/index/478d5744-81c2-4cca-aa10-e4db1298d077.png'
          },
          messageInfo: {
            type: 'Text',
            body: {
              text: 'ZZZZZ'
            }
          }
        }
      ]
    };
});
uploadImg(fd) 异步方法 上传图片 fd 为 formdata

e.g.

if (!window.FormData) {
  //不支持formdata的不支持哦
  return;
}
let upload = this.$refs.imgUploader;
const file = upload.files[0]; // File对象
if (!file) {
  // 用户取消了本次操作
  return;
}
let { size } = file;
let fd = new FormData();
fd.append('file', file);
let res = await linkUp.api.uploadImg(fd);
const { fullPath } = res.data.result;
linkUp.api.getGroupMessage({ groupId, ownerId }) 异步方法 获取当前聊天组信息(用户信息和医生信息)

e.g.

linkUp.api.getGroupMessage({ groupId, ownerId }).then(res => {
  res ==
    {
      result: {
        doctor: {
          modified: 1560416726000,
          nickName: '杨振环医生',
          ownerName: '杨振环医生',
          uType: 1,
          uid: 49522775
        },
        user: {
          avatar: 'http://baidu.com/avatar/30310601_avatar.png',
          nickName: '董蔚来',
          ownerName: '董蔚来',
          uType: 2,
          uid: 30310601
        }
      },
      ok: true,
      error: {}
    };
});
getAllGroupList() 异步方法 获取所有聊天组 List[暂不支持]

e.g.

im.getAllGroupList({
  uid: 'xxx'
}).then(r => {
  //结果待定
});
sendMessage() 异步方法 发送消息

e.g.

async function sendMsg() {
  let res = await im.sendMessage({
    group: {
      groupId: '92821' //当前聊天组ID
    },
    messageInfo: {
      type: 'Text',
      body: {
        text: 'hello'
      }
    }
  });
  if (res) {
    //消息发送成功
  } else {
    //消息发送失败
  }
}

sendMsg();
方法名 说明 是否异步
im.getwsStatus 0 连接中 1 打开 2 关闭中 3 已关闭
im.closeCore 调用后关闭 socket
im.api.getHistory 异步方法返回聊天历史记录
im.api.uploadImg 参数类型待定 返回值为图片 url
im.api.getGroupMessage 异步方法 参数类型待定 返回值为用户信息和医生信息
im.api.getAllGroupList 异步方法 参数类型待定 返回值为所有聊天组 List
im.sendMessage 发送客户端消息给服务端 返回值为true时表示消息发送成功 false表示消息发送失败

事件

connecting IM 连接中

e.g.

im.trpubsub.on('connecting', () => {});
LoginSuccess IM 登录成功

e.g.

im.trpubsub.on('LoginSuccess', () => {
  console.log('登录成功');
});
close IM 关闭

e.g.

im.trpubsub.on('close', () => {
  console.log('IM已断开');
});
message 接收消息

e.g.

im.trpubsub.on('message', ms => {
  console.log(ms, 'immessage');
});
事件名 默认值 说明
LoginSuccess 登录成功后会执行 所有用户操作需要在用户登录完成后进行
close IM 断开后会执行
message 回调函数第一个参数为消息内容 只返回用户消息 系统消息不会推送
connecting 连接中时会进行调用

消息

消息类型 type 是否需要接收 是否需要实现发送 说明
文本消息 Text -
图片消息 Image 需要调用图片上传 后再发送
系统文本消息 SysText -
富文本 RichText -
富链接 RichLink -
结束咨询消息 Finish -

!> 客户端没有实现的消息类型 请提示暂不支持该数据类型

文本消息
        {
          type: 'Text',//Text 必须首字母大写
          body: {
            text: 'hello',//文本内容
          },
        }
系统文本消息
        {
          type: "SysText",//消息类型
          body: {
            text: "abcd",//消息内容
          },
        }
富文本消息
        {
          type: "RichText",//消息类型
          body: {
            text: "abcd", // 富文本,文本内容
            imageList: ["http://abc/def.jpg", "http://abc/ghi.jpg"], // 富文本,图片url数组
          },
        }
图片类消息
        {
          type: "Image",//消息类型
          body: {
            thumbnail: "http://abc/abc_thumbnail.jpg",
            fileUrl: "http://abc/abc.jpg",
            fileSize: 1024,
          }
        }
语音类消息
        {
          type: "Audio",//消息类型
          body: {
            fileUrl: "http://abc/def.wav",
            audioLength: 15,
          }
        }
富链接类消息
        {
          type: "RichLink",//消息类型
          body: {
              // 链接地址
              linkAddress: "http://www.google.com",
              // 标题
              linkTitle: "谷歌首页",
              // 副标题
              linkDetail: "详情描述",
              // 链接图片
              linkImg: "http://abc/kkk.png"
            }
        }
指导模板类消息
        {
          type: "Template",//消息类型
          body: {
              title: "指导模板标题",
              desc: "指导模板详情描述",
              imIconImg: "http://abc/iii.png"
              templateId:11
          },
        }
结束咨询消息
        {
          type: "Finish",//消息类型
          body: {
            text: "本次咨询已结束"
          },
        }
等待无回应消息
        {
          type: "FinishNoReply",//消息类型
          body: {
            text: "当前咨询医生暂无回复,建议更换医生咨询"
          },
        }

Current Tags

  • 1.0.0-beta.72                                ...           latest (a month ago)

36 Versions

  • 1.0.0-beta.72                                ...           a month ago
  • 1.0.0-beta.62                                ...           3 months ago
  • 1.0.0-beta.61                                ...           3 months ago
  • 1.0.0-beta.48                                ...           4 months ago
  • 1.0.0-beta.32                                ...           5 months ago
  • 0.3.25                                ...           6 months ago
  • 0.3.24                                ...           7 months ago
  • 0.3.23                                ...           7 months ago
  • 0.3.22                                ...           7 months ago
  • 0.3.21                                ...           7 months ago
  • 0.3.20                                ...           7 months ago
  • 0.3.19                                ...           7 months ago
  • 0.3.18                                ...           7 months ago
  • 0.3.17                                ...           7 months ago
  • 0.3.16                                ...           8 months ago
  • 0.3.15                                ...           8 months ago
  • 0.3.14                                ...           8 months ago
  • 0.3.13                                ...           8 months ago
  • 0.3.12                                ...           8 months ago
  • 0.3.11                                ...           8 months ago
  • 0.3.10                                ...           8 months ago
  • 0.3.9                                ...           8 months ago
  • 0.3.8                                ...           8 months ago
  • 0.3.7                                ...           8 months ago
  • 0.3.6                                ...           9 months ago
  • 0.3.5                                ...           9 months ago
  • 0.3.4                                ...           a year ago
  • 0.3.3                                ...           a year ago
  • 0.3.1                                ...           a year ago
  • 0.3.0                                ...           a year ago
  • 0.2.1                                ...           a year ago
  • 0.2.0                                ...           a year ago
  • 0.1.4                                ...           a year ago
  • 0.1.3                                ...           a year ago
  • 0.1.1                                ...           a year ago
  • 0.1.0                                ...           a year ago
Downloads
Today 0
This Week 2
This Month 1
Last Day 0
Last Week 2
Last Month 50
Dependencies (3)
Dependents (0)
None