小程序提交视频
@ -1,5 +1,6 @@
|
|||||||
import { TUIStore, StoreName, NAME } from "../index";
|
import { TUIStore, StoreName, NAME } from "../index";
|
||||||
|
console.log('22222')
|
||||||
|
console.log(NAME)
|
||||||
const {
|
const {
|
||||||
CALL_STATUS,
|
CALL_STATUS,
|
||||||
CALL_ROLE,
|
CALL_ROLE,
|
||||||
@ -41,6 +42,11 @@ Component({
|
|||||||
this.setData({
|
this.setData({
|
||||||
callStatus: value,
|
callStatus: value,
|
||||||
});
|
});
|
||||||
|
console.log(value);
|
||||||
|
console.log("通话状态该笔");
|
||||||
|
console.log(this.data.callerUserInfo);
|
||||||
|
console.log(this.data.localUserInfo);
|
||||||
|
console.log(this.data.remoteUserInfoList);
|
||||||
},
|
},
|
||||||
// 监听是否群组通话变更回调
|
// 监听是否群组通话变更回调
|
||||||
handleIsGroupChange(value) {
|
handleIsGroupChange(value) {
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
import LibGenerateTestUserSig from './lib-generate-test-usersig-es.min.js';
|
//import LibGenerateTestUserSig from './lib-generate-test-usersig-es.min.js';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 腾讯云 SDKAppId,需要替换为您自己账号下的 SDKAppId。
|
* 腾讯云 SDKAppId,需要替换为您自己账号下的 SDKAppId。
|
||||||
|
|||||||
@ -38,6 +38,7 @@ Component({
|
|||||||
methods: {
|
methods: {
|
||||||
// 监听通话状态变更回调
|
// 监听通话状态变更回调
|
||||||
handleCallStatusChange(value) {
|
handleCallStatusChange(value) {
|
||||||
|
|
||||||
this.setData({
|
this.setData({
|
||||||
callStatus: value,
|
callStatus: value,
|
||||||
});
|
});
|
||||||
@ -53,6 +54,9 @@ Component({
|
|||||||
this.setData({
|
this.setData({
|
||||||
callMediaType: value,
|
callMediaType: value,
|
||||||
});
|
});
|
||||||
|
console.log('111111111111111111111111111');
|
||||||
|
console.log(this.data.callerUserInfo);
|
||||||
|
console.log(this.data.localUserInfo);
|
||||||
},
|
},
|
||||||
// 监听通话角色变更回调
|
// 监听通话角色变更回调
|
||||||
handleCallRoleChange(value) {
|
handleCallRoleChange(value) {
|
||||||
|
|||||||
@ -45,6 +45,7 @@ Component({
|
|||||||
IMG_CAMERA_FALSE:`${PATH}/camera-false.png`,
|
IMG_CAMERA_FALSE:`${PATH}/camera-false.png`,
|
||||||
IMG_TRANS:`${PATH}/trans.png`,
|
IMG_TRANS:`${PATH}/trans.png`,
|
||||||
IMG_SWITCH_CAMERA:`${PATH}/switch_camera.png`,
|
IMG_SWITCH_CAMERA:`${PATH}/switch_camera.png`,
|
||||||
|
doctor_avatar:wx.getStorageSync('doctor_avatar')
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
async accept() {
|
async accept() {
|
||||||
|
|||||||
@ -12,22 +12,27 @@
|
|||||||
</view>
|
</view>
|
||||||
<!-- 语言通话邀请信息 -->
|
<!-- 语言通话邀请信息 -->
|
||||||
<view wx:if="{{callMediaType === 1}}" class="invite-calling-single">
|
<view wx:if="{{callMediaType === 1}}" class="invite-calling-single">
|
||||||
<image class="avatar" src="{{remoteUserInfoList[0].avatar || IMG_DEFAULT_AVATAR}}" id="{{remoteUserInfoList[0].userId}}" binderror="handleErrorImage" />
|
<image class="avatar" src="{{doctor_avatar || IMG_DEFAULT_AVATAR}}" id="{{remoteUserInfoList[0].userId}}" binderror="handleErrorImage" />
|
||||||
<view class="tips">{{remoteUserInfoList[0].displayUserInfo}}</view>
|
<view class="tips">{{remoteUserInfoList[0].displayUserInfo}}</view>
|
||||||
<view wx:if="{{callRole === 'caller' && callStatus === 'calling' }}" class="tips-subtitle">等待对方接受</view>
|
<view wx:if="{{callRole === 'caller' && callStatus === 'calling' }}" class="tips-subtitle">等待对方接受</view>
|
||||||
</view>
|
</view>
|
||||||
<!-- 视频通话邀请信息 -->
|
<!-- 视频通话邀请信息 -->
|
||||||
<view wx:if="{{callStatus === 'calling' && callMediaType === 2}}" class="invite-calling">
|
<view wx:if="{{callStatus === 'calling' && callMediaType === 2}}" class="invite-calling">
|
||||||
<view class="invite-calling-header">
|
<view class="invite-calling-header">
|
||||||
<view class="invite-calling-header-right">
|
<view class="other-view white" wx:if="{{callRole == 'caller'}}">
|
||||||
<view class="invite-calling-header-message">
|
<text>{{callDuration}}</text>
|
||||||
<label class="tips">
|
|
||||||
{{remoteUserInfoList[0].displayUserInfo}}
|
|
||||||
</label>
|
|
||||||
<text class="tips-subtitle" wx:if="{{callRole !== 'caller'}}">邀请你视频通话</text>
|
|
||||||
<text class="tips-subtitle" wx:else>等待对方接受</text>
|
|
||||||
</view>
|
</view>
|
||||||
<image class="avatar" src="{{remoteUserInfoList[0].avatar || IMG_DEFAULT_AVATAR}}" id="{{remoteUserInfoList[0].userId}}" binderror="handleErrorImage" />
|
<view class="invite-calling-header-right">
|
||||||
|
|
||||||
|
<view class="invite-calling-header-message">
|
||||||
|
<text class="tips-subtitle" wx:if="{{callRole !== 'caller'}}" style="text-align: right;margin-bottom: 10rpx;">XXXX</text>
|
||||||
|
<!-- <label class="tips">
|
||||||
|
{{remoteUserInfoList[0].displayUserInfo}}
|
||||||
|
</label> -->
|
||||||
|
<text class="tips-subtitle" wx:if="{{callRole !== 'caller'}}">邀请你视频通话</text>
|
||||||
|
<!-- <text class="tips-subtitle" wx:else>等待对方接受</text> -->
|
||||||
|
</view>
|
||||||
|
<image class="avatar" src="{{doctor_avatar || IMG_DEFAULT_AVATAR}}" id="{{remoteUserInfoList[0].userId}}" binderror="handleErrorImage" />
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
@ -38,6 +43,7 @@
|
|||||||
<view class="call-operate" style="background-color: red" catch:tap="reject">
|
<view class="call-operate" style="background-color: red" catch:tap="reject">
|
||||||
<image src="{{IMG_HANGUP}}" />
|
<image src="{{IMG_HANGUP}}" />
|
||||||
</view>
|
</view>
|
||||||
|
|
||||||
<view style="margin-top:10px">挂断</view>
|
<view style="margin-top:10px">挂断</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="button-container">
|
<view class="button-container">
|
||||||
@ -57,8 +63,78 @@
|
|||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<!-- 视频通话呼叫状态按钮 -->
|
<!-- 视频通话呼叫状态按钮 -->
|
||||||
|
|
||||||
<view wx:if="{{callStatus === 'calling' && callMediaType === 2}}" class="invite-calling">
|
<view wx:if="{{callStatus === 'calling' && callMediaType === 2}}" class="invite-calling">
|
||||||
<view class="footer">
|
<view class="handle-btns">
|
||||||
|
|
||||||
|
|
||||||
|
<!-- <view class="btn-operate-item call-switch" catch:tap="switchCallMediaType">
|
||||||
|
<view class="call-operate">
|
||||||
|
<image src="{{IMG_TRANS}}" />
|
||||||
|
</view>
|
||||||
|
<text>切到语音通话</text>
|
||||||
|
</view> -->
|
||||||
|
<view class="btn-list">
|
||||||
|
<view wx:if="{{localUserInfo.isVideoAvailable && callRole == 'caller'}}" class="button-container">
|
||||||
|
<view class="btn-normal">
|
||||||
|
<image class="btn-image" src="{{IMG_SWITCH_CAMERA}}" data-device="{{pusher.frontCamera}}" catch:tap="switchCamera" />
|
||||||
|
</view>
|
||||||
|
<view class="white">切换</view>
|
||||||
|
</view>
|
||||||
|
<view class="button-container" bindtap="switchCallMediaType" wx:if="{{callRole == 'caller'}}">
|
||||||
|
<view class="btn-normal">
|
||||||
|
<image class="btn-image" src="{{IMG_TRANS}} "></image>
|
||||||
|
</view>
|
||||||
|
<view class="white">切换至语音</view>
|
||||||
|
</view>
|
||||||
|
<view class="button-container" bindtap="microPhoneHandler" wx:if="{{callRole == 'caller'}}">
|
||||||
|
<view class="btn-normal">
|
||||||
|
<image class="btn-image" src="{{localUserInfo.isAudioAvailable? IMG_AUDIO_TRUE: IMG_AUDIO_FALSE}} "></image>
|
||||||
|
</view>
|
||||||
|
<view class="white">麦克风</view>
|
||||||
|
</view>
|
||||||
|
<!-- <view class="button-container" bindtap="toggleSoundMode">
|
||||||
|
<view class="btn-normal">
|
||||||
|
<image class="btn-image" src="{{isEarPhone ? IMG_SPEAKER_FALSE: IMG_SPEAKER_TRUE}} "></image>
|
||||||
|
</view>
|
||||||
|
<text class="white">扬声器</text>
|
||||||
|
</view> -->
|
||||||
|
<!-- <view class="button-container" bindtap="cameraHandler">
|
||||||
|
<view class="btn-normal">
|
||||||
|
<image class="btn-image" src="{{localUserInfo.isVideoAvailable ? IMG_CAMERA_TRUE: IMG_CAMERA_FALSE}} "></image>
|
||||||
|
</view>
|
||||||
|
<text class="white">摄像头</text>
|
||||||
|
</view> -->
|
||||||
|
</view>
|
||||||
|
<view class="btn-list" style="justify-content: center;width:65%;margin:0 auto;">
|
||||||
|
<view class="btn-list-item other-view" >
|
||||||
|
<view class="btn-container">
|
||||||
|
<view class="btn-hangup" bindtap="hangup">
|
||||||
|
<image class="btn-image" src="{{IMG_HANGUP}}"></image>
|
||||||
|
</view>
|
||||||
|
|
||||||
|
</view>
|
||||||
|
<text class="white">挂断</text>
|
||||||
|
</view>
|
||||||
|
<view class="btn-list-item other-view" >
|
||||||
|
<view class="btn-container">
|
||||||
|
<view class="btn-hangup" bindtap="accept">
|
||||||
|
<image class="btn-image" src="{{IMG_ACCEPT}}"></image>
|
||||||
|
</view>
|
||||||
|
|
||||||
|
</view>
|
||||||
|
<text class="white">接听</text>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<!-- <view wx:if="{{callStatus === 'calling' && callMediaType === 2}}" class="invite-calling" >
|
||||||
|
<view class="footer" style="display: flex;">
|
||||||
|
<view class="btn-operate" wx:if="{{callRole === 'caller'}}">
|
||||||
|
<view class="invite-calling-header-left">
|
||||||
|
<image src="{{IMG_SWITCH_CAMERA}}" data-device="{{pusher.frontCamera}}" catch:tap="switchCamera" />
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
<view class="btn-operate" wx:if="{{callRole === 'caller'}}">
|
<view class="btn-operate" wx:if="{{callRole === 'caller'}}">
|
||||||
<view class="btn-operate-item call-switch" catch:tap="switchCallMediaType">
|
<view class="btn-operate-item call-switch" catch:tap="switchCallMediaType">
|
||||||
<view class="call-operate">
|
<view class="call-operate">
|
||||||
@ -73,9 +149,7 @@
|
|||||||
<view class="call-operate" catch:tap="hangup">
|
<view class="call-operate" catch:tap="hangup">
|
||||||
<image src="{{IMG_HANGUP}}" />
|
<image src="{{IMG_HANGUP}}" />
|
||||||
</view>
|
</view>
|
||||||
<view class="invite-calling-header-left">
|
|
||||||
<image src="{{IMG_SWITCH_CAMERA}}" data-device="{{pusher.frontCamera}}" catch:tap="switchCamera" />
|
|
||||||
</view>
|
|
||||||
</view>
|
</view>
|
||||||
<text>挂断</text>
|
<text>挂断</text>
|
||||||
</view>
|
</view>
|
||||||
@ -95,7 +169,8 @@
|
|||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
|
||||||
|
</view> -->
|
||||||
<!-- 语音通话接通状态按钮 -->
|
<!-- 语音通话接通状态按钮 -->
|
||||||
<view wx:if="{{callStatus === 'connected' && callMediaType === 1}}" class="handle-btns">
|
<view wx:if="{{callStatus === 'connected' && callMediaType === 1}}" class="handle-btns">
|
||||||
<view class="other-view black">
|
<view class="other-view black">
|
||||||
@ -128,18 +203,18 @@
|
|||||||
<view class="other-view white">
|
<view class="other-view white">
|
||||||
<text>{{callDuration}}</text>
|
<text>{{callDuration}}</text>
|
||||||
</view>
|
</view>
|
||||||
<view class="btn-operate-item call-switch" catch:tap="switchCallMediaType">
|
<!-- <view class="btn-operate-item call-switch" catch:tap="switchCallMediaType">
|
||||||
<view class="call-operate">
|
<view class="call-operate">
|
||||||
<image src="{{IMG_TRANS}}" />
|
<image src="{{IMG_TRANS}}" />
|
||||||
</view>
|
</view>
|
||||||
<text>切到语音通话</text>
|
<text>切到语音通话</text>
|
||||||
</view>
|
</view> -->
|
||||||
<view class="btn-list">
|
<view class="btn-list">
|
||||||
<view class="button-container" bindtap="microPhoneHandler">
|
<view class="button-container" bindtap="microPhoneHandler">
|
||||||
<view class="btn-normal">
|
<view class="btn-normal">
|
||||||
<image class="btn-image" src="{{localUserInfo.isAudioAvailable? IMG_AUDIO_TRUE: IMG_AUDIO_FALSE}} "></image>
|
<image class="btn-image" src="{{localUserInfo.isAudioAvailable? IMG_AUDIO_TRUE: IMG_AUDIO_FALSE}} "></image>
|
||||||
</view>
|
</view>
|
||||||
<view class="white">麦克风</view>
|
<view class="white">语音</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="button-container" bindtap="toggleSoundMode">
|
<view class="button-container" bindtap="toggleSoundMode">
|
||||||
<view class="btn-normal">
|
<view class="btn-normal">
|
||||||
@ -147,14 +222,14 @@
|
|||||||
</view>
|
</view>
|
||||||
<text class="white">扬声器</text>
|
<text class="white">扬声器</text>
|
||||||
</view>
|
</view>
|
||||||
<view class="button-container" bindtap="cameraHandler">
|
<view class="button-container" bindtap="switchCamera" wx:if="{{localUserInfo.isVideoAvailable}}">
|
||||||
<view class="btn-normal">
|
<view class="btn-normal">
|
||||||
<image class="btn-image" src="{{localUserInfo.isVideoAvailable ? IMG_CAMERA_TRUE: IMG_CAMERA_FALSE}} "></image>
|
<image class="btn-image" src="{{IMG_SWITCH_CAMERA}}" data-device="{{pusher.frontCamera}}" src="{{IMG_SWITCH_CAMERA}} "></image>
|
||||||
</view>
|
</view>
|
||||||
<text class="white">摄像头</text>
|
<text class="white">摄像头</text>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="btn-list">
|
<!-- <view class="btn-list">
|
||||||
<view class="btn-list-item other-view">
|
<view class="btn-list-item other-view">
|
||||||
<view class="btn-container">
|
<view class="btn-container">
|
||||||
<view class="btn-hangup" bindtap="hangup">
|
<view class="btn-hangup" bindtap="hangup">
|
||||||
@ -166,7 +241,7 @@
|
|||||||
</view>
|
</view>
|
||||||
<text class="white">挂断</text>
|
<text class="white">挂断</text>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view> -->
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
@ -1,4 +1,4 @@
|
|||||||
import LibGenerateTestUserSig from './lib-generate-test-usersig-es.min.js';
|
//import LibGenerateTestUserSig from './lib-generate-test-usersig-es.min.js';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 腾讯云 SDKAppId,需要替换为您自己账号下的 SDKAppId。
|
* 腾讯云 SDKAppId,需要替换为您自己账号下的 SDKAppId。
|
||||||
|
|||||||
@ -30,7 +30,7 @@
|
|||||||
<view wx:if="{{renderDom[0].type === 'text_link'}}" class="message-body-span text-message">
|
<view wx:if="{{renderDom[0].type === 'text_link'}}" class="message-body-span text-message">
|
||||||
<view class="message-body-span-text">{{renderDom[0].text}}</view>
|
<view class="message-body-span-text">{{renderDom[0].text}}</view>
|
||||||
<text class="message-body-span-link">查看详情>></text>
|
<text class="message-body-span-link">查看详情>></text>
|
||||||
</view>
|
</view> -->
|
||||||
<view wx:if="{{renderDom[0].type ==='group_create'}}" class="custom-message {{isMine?'my-custom':''}}">
|
<view wx:if="{{renderDom[0].type ==='group_create'}}" class="custom-message {{isMine?'my-custom':''}}">
|
||||||
<view class="custom-content-text">{{renderDom[0].text}}</view>
|
<view class="custom-content-text">{{renderDom[0].text}}</view>
|
||||||
</view>
|
</view>
|
||||||
@ -39,7 +39,7 @@
|
|||||||
</view>
|
</view>
|
||||||
<view wx:if="{{renderDom[0].type ==='notSupport'}}" class="message-body-span text-message">
|
<view wx:if="{{renderDom[0].type ==='notSupport'}}" class="message-body-span text-message">
|
||||||
<view class="message-body-span-text">{{renderDom[0].text}}</view>
|
<view class="message-body-span-text">{{renderDom[0].text}}</view>
|
||||||
</view> -->
|
</view>
|
||||||
<view wx:if="{{renderDom[0].type ==='msg_tip'}}" class="message-body-span text-message custom-tip-message">
|
<view wx:if="{{renderDom[0].type ==='msg_tip'}}" class="message-body-span text-message custom-tip-message">
|
||||||
<view class="message-body-span-text">{{renderDom[0].text}}</view>
|
<view class="message-body-span-text">{{renderDom[0].text}}</view>
|
||||||
<view class="message-body-span-desc">{{renderDom[0].desc}}</view>
|
<view class="message-body-span-desc">{{renderDom[0].desc}}</view>
|
||||||
|
|||||||
@ -261,10 +261,23 @@ pageLifetimes:{
|
|||||||
*/
|
*/
|
||||||
methods: {
|
methods: {
|
||||||
async call() {
|
async call() {
|
||||||
console.log(this.data.doctor_user_id)
|
await TUICallKitServer.setSelfInfo( "典韦222", "http://xxx"
|
||||||
|
)
|
||||||
await TUICallKitServer.call({
|
await TUICallKitServer.call({
|
||||||
userID: this.data.doctor_user_id,
|
userID: this.data.doctor_user_id,
|
||||||
type: 2,
|
type: 2,
|
||||||
|
timeout:60,
|
||||||
|
offlinePushInfo:{
|
||||||
|
title:'22222'
|
||||||
|
},
|
||||||
|
userData:JSON.stringify({
|
||||||
|
order_inquiry_id:this.data.order_inquiry_id,
|
||||||
|
inquiry_type:this.data.inquiry_type,
|
||||||
|
inquiry_mode:this.data.inquiry_mode,
|
||||||
|
message_rounds:this.data.msgData.msg_round,
|
||||||
|
patient_family_data:this.data.patient_family_data,
|
||||||
|
is_system:0
|
||||||
|
}),
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
showTooltip(){
|
showTooltip(){
|
||||||
|
|||||||
@ -441,6 +441,12 @@ Component({
|
|||||||
chatMsg(id).then(data => {
|
chatMsg(id).then(data => {
|
||||||
// console.log("接口请求收到时间66666"+dayjs().format("YYYY-MM-DD HH:mm:ss:SSS"));
|
// console.log("接口请求收到时间66666"+dayjs().format("YYYY-MM-DD HH:mm:ss:SSS"));
|
||||||
// console.log(data);
|
// console.log(data);
|
||||||
|
let promise=wx.$TUIKit.getUserProfile({
|
||||||
|
userIDList: [data.doctor_user_id]
|
||||||
|
});
|
||||||
|
promise.then(function(imResponse) {
|
||||||
|
wx.setStorageSync('doctor_avatar',imResponse.data[0].avatar);
|
||||||
|
});
|
||||||
let obj = this.data.doctorChatData;
|
let obj = this.data.doctorChatData;
|
||||||
for (const key in obj) {
|
for (const key in obj) {
|
||||||
let item = `doctorChatData.${key}`
|
let item = `doctorChatData.${key}`
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
import LibGenerateTestUserSig from './lib-generate-test-usersig-es.min.js';
|
//import LibGenerateTestUserSig from './lib-generate-test-usersig-es.min.js';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 腾讯云 SDKAppId,需要替换为您自己账号下的 SDKAppId。
|
* 腾讯云 SDKAppId,需要替换为您自己账号下的 SDKAppId。
|
||||||
|
|||||||
25
app.js
@ -16,12 +16,17 @@ import {
|
|||||||
} from "./utils/config"
|
} from "./utils/config"
|
||||||
const myconfig = hostConfig();
|
const myconfig = hostConfig();
|
||||||
|
|
||||||
require.async('./TUICallKit/TUICallService/serve/callManager').then(CallManager => {
|
require.async('./TUICallKit/TUICallService/serve/callManager').then(res => {
|
||||||
console.log(CallManager)
|
wx.callManager = new res.CallManager();
|
||||||
wx.callManager = new CallManager.CallManager();
|
|
||||||
}).catch(({mod, errMsg}) => {
|
}).catch(({mod, errMsg}) => {
|
||||||
console.error(`path: ${mod}, ${errMsg}`)
|
console.error(`path: ${mod}, ${errMsg}`)
|
||||||
})
|
})
|
||||||
|
require.async('./TUICallKit/TUICallService/index').then(res => {
|
||||||
|
wx.TUICallKitServer = res.TUICallKitServer;
|
||||||
|
}).catch(({mod, errMsg}) => {
|
||||||
|
console.error(`path: ${mod}, ${errMsg}`)
|
||||||
|
})
|
||||||
|
// import { TUICallKitServer } from "./TUICallKit/TUICallService/index";
|
||||||
// import { CallManager } from './TUICallKit/TUICallService/serve/callManager';
|
// import { CallManager } from './TUICallKit/TUICallService/serve/callManager';
|
||||||
// // 实例化
|
// // 实例化
|
||||||
// wx.callManager = new CallManager();
|
// wx.callManager = new CallManager();
|
||||||
@ -85,15 +90,17 @@ App({
|
|||||||
wx.$TUIKit.login({
|
wx.$TUIKit.login({
|
||||||
userID: wx.getStorageSync('USER_ID'),
|
userID: wx.getStorageSync('USER_ID'),
|
||||||
userSig: data
|
userSig: data
|
||||||
}).then(res => {
|
}).then(async res => {
|
||||||
console.log("登录成功");
|
console.log("登录成功");
|
||||||
wx.callManager.init({
|
wx.$TUIKit.on(wx.$TUIKitTIM.EVENT.SDK_READY, this.onSDKReady);
|
||||||
|
await wx.callManager.init({
|
||||||
sdkAppID: Number(this.globalData.config.SDKAPPID), // 请填入 sdkAppID
|
sdkAppID: Number(this.globalData.config.SDKAPPID), // 请填入 sdkAppID
|
||||||
userID: wx.getStorageSync('USER_ID'), // 请填入 userID
|
userID: wx.getStorageSync('USER_ID'), // 请填入 userID
|
||||||
userSig: data, // 请填入 userSig
|
userSig: data, // 请填入 userSig
|
||||||
globalCallPagePath: "TUICallKit/pages/globalCall/globalCall",
|
globalCallPagePath: "TUICallKit/pages/globalCall/globalCall",
|
||||||
tim: wx.$TUIKit
|
tim: wx.$TUIKit
|
||||||
})
|
})
|
||||||
|
console.log(wx.TUICallKitServer);
|
||||||
callback();
|
callback();
|
||||||
}).catch(function (imError) {
|
}).catch(function (imError) {
|
||||||
console.warn('login error:', imError); // 登录失败的相关信息
|
console.warn('login error:', imError); // 登录失败的相关信息
|
||||||
@ -110,7 +117,7 @@ App({
|
|||||||
}
|
}
|
||||||
|
|
||||||
});
|
});
|
||||||
wx.$TUIKit.on(wx.$TUIKitTIM.EVENT.SDK_READY, this.onSDKReady);
|
|
||||||
} else {
|
} else {
|
||||||
console.log("IM未登录")
|
console.log("IM未登录")
|
||||||
}
|
}
|
||||||
@ -123,6 +130,7 @@ App({
|
|||||||
wx.$TUIKit.off(wx.$TUIKitTIM.EVENT.TOTAL_UNREAD_MESSAGE_COUNT_UPDATED, this.onTotalUnreadMessageCountUpdated);
|
wx.$TUIKit.off(wx.$TUIKitTIM.EVENT.TOTAL_UNREAD_MESSAGE_COUNT_UPDATED, this.onTotalUnreadMessageCountUpdated);
|
||||||
},
|
},
|
||||||
onSDKReady() {
|
onSDKReady() {
|
||||||
|
console.log('sdk已经ready')
|
||||||
this.getLastMsg();
|
this.getLastMsg();
|
||||||
wx.$TUIKit.on(wx.$TUIKitTIM.EVENT.ERROR, this.errorMsg, this);
|
wx.$TUIKit.on(wx.$TUIKitTIM.EVENT.ERROR, this.errorMsg, this);
|
||||||
wx.$TUIKit.on(wx.$TUIKitTIM.EVENT.KICKED_OUT, this.onKickOut, this);
|
wx.$TUIKit.on(wx.$TUIKitTIM.EVENT.KICKED_OUT, this.onKickOut, this);
|
||||||
@ -141,10 +149,11 @@ App({
|
|||||||
onKickOut(event) {
|
onKickOut(event) {
|
||||||
this.handleLogout();
|
this.handleLogout();
|
||||||
},
|
},
|
||||||
handleLogout() {
|
async handleLogout() {
|
||||||
if (wx.$TUIKit) {
|
if (wx.$TUIKit) {
|
||||||
wx.$TUIKit.destroy()
|
wx.$TUIKit.destroy();
|
||||||
};
|
};
|
||||||
|
wx.TUICallKitServer.destroyed();
|
||||||
loginout().then(data => {
|
loginout().then(data => {
|
||||||
this.globalData.totalUnread = 0;
|
this.globalData.totalUnread = 0;
|
||||||
this.globalData.conversationList = [];
|
this.globalData.conversationList = [];
|
||||||
|
|||||||
2
app.json
@ -77,7 +77,7 @@
|
|||||||
"pages": [
|
"pages": [
|
||||||
"pages/globalCall/globalCall"
|
"pages/globalCall/globalCall"
|
||||||
],
|
],
|
||||||
"independent": true
|
"independent": false
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"preloadRule": {
|
"preloadRule": {
|
||||||
|
|||||||
|
Before Width: | Height: | Size: 68 KiB |
|
Before Width: | Height: | Size: 50 KiB |
|
Before Width: | Height: | Size: 101 KiB |
|
Before Width: | Height: | Size: 116 KiB |
|
Before Width: | Height: | Size: 48 KiB |
|
Before Width: | Height: | Size: 16 KiB |
|
Before Width: | Height: | Size: 7.0 KiB |
@ -1,4 +1,4 @@
|
|||||||
import LibGenerateTestUserSig from './lib-generate-test-usersig-es.min.js';
|
//import LibGenerateTestUserSig from './lib-generate-test-usersig-es.min.js';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 腾讯云 SDKAppId,需要替换为您自己账号下的 SDKAppId。
|
* 腾讯云 SDKAppId,需要替换为您自己账号下的 SDKAppId。
|
||||||
|
|||||||
@ -4,7 +4,7 @@ var __DEFINE__ = function(modId, func, req) { var m = { exports: {}, _tempexport
|
|||||||
var __REQUIRE__ = function(modId, source) { if(!__MODS__[modId]) return require(source); if(!__MODS__[modId].status) { var m = __MODS__[modId].m; m._exports = m._tempexports; var desp = Object.getOwnPropertyDescriptor(m, "exports"); if (desp && desp.configurable) Object.defineProperty(m, "exports", { set: function (val) { if(typeof val === "object" && val !== m._exports) { m._exports.__proto__ = val.__proto__; Object.keys(val).forEach(function (k) { m._exports[k] = val[k]; }); } m._tempexports = val }, get: function () { return m._tempexports; } }); __MODS__[modId].status = 1; __MODS__[modId].func(__MODS__[modId].req, m, m.exports); } return __MODS__[modId].m.exports; };
|
var __REQUIRE__ = function(modId, source) { if(!__MODS__[modId]) return require(source); if(!__MODS__[modId].status) { var m = __MODS__[modId].m; m._exports = m._tempexports; var desp = Object.getOwnPropertyDescriptor(m, "exports"); if (desp && desp.configurable) Object.defineProperty(m, "exports", { set: function (val) { if(typeof val === "object" && val !== m._exports) { m._exports.__proto__ = val.__proto__; Object.keys(val).forEach(function (k) { m._exports[k] = val[k]; }); } m._tempexports = val }, get: function () { return m._tempexports; } }); __MODS__[modId].status = 1; __MODS__[modId].func(__MODS__[modId].req, m, m.exports); } return __MODS__[modId].m.exports; };
|
||||||
var __REQUIRE_WILDCARD__ = function(obj) { if(obj && obj.__esModule) { return obj; } else { var newObj = {}; if(obj != null) { for(var k in obj) { if (Object.prototype.hasOwnProperty.call(obj, k)) newObj[k] = obj[k]; } } newObj.default = obj; return newObj; } };
|
var __REQUIRE_WILDCARD__ = function(obj) { if(obj && obj.__esModule) { return obj; } else { var newObj = {}; if(obj != null) { for(var k in obj) { if (Object.prototype.hasOwnProperty.call(obj, k)) newObj[k] = obj[k]; } } newObj.default = obj; return newObj; } };
|
||||||
var __REQUIRE_DEFAULT__ = function(obj) { return obj && obj.__esModule ? obj.default : obj; };
|
var __REQUIRE_DEFAULT__ = function(obj) { return obj && obj.__esModule ? obj.default : obj; };
|
||||||
__DEFINE__(1704768242893, function(require, module, exports) {
|
__DEFINE__(1704883497555, function(require, module, exports) {
|
||||||
// TUIKitWChat/Chat/index.js
|
// TUIKitWChat/Chat/index.js
|
||||||
var __TEMP__ = require('aegis-mp-sdk');var Aegis = __REQUIRE_DEFAULT__(__TEMP__);
|
var __TEMP__ = require('aegis-mp-sdk');var Aegis = __REQUIRE_DEFAULT__(__TEMP__);
|
||||||
var __TEMP__ = require('./utils/constant');var constant = __REQUIRE_DEFAULT__(__TEMP__);
|
var __TEMP__ = require('./utils/constant');var constant = __REQUIRE_DEFAULT__(__TEMP__);
|
||||||
@ -121,8 +121,8 @@ Component({
|
|||||||
},
|
},
|
||||||
});
|
});
|
||||||
|
|
||||||
}, function(modId) {var map = {"./utils/constant":1704768242894}; return __REQUIRE__(map[modId], modId); })
|
}, function(modId) {var map = {"./utils/constant":1704883497556}; return __REQUIRE__(map[modId], modId); })
|
||||||
__DEFINE__(1704768242894, function(require, module, exports) {
|
__DEFINE__(1704883497556, function(require, module, exports) {
|
||||||
const constant = {
|
const constant = {
|
||||||
FEAT_NATIVE_CODE: {
|
FEAT_NATIVE_CODE: {
|
||||||
NATIVE_VERSION: 1,
|
NATIVE_VERSION: 1,
|
||||||
@ -180,7 +180,7 @@ const constant = {
|
|||||||
if (!exports.__esModule) Object.defineProperty(exports, "__esModule", { value: true });exports.default = constant;
|
if (!exports.__esModule) Object.defineProperty(exports, "__esModule", { value: true });exports.default = constant;
|
||||||
|
|
||||||
}, function(modId) { var map = {}; return __REQUIRE__(map[modId], modId); })
|
}, function(modId) { var map = {}; return __REQUIRE__(map[modId], modId); })
|
||||||
return __REQUIRE__(1704768242893);
|
return __REQUIRE__(1704883497555);
|
||||||
})()
|
})()
|
||||||
//miniprogram-npm-outsideDeps=["aegis-mp-sdk"]
|
//miniprogram-npm-outsideDeps=["aegis-mp-sdk"]
|
||||||
//# sourceMappingURL=index.js.map
|
//# sourceMappingURL=index.js.map
|
||||||
@ -6,7 +6,6 @@
|
|||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@tencentcloud/call-uikit-wechat": "^2.1.1",
|
"@tencentcloud/call-uikit-wechat": "^2.1.1",
|
||||||
"@tencentcloud/chat-uikit-wechat": "^1.0.14",
|
"@tencentcloud/chat-uikit-wechat": "^1.0.14",
|
||||||
"@vant/area-data": "^1.4.0",
|
|
||||||
"@vant/weapp": "^1.10.12",
|
"@vant/weapp": "^1.10.12",
|
||||||
"dayjs": "^1.11.7"
|
"dayjs": "^1.11.7"
|
||||||
},
|
},
|
||||||
|
|||||||
@ -47,14 +47,23 @@
|
|||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="persontip" wx:if="{{item.lastMessage.type=='TIMTextElem'}}">{{item.lastMessage.payload.text}}</view>
|
<view class="persontip" wx:if="{{item.lastMessage.type=='TIMTextElem'}}">{{item.lastMessage.payload.text}}</view>
|
||||||
<view class="persontip" wx:elif="{{item.lastMessage.type=='TIMCustomElem'}}">{{filters.formateText(item.lastMessage.payload.data).title}}</view>
|
<view class="persontip" wx:elif="{{item.lastMessage.type=='TIMCustomElem' && item.lastMessage.cloudCustomData}}">{{filters.formateText(item.lastMessage.payload.data).title}}</view>
|
||||||
|
<view class="persontip" wx:elif="{{item.lastMessage.type=='TIMCustomElem' && !item.lastMessage.cloudCustomData}}">[电话]</view>
|
||||||
<view class="persontip" wx:elif="{{item.lastMessage.type=='TIMImageElem'}}">[图片]</view>
|
<view class="persontip" wx:elif="{{item.lastMessage.type=='TIMImageElem'}}">[图片]</view>
|
||||||
<view class="persontip" wx:elif="{{item.lastMessage.type=='TIMSoundElem'}}">[语音]</view>
|
<view class="persontip" wx:elif="{{item.lastMessage.type=='TIMSoundElem'}}">[语音]</view>
|
||||||
<view class="bottombox">
|
<view class="bottombox">
|
||||||
<view class="nameinfo">
|
<view class="nameinfo" wx:if="{{item.lastMessage.cloudCustomData}}">
|
||||||
|
|
||||||
就诊人:<text class="name"> {{filters.formateText(item.lastMessage.cloudCustomData).patient_family_data.patient_name}}</text>(<text decode="true" wx:if="{{filters.formateText(item.lastMessage.cloudCustomData).patient_family_data.patient_sex==1}}">男 </text><text decode="true" wx:elif="{{filters.formateText(item.lastMessage.cloudCustomData).patient_family_data.patient_sex==2}}">女 </text><text wx:else decode="true">未知 </text>|<text decode="true"> {{filters.formateText(item.lastMessage.cloudCustomData).patient_family_data.patient_age}}岁)</text>
|
就诊人:<text class="name"> {{filters.formateText(item.lastMessage.cloudCustomData).patient_family_data.patient_name}}</text>(<text decode="true" wx:if="{{filters.formateText(item.lastMessage.cloudCustomData).patient_family_data.patient_sex==1}}">男 </text><text decode="true" wx:elif="{{filters.formateText(item.lastMessage.cloudCustomData).patient_family_data.patient_sex==2}}">女 </text><text wx:else decode="true">未知 </text>|<text decode="true"> {{filters.formateText(item.lastMessage.cloudCustomData).patient_family_data.patient_age}}岁)</text>
|
||||||
</view>
|
</view>
|
||||||
|
<view class="nameinfo" wx:else>
|
||||||
|
|
||||||
|
{{filters.formateText((filters.formateText(item.lastMessage.payload.data).data.userData.patient_family_data.patient_name))}}
|
||||||
|
<!-- 就诊人:<text class="name"> {{(filters.formateText(filters.formateText(item.lastMessage.payload.data).data)).userData.patient_family_data.patient_name}}
|
||||||
|
</text>
|
||||||
|
-->
|
||||||
|
(<text decode="true" wx:if="{{filters.formateText(item.lastMessage.cloudCustomData).patient_family_data.patient_sex==1}}">男 </text><text decode="true" wx:elif="{{filters.formateText(item.lastMessage.cloudCustomData).patient_family_data.patient_sex==2}}">女 </text><text wx:else decode="true">未知 </text>|<text decode="true"> {{filters.formateText(item.lastMessage.cloudCustomData).patient_family_data.patient_age}}岁)</text>
|
||||||
|
</view>
|
||||||
<view class="date">{{filters.transforDay(item.lastMessage.lastTime,"dateminute")}}</view>
|
<view class="date">{{filters.transforDay(item.lastMessage.lastTime,"dateminute")}}</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="circle" wx:if="{{item.unreadCount==1}}"></view>
|
<view class="circle" wx:if="{{item.unreadCount==1}}"></view>
|
||||||
|
|||||||
@ -4,7 +4,7 @@
|
|||||||
<view class="ui-title" style="opacity: {{1-opacity}};" >我的</view>
|
<view class="ui-title" style="opacity: {{1-opacity}};" >我的</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="page">
|
<view class="page">
|
||||||
<image src="../../assets/images/mybg.png" mode="widthFix" class="dcimg" lazy-load/>
|
<image src="{{img_host+'/mybg.png'}}" mode="widthFix" class="dcimg" lazy-load/>
|
||||||
<view class="contentWrap">
|
<view class="contentWrap">
|
||||||
<view class="infobox" bindtap="goCenter">
|
<view class="infobox" bindtap="goCenter">
|
||||||
<view class="headbox">
|
<view class="headbox">
|
||||||
|
|||||||
@ -133,7 +133,7 @@
|
|||||||
<view class="box" wx:else >
|
<view class="box" wx:else >
|
||||||
<view class="leftbox">
|
<view class="leftbox">
|
||||||
<view class="imgbox">
|
<view class="imgbox">
|
||||||
<image src="../../assets/images/people2.gif" class="person" mode="widthFix"></image>
|
<image src="{{img_host+'/people2.gif'}}" class="person" mode="widthFix"></image>
|
||||||
</view>
|
</view>
|
||||||
<view class="desc">
|
<view class="desc">
|
||||||
<view class="name">快速图文问诊</view>
|
<view class="name">快速图文问诊</view>
|
||||||
|
|||||||
@ -7,7 +7,7 @@
|
|||||||
|
|
||||||
<image src="{{projectImg}}" mode="widthFix" class="dcimg" lazy-load/>
|
<image src="{{projectImg}}" mode="widthFix" class="dcimg" lazy-load/>
|
||||||
<view class="nextbox">
|
<view class="nextbox">
|
||||||
<image src="../../assets/images/sugar_process.png" mode="widthFix" class="dcimg" lazy-load />
|
<image src="{{img_host+'/sugar_process.png'}}" mode="widthFix" class="dcimg" lazy-load />
|
||||||
<view class="msgbtnbox">
|
<view class="msgbtnbox">
|
||||||
<view class="msgbtn" bindtap="showPatient">填写信息 </view>
|
<view class="msgbtn" bindtap="showPatient">填写信息 </view>
|
||||||
|
|
||||||
|
|||||||
@ -42,6 +42,7 @@
|
|||||||
"disableUseStrict": false,
|
"disableUseStrict": false,
|
||||||
"useCompilerPlugins": false,
|
"useCompilerPlugins": false,
|
||||||
"ignoreUploadUnusedFiles": true,
|
"ignoreUploadUnusedFiles": true,
|
||||||
|
"ignoreDevUnusedFiles": true,
|
||||||
"condition": false
|
"condition": false
|
||||||
},
|
},
|
||||||
"compileType": "miniprogram",
|
"compileType": "miniprogram",
|
||||||
|
|||||||
@ -6,5 +6,5 @@
|
|||||||
"bigPackageSizeSupport": true
|
"bigPackageSizeSupport": true
|
||||||
},
|
},
|
||||||
"description": "项目私有配置文件。此文件中的内容将覆盖 project.config.json 中的相同字段。项目的改动优先同步到此文件中。详见文档:https://developers.weixin.qq.com/miniprogram/dev/devtools/projectconfig.html",
|
"description": "项目私有配置文件。此文件中的内容将覆盖 project.config.json 中的相同字段。项目的改动优先同步到此文件中。详见文档:https://developers.weixin.qq.com/miniprogram/dev/devtools/projectconfig.html",
|
||||||
"libVersion": "3.0.1"
|
"libVersion": "3.1.5"
|
||||||
}
|
}
|
||||||
66
sugarCheck/pages/globalCall/globalCall.js
Normal file
@ -0,0 +1,66 @@
|
|||||||
|
// sugarCheck/pages/globalCall/globalCall.js
|
||||||
|
Page({
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 页面的初始数据
|
||||||
|
*/
|
||||||
|
data: {
|
||||||
|
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 生命周期函数--监听页面加载
|
||||||
|
*/
|
||||||
|
onLoad(options) {
|
||||||
|
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 生命周期函数--监听页面初次渲染完成
|
||||||
|
*/
|
||||||
|
onReady() {
|
||||||
|
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 生命周期函数--监听页面显示
|
||||||
|
*/
|
||||||
|
onShow() {
|
||||||
|
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 生命周期函数--监听页面隐藏
|
||||||
|
*/
|
||||||
|
onHide() {
|
||||||
|
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 生命周期函数--监听页面卸载
|
||||||
|
*/
|
||||||
|
onUnload() {
|
||||||
|
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 页面相关事件处理函数--监听用户下拉动作
|
||||||
|
*/
|
||||||
|
onPullDownRefresh() {
|
||||||
|
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 页面上拉触底事件的处理函数
|
||||||
|
*/
|
||||||
|
onReachBottom() {
|
||||||
|
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 用户点击右上角分享
|
||||||
|
*/
|
||||||
|
onShareAppMessage() {
|
||||||
|
|
||||||
|
}
|
||||||
|
})
|
||||||
3
sugarCheck/pages/globalCall/globalCall.json
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
{
|
||||||
|
"usingComponents": {}
|
||||||
|
}
|
||||||
2
sugarCheck/pages/globalCall/globalCall.wxml
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
<!--sugarCheck/pages/globalCall/globalCall.wxml-->
|
||||||
|
<text>sugarCheck/pages/globalCall/globalCall.wxml</text>
|
||||||
1
sugarCheck/pages/globalCall/globalCall.wxss
Normal file
@ -0,0 +1 @@
|
|||||||
|
/* sugarCheck/pages/globalCall/globalCall.wxss */
|
||||||