const AIChatSocket = require('./utils/chatmsg.js') const API = require('./utils/api.js') App({ onLaunch() { let appId = wx.getStorageSync('attendant-appid') if (!appId) { appId = 'app_' + Date.now().toString(36) + Math.random().toString(36).substr(2, 9) wx.setStorageSync('attendant-appid', appId) } this.globalData.appId = appId const request = require('./utils/request.js') this.globalData.servicesReady = new Promise((resolve) => { API.resource.getServices().then((data) => { this.globalData.services = data.data.services resolve(data.data.services) }).catch((err) => { console.error('获取服务列表失败', err) resolve([]) }) }) }, onShow(options) { const request = require('./utils/request.js') wx.login({ success: res => { if (res.code) { request.post('/user/wxsignin', { code: res.code }) .then((data) => { if (data.code == 0) { this.globalData.user = data.data.user } else { console.log('error:', data) } }) .catch((err) => { console.log('请求失败', err) }) } else { console.log('登录失败!' + res.errMsg) } } }) this.initChatSocket() }, initChatSocket() { if (this.globalData.chatSocket) return const socket = new AIChatSocket() socket.onOpen(() => { console.log('[App] Chat WebSocket connected') }) socket.onClose((res) => { console.log('[App] Chat WebSocket closed', res) }) socket.onError((err) => { console.error('[App] Chat WebSocket error', err) }) socket.connect().catch((err) => { console.error('[App] Chat WebSocket connect failed', err) }) this.globalData.chatSocket = socket }, globalData: { appId: '', user: null, chatSocket: null, services: [], } })