内网开发

This commit is contained in:
2023-11-09 11:12:08 +08:00
parent 336bcc662b
commit 75000d846b
34 changed files with 2153 additions and 283 deletions

View File

@@ -14,13 +14,13 @@
// #endif
export default {
onLaunch: function() {
localStorage.setItem("appId",10000)
appInit(500).then((res)=>{
console.log("获取到token创建长链接")
console.log(this.$socketTask.socketTask)
this.$store.dispatch('getAddressList');
setTimeout(()=>{
this.$socketTask.connectSocket()
},500)
this.$socketTask.connectSocket()
},2500)
}).then((error)=>{
console.log("未获取到IM的token")
})

View File

@@ -1,5 +1,5 @@
export default class config{
static prod="online"
static prod="online_not"
static getZnzqApiUrl(){
if(process.env.NODE_ENV === 'development' ){
return 'http://work.ii999.live:19002/znzq'
@@ -7,7 +7,7 @@ export default class config{
if(this.prod=="online"){
return 'http://work.ii999.live:19002/znzq'
}else{
return 'http://172.16.2.3:19000/znzq'
return '/znzq'
}
}
}
@@ -24,12 +24,12 @@ export default class config{
}
static getVideoRoomUrl(room,userid,isPublish=0,isPlayer=1){
if(process.env.NODE_ENV === 'development' ){
return `http://localhost:8080/hd-glasses-app/#/call_room?isPublish=${isPublish}&isPlayer=${isPlayer}&uid=${userid}&room=${room}`
return `http://localhost:8080/hd-glasses-app/#/call_room?showInviteConfirmDialog=1&isPublish=${isPublish}&isPlayer=${isPlayer}&uid=${userid}&room=${room}`
}else{
if(this.prod=="online"){
return `https://119.45.242.222/hd-glasses-app/#/call_room?isPublish=${isPublish}&isPlayer=${isPlayer}&uid=${userid}&room=${room}`
return `https://119.45.242.222/hd-glasses-app/#/call_room?showInviteConfirmDialog=1&isPublish=${isPublish}&isPlayer=${isPlayer}&uid=${userid}&room=${room}`
}else{
return `https://172.16.3.19/hd-glasses-app/#/call_room?isPublish=${isPublish}&isPlayer=${isPlayer}&uid=${userid}&room=${room}`
return `https://172.16.3.19/hd-glasses-app/#/call_room?showInviteConfirmDialog=1&isPublish=${isPublish}&isPlayer=${isPlayer}&uid=${userid}&room=${room}`
}
}
}

View File

@@ -3,6 +3,8 @@ import browser from '@/common/browser'
import store from '../store'
import pinyin from '@/common/pinyin.js';
import dayjs from "dayjs"
import localForage from 'localforage';
export default {
// 获取字典
@@ -992,13 +994,22 @@ export default {
}
titleObj.buttons[index].text = text;
currentWebview.setStyle({
titleNView: titleObj
titleNView: titleObj
});
// #endif
},
formatMessage(msg){
msg.pushType="MSG"
var msgType="TEXT"
var data = store.state.addressList
const fromUserData=data.find(item=>item.userId==msg.fromId)
console.log("*****************查找到通讯录中的数据*****************")
console.log("*****************查找到通讯录中的数据*****************")
console.log("*****************查找到通讯录中的数据*****************")
console.log(fromUserData)
const _data=JSON.parse(msg.messageBody)
// try{
// console.log("=======================formatMessage")
@@ -1022,7 +1033,7 @@ export default {
msg.fromInfo={
userId:msg.fromId,
userType:1,
nickName:msg.fromId,
nickName:fromUserData?fromUserData.realname:msg.fromId,
portrait:"https://shudong2022.oss-cn-hangzhou.aliyuncs.com/common/user/logo.png"
};
msg.groupInfo={};

View File

@@ -2,17 +2,22 @@ import config from "@/common/config.js"
let timer = null
let retimer = null
import store from '../store'
import * as sdk from "@/common/imSdk/lim-sdk.js";
import lim from "@/common/imSdk/sdk-bridge.js";
import publicFc from '@/common/publicFc';
import localForage from 'localforage';
export default {
socketTask: null,
// 连接WebSocket
connectSocket() {
const ListenerMap = {
onSocketConnectEvent: (option, status, data) => {
console.log("已建立连接:" + JSON.stringify(status));
@@ -39,7 +44,7 @@ export default {
const _data = publicFc.formatMessage(msg)
uni.$emit('onP2PMessage', _data);
store.dispatch('onP2PMessage', _data)
},500)
},2000)
})
}
}, 2000);

View File

@@ -22,26 +22,30 @@ export function appInit(ms) {
return new Promise((resolve, reject) => {
var i = 0;
let timer = setInterval(() => {
var im_imUserSign = localStorage.getItem("im_imUserSign")
var im_userId = localStorage.getItem("im_userId")
var im_imUserSign = uni.getStorageSync("im_imUserSign")
var hd_userId = uni.getStorageSync("hd_userid")
if(hd_userId){
uni.setStorageSync("userId",hd_userId)
}else{
console.log("============未获取到hd_userid")
}
var hd_token = localStorage.getItem("hd_token")
i = i + 1;
if (i > 30) {
i = 100;
if (i < 0) {
reject("error")
}
if (im_imUserSign) {
localStorage.setItem("imUserSign",im_imUserSign)
localStorage.setItem("appId",10000)
localStorage.setItem("token",hd_token)
uni.setStorageSync("imUserSign",im_imUserSign)
uni.setStorageSync("token",hd_token)
if(im_userId){
localStorage.setItem("userId",im_userId)
if(uni.getStorageSync("userId")!=null&&uni.getStorageSync("imUserSign")!=null&&uni.getStorageSync("token")!=null){
clearInterval(timer)
timer = null
resolve("ok")
}
clearInterval(timer)
timer = null
resolve("ok")
}
}, ms);
})

View File

@@ -167,7 +167,8 @@ export default {
break;
case 'chooseMedia':
uni.showActionSheet({
itemList: ['图片', '视频'],
itemList: ['图片'],
// itemList: ['图片', '视频'],
success: (res) => {
switch (res.tapIndex){
case 0:

View File

@@ -1,9 +1,9 @@
import http from '@/common/request';
import publicFc from '@/common/publicFc';
import customHttp from "@/common/customHttp.js"
import * as sdk from "@/common/imSdk/lim-sdk.js";
import lim from "@/common/imSdk/sdk-bridge.js";
import localForage from 'localforage';
const _im = lim.lim.im
function sortBy(field) {
@@ -37,7 +37,8 @@ const store = new Vuex.Store({
chatDataUserId: '',
topicReply: {},
topicRed: {},
friendApply: {}
friendApply: {},
addressList:[],
},
mutations: {
update_UserInfo(state, data) { //个人信息
@@ -60,6 +61,10 @@ const store = new Vuex.Store({
update_friendApply(state, data) {
state.friendApply = data
uni.setStorageSync('friendApply', JSON.stringify(data));
},
update_addressList(state,data){
state.addressList=data;
localForage.setItem("addressList",data)
}
},
actions: {
@@ -347,6 +352,27 @@ const store = new Vuex.Store({
},
createChat(context, data) {
},
getAddressList(context){
//获取通讯录,存储通讯录数据到本地
customHttp.customHttp.get('/api/im/app/addressList', {
params: {}, /* 会加在url上 */
header: {}, /* 会与全局header合并如有同名属性局部覆盖全局 */
dataType: 'json',
// 注如果局部custom与全局custom有同名属性则后面的属性会覆盖前面的属性相当于Object.assign(全局,局部)
custom: {target: "znzq"} , // 可以加一些自定义参数在拦截器等地方使用。比如这里我加了一个auth可在拦截器里拿到如果true就传token
}).then(res => {
console.log("=========获取到数据")
console.log(res)
if(res.statusCode==200){
if(res.data.code==200){
var records=res.data.result.records
context.state.addressList = records
}
}
}).catch(err => {
})
}
}
})

View File

@@ -157,7 +157,7 @@
params: {},
/* 会加在url上 */
header: {},
/* 会与全局header合并如有同名属性局部覆盖全局 */
/* 会与全局header合并如有同名属性WW部覆盖全局 */
dataType: 'json',
// 注如果局部custom与全局custom有同名属性则后面的属性会覆盖前面的属性相当于Object.assign(全局,局部)
custom: {

View File

@@ -23,7 +23,6 @@
<script>
export default {
data() {
return {