/** * Web唐明明 * 匆匆数载恍如梦,岁月迢迢华发增。 * 碌碌无为枉半生,一朝惊醒万事空。 * moduleName: 聊聊 */ import store from '@/store' import { request } from '../index' // 获取好友列表 const getFriends = () => { return request({ url: 'im/friends', }, true) } // 获取好友列表 const getFriendsLetter = () => { return request({ url: 'im/friends/letter', }, true) } // 获取融云token const getImToken = () => { return request({ url: 'im/token', }, true) } // 删除好友 const deleteFriend = (targetId) => { return request({ method: 'DELETE', url: 'im/friends/' + targetId, }) } // 获取用户信息 const getUserInfo = (targetId) => { return request({ url: 'im/userInfo/' + targetId, }) } /** * 查看好友资料,附带好友关系 */ const getFriendInfo = (userId) => { return request({ url: 'im/friendInfo/' + userId }) } /** * 获取好友申请列表 */ const getPedings = () => { return request({ url: 'im/friends/pending' }) } const resolveFriend = (targetId) => { return request({ method: 'POST', url: 'im/friends/accept/' + targetId }) } const rejectFriend = (targetId) => { return request({ method: 'DELETE', url: 'im/friends/accept/' + targetId }) } const searchFriend = (value) => { return request({ url: 'im/search', data: { keyword: value } }) } const pedingFriend = (recipient) => { return request({ method: 'POST', url: 'im/friends/' + recipient }) } // 以下是群组相关业务的接口 const getMyGroups = () => { return request({ url: 'im/groups' }) } /** * 获取群信息,包含基础信息和 14 个用户 */ const getGroupInfo = (groupId) => { return request({ url: 'im/groups/' + groupId }) } /** * 群组基础信息 */ const getGroupBase = (groupId) => { return request({ url: 'im/groups/' + groupId + '/base' }) } const getGroupUsers = (groupId) => { return request({ url: 'im/groups/' + groupId + '/users' }) } const getGroupAnnouncements = (groupId) => { return request({ url: 'im/groups/' + groupId + '/announcements' }) } const createGroupAnnouncement = (groupId, content) => { return request({ method: 'POST', url: 'im/groups/' + groupId + '/announcements', data: { content: content } }) } const deleteGroupAnnouncement = (groupId, announcementId) => { return request({ method: 'DELETE', url: 'im/groups/' + groupId + '/announcements/' + announcementId }) } /** * 创建群聊 */ const createGroup = (data) => { return request({ method: 'POST', url: 'im/groups', data: data }) } const updateGroup = (groupId, data) => { return request({ method: 'PUT', url: 'im/groups/' + groupId, data: data }) } /** * 搜索群聊 */ const searchGroup = (name) => { return request({ url: 'im/groups/search?name=' + name }) } /** * 加群前,获取的群信息 */ const joinGroupPre = (groupId) => { return request({ url: 'im/groups/' + groupId + '/join' }) } const joinGroup = (groupId, message) => { return request({ method: 'POST', url: 'im/groups/' + groupId + '/join', data: { message } }) } const quitGroup = (groupId) => { return request({ method: 'POST', url: 'im/groups/' + groupId + '/quit' }) } /** * 解散群聊 */ const dismissGroup = (groupId) => { return request({ method: 'DELETE', url: 'im/groups/' + groupId }) } export { getImToken, deleteFriend, getFriends, getFriendsLetter, getUserInfo, getFriendInfo, getPedings, resolveFriend, rejectFriend, searchFriend, pedingFriend, getMyGroups, createGroup, updateGroup, getGroupInfo, getGroupBase, getGroupUsers, getGroupAnnouncements, createGroupAnnouncement, deleteGroupAnnouncement, searchGroup, joinGroupPre, joinGroup, quitGroup, dismissGroup }