@x-edu/live-player 0.0.21 → 0.0.23
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.browserslistrc +10 -10
- package/.eslintignore +8 -8
- package/.eslintrc.js +26 -26
- package/.gem-mine +11 -11
- package/.postcssrc.js +6 -6
- package/README.md +145 -145
- package/babel.config.js +33 -33
- package/doc/develop.md +23 -23
- package/gem-mine.config.js +86 -86
- package/jest.config.js +9 -9
- package/jsconfig.json +15 -15
- package/mock/helper.js +8 -8
- package/mock/index.js +34 -34
- package/package.json +99 -99
- package/public/3rd/ali-player/alipayercomponents-1.0.8.min.js +26 -26
- package/public/3rd/ali-player/aliplayer-hls-min.js +27 -27
- package/public/3rd/ali-player/aliplayer-min.js +1 -1
- package/public/3rd/im-web-push/index.umd.js +14 -14
- package/public/JsBridge.js +1602 -1602
- package/public/fish/editor/themes/default/css/ueditor.css +1905 -1905
- package/public/fish/editor/third-party/codemirror/codemirror.css +104 -104
- package/public/fish/editor/third-party/codemirror/codemirror.js +3581 -3581
- package/public/fish/editor/third-party/zeroclipboard/ZeroClipboard.js +1255 -1255
- package/public/fish/editor/ueditor.all.min.js +16 -16
- package/public/fish/editor/ueditor.config.js +467 -467
- package/public/fish/icon/umd-4.1.2.js +1 -1
- package/public/fish/video/videoplayer.min.css +6 -6
- package/public/fish/video/videoplayer.min.js +31 -31
- package/public/fish/video/zh-CN.js +82 -82
- package/public/icon/demo.css +539 -539
- package/public/icon/demo_index.html +2189 -2189
- package/public/icon/iconfont.css +363 -363
- package/public/icon/iconfont.json +618 -618
- package/public/index.html +50 -50
- package/script/image/readme.md +77 -77
- package/script/postcss.js +48 -48
- package/src/App.jsx +24 -24
- package/src/asset/img/course/playing.svg +21 -21
- package/src/asset/img/icon-course-white.svg +3 -3
- package/src/asset/img/icon-course.svg +3 -3
- package/src/asset/img/icon-eye-white.svg +4 -4
- package/src/asset/img/icon-eye.svg +4 -4
- package/src/asset/img/icon-school-white.svg +3 -3
- package/src/asset/img/icon-school.svg +3 -3
- package/src/asset/img/loading.svg +52 -52
- package/src/asset/img/video-play.svg +6 -6
- package/src/asset/style/background.less +19 -19
- package/src/asset/style/banner.less +36 -36
- package/src/asset/style/base.less +74 -74
- package/src/asset/style/index.less +114 -114
- package/src/asset/style/reset-theme.less +141 -141
- package/src/asset/style/theme/index.less +55 -55
- package/src/asset/style/theme/party/global.less +20 -20
- package/src/asset/style/theme/party/override.less +57 -57
- package/src/asset/style/theme/test/global.less +18 -18
- package/src/asset/style/theme/test/override.less +45 -45
- package/src/asset/style/variable.less +12 -12
- package/src/component/AliPlayer/index.jsx +49 -49
- package/src/component/Avatar/index.jsx +50 -50
- package/src/component/Empty/index.jsx +34 -34
- package/src/component/Empty/index.module.less +37 -37
- package/src/component/IMChatroom/component/status/403.jsx +13 -13
- package/src/component/IMChatroom/component/status/404.jsx +13 -13
- package/src/component/IMChatroom/component/status/Error.jsx +23 -23
- package/src/component/IMChatroom/component/status/Loading.jsx +5 -5
- package/src/component/IMChatroom/config/app/config.js +118 -118
- package/src/component/IMChatroom/config/app/index.js +60 -60
- package/src/component/IMChatroom/config/env.js +5 -5
- package/src/component/IMChatroom/config/index.js +3 -3
- package/src/component/IMChatroom/config/request/config/base.js +124 -124
- package/src/component/IMChatroom/config/request/config/chatroom.js +26 -26
- package/src/component/IMChatroom/config/request/config/imCoreApi.js +21 -21
- package/src/component/IMChatroom/config/request/index.js +21 -21
- package/src/component/IMChatroom/config/request/proxy.js +39 -39
- package/src/component/IMChatroom/config/url.js +7 -7
- package/src/component/IMChatroom/constants/errorCode.js +9 -9
- package/src/component/IMChatroom/constants/index.js +84 -84
- package/src/component/IMChatroom/constants/origin.js +27 -27
- package/src/component/IMChatroom/context/chatroom.js +154 -154
- package/src/component/IMChatroom/context/connect.js +28 -28
- package/src/component/IMChatroom/i18n/en/index.json +73 -73
- package/src/component/IMChatroom/i18n/index.jsx +14 -14
- package/src/component/IMChatroom/i18n/language.js +9 -9
- package/src/component/IMChatroom/i18n/zh-CN/index.json +73 -73
- package/src/component/IMChatroom/index.jsx +49 -49
- package/src/component/IMChatroom/page/chat/index.jsx +27 -27
- package/src/component/IMChatroom/page/chat/messageEditor/index.jsx +375 -375
- package/src/component/IMChatroom/page/chat/messageList/index.jsx +354 -354
- package/src/component/IMChatroom/page/chat/stickedMessage/index.jsx +59 -59
- package/src/component/IMChatroom/page/chat/stickedMessage/style/index.module.less +7 -7
- package/src/component/IMChatroom/page/chat/style/index.module.less +51 -51
- package/src/component/IMChatroom/page/home/connect/index.jsx +188 -188
- package/src/component/IMChatroom/page/home/connect/status.jsx +124 -124
- package/src/component/IMChatroom/page/home/context/cmd.jsx +37 -37
- package/src/component/IMChatroom/page/home/context/index.jsx +67 -67
- package/src/component/IMChatroom/page/home/index.jsx +164 -164
- package/src/component/IMChatroom/page/home/notice/index.jsx +123 -123
- package/src/component/IMChatroom/page/home/notice/style/index.module.less +49 -49
- package/src/component/IMChatroom/page/home/style/index.module.less +110 -110
- package/src/component/IMChatroom/page/member/index.jsx +15 -15
- package/src/component/IMChatroom/page/member/memberCount/index.jsx +44 -44
- package/src/component/IMChatroom/page/member/memberList/index.jsx +121 -121
- package/src/component/IMChatroom/page/member/style/index.module.less +2 -2
- package/src/component/IMChatroom/sdk/bridge.js +39 -39
- package/src/component/IMChatroom/sdk/cs/constants.js +20 -20
- package/src/component/IMChatroom/sdk/cs/index.js +101 -101
- package/src/component/IMChatroom/sdk/imChatroom.js +15 -15
- package/src/component/IMChatroom/sdk/imcore/constants.js +128 -128
- package/src/component/IMChatroom/sdk/imcore/emitters/chatroomDestroyed.js +5 -5
- package/src/component/IMChatroom/sdk/imcore/emitters/chatroomInfoGetFail.js +5 -5
- package/src/component/IMChatroom/sdk/imcore/emitters/chatroomKickedByAdmin.js +5 -5
- package/src/component/IMChatroom/sdk/imcore/emitters/chatroomKickedBySelf.js +5 -5
- package/src/component/IMChatroom/sdk/imcore/emitters/chatroomLoginFail.js +5 -5
- package/src/component/IMChatroom/sdk/imcore/emitters/chatroomLoginSuccess.js +5 -5
- package/src/component/IMChatroom/sdk/imcore/emitters/chatroomMemberLogin.js +5 -5
- package/src/component/IMChatroom/sdk/imcore/emitters/chatroomMemberLogout.js +5 -5
- package/src/component/IMChatroom/sdk/imcore/emitters/connectionConnected.js +5 -5
- package/src/component/IMChatroom/sdk/imcore/emitters/connectionConnecting.js +5 -5
- package/src/component/IMChatroom/sdk/imcore/emitters/connectionDisconnect.js +5 -5
- package/src/component/IMChatroom/sdk/imcore/emitters/index.js +57 -57
- package/src/component/IMChatroom/sdk/imcore/emitters/messageReceive.js +36 -36
- package/src/component/IMChatroom/sdk/imcore/index.js +178 -178
- package/src/component/IMChatroom/sdk/imcore/interceptors/request.js +7 -7
- package/src/component/IMChatroom/sdk/imcore/interceptors/response.js +5 -5
- package/src/component/IMChatroom/sdk/imcore/plugins/getAuth.js +64 -64
- package/src/component/IMChatroom/sdk/imcore/plugins/getConversationId.js +20 -20
- package/src/component/IMChatroom/sdk/imcore/plugins/getExtInfo.js +10 -10
- package/src/component/IMChatroom/sdk/imcore/plugins/getLoginInfo.js +48 -48
- package/src/component/IMChatroom/sdk/imcore/plugins/getPlatformType.js +12 -12
- package/src/component/IMChatroom/sdk/imcore/plugins/index.js +22 -22
- package/src/component/IMChatroom/sdk/imcore/util/format.js +177 -177
- package/src/component/IMChatroom/sdk/imcore/util/parser.js +35 -35
- package/src/component/IMChatroom/sdk/oms.js +18 -18
- package/src/component/IMChatroom/sdk/uc.js +3 -3
- package/src/component/IMChatroom/subscription/channel/app.js +5 -5
- package/src/component/IMChatroom/subscription/channel/ctl.js +22 -22
- package/src/component/IMChatroom/subscription/channel/member.js +40 -40
- package/src/component/IMChatroom/subscription/channel/message.js +13 -13
- package/src/component/IMChatroom/subscription/channel/ntf.js +86 -86
- package/src/component/IMChatroom/subscription/channel/tel.js +5 -5
- package/src/component/IMChatroom/subscription/channel/websocket.js +5 -5
- package/src/component/IMChatroom/subscription/event.js +37 -37
- package/src/component/IMChatroom/subscription/index.js +19 -19
- package/src/component/IMChatroom/util/account.js +8 -8
- package/src/component/IMChatroom/util/chatroom.js +255 -255
- package/src/component/IMChatroom/util/jsonBigInt.js +5 -5
- package/src/component/IMChatroom/util/location.js +12 -12
- package/src/component/Icon/index.jsx +16 -16
- package/src/component/Icon/index.module.less +2 -2
- package/src/component/Pagination/LocalPagination.jsx +27 -27
- package/src/component/Pagination/RemotePagination.jsx +32 -32
- package/src/component/Pagination/index.jsx +32 -31
- package/src/component/Pagination/index.module.less +117 -110
- package/src/component/PlayerTip/index.jsx +34 -34
- package/src/component/VideoBase/index.jsx +242 -242
- package/src/component/VideoBase/style.less +65 -65
- package/src/component/VideoBase/utils.js +81 -81
- package/src/component/mixin.less +9 -9
- package/src/component/status/403.jsx +15 -15
- package/src/component/status/404/index.jsx +73 -73
- package/src/component/status/404/index.module.less +36 -36
- package/src/component/status/Error/error.module.less +13 -13
- package/src/component/status/Error/index.jsx +47 -47
- package/src/component/status/Loading/img/loading.svg +52 -52
- package/src/component/status/Loading/index.jsx +31 -31
- package/src/component/status/Loading/index.less +56 -56
- package/src/component/status/None/index.jsx +20 -20
- package/src/component/status/None/index.module.less +35 -35
- package/src/component/status/Status/index.jsx +26 -26
- package/src/component/status/Status/index.module.less +8 -8
- package/src/config/constant/commonUrl.js +2 -2
- package/src/config/constant/user.js +6 -6
- package/src/config/context/site-config.js +48 -48
- package/src/config/env/index.js +5 -5
- package/src/config/env/local/index.js +13 -13
- package/src/config/env/ncet-xedu/api.js +175 -175
- package/src/config/env/ncet-xedu/app.js +12 -12
- package/src/config/env/ncet-xedu/cs.js +8 -8
- package/src/config/env/ncet-xedu/index.js +14 -14
- package/src/config/env/ncet-xedu/push.js +5 -5
- package/src/config/env/preproduction/api.js +144 -144
- package/src/config/env/preproduction/app.js +12 -12
- package/src/config/env/preproduction/cs.js +8 -8
- package/src/config/env/preproduction/index.js +14 -14
- package/src/config/env/preproduction/push.js +5 -5
- package/src/config/env/product/api.js +113 -113
- package/src/config/env/product/app.js +12 -12
- package/src/config/env/product/cs.js +5 -5
- package/src/config/env/product/index.js +14 -14
- package/src/config/env/product/push.js +5 -5
- package/src/config/live.js +80 -80
- package/src/config/publicLive.js +53 -53
- package/src/config/request/assessments.js +24 -24
- package/src/config/request/config-center.js +8 -8
- package/src/config/request/helper.js +166 -166
- package/src/config/request/im-broadcasts.js +12 -12
- package/src/config/request/live-activity-gateway.js +8 -8
- package/src/config/request/live-activity.js +13 -13
- package/src/config/request/raw.js +6 -6
- package/src/config/request/x-cloud-web.js +13 -13
- package/src/config/request/x-proxy.js +34 -34
- package/src/demo/Detail.jsx +11 -11
- package/src/demo/List.jsx +66 -64
- package/src/demo/index.jsx +17 -17
- package/src/detail/LineSwitch/index.jsx +71 -71
- package/src/detail/LiveCountDown/index.jsx +44 -44
- package/src/detail/LiveCountDown/index.module.less +31 -31
- package/src/detail/LiveOnlineCount/img/icon.svg +15 -15
- package/src/detail/LiveOnlineCount/index.jsx +68 -68
- package/src/detail/LiveOnlineCount/index.module.less +34 -34
- package/src/detail/LiveOnlineCount/util.js +74 -74
- package/src/detail/LiveStatus/AnchorOnTheWay.jsx +88 -88
- package/src/detail/LiveStatus/index.jsx +202 -202
- package/src/detail/LiveStatus/index.module.less +192 -192
- package/src/detail/LiveVideo/config.js +37 -37
- package/src/detail/LiveVideo/index.jsx +188 -188
- package/src/detail/LiveVideo/index.module.less +41 -41
- package/src/detail/NotLoginChatroom/index.jsx +37 -37
- package/src/detail/NotLoginChatroom/index.module.less +46 -46
- package/src/detail/RecordVideo/index.jsx +150 -150
- package/src/detail/RecordVideo/index.module.less +31 -31
- package/src/detail/ReplayVideo/index.jsx +93 -93
- package/src/detail/ReplayVideo/index.module.less +65 -65
- package/src/detail/const.js +20 -20
- package/src/detail/hook/usePullSource.js +82 -82
- package/src/detail/hook/usePullState.js +51 -51
- package/src/detail/index.jsx +482 -482
- package/src/detail/index.module.less +188 -188
- package/src/hook/useAsync.js +84 -84
- package/src/hook/useGoToPage.js +83 -83
- package/src/hook/useInterval.js +28 -28
- package/src/hook/useIsMounted.js +17 -17
- package/src/hook/useModuleByRole.js +53 -53
- package/src/hook/usePageScrollable.js +52 -52
- package/src/hook/usePortal.js +83 -83
- package/src/hook/useScrollRestore/index.js +32 -32
- package/src/hook/useScrollRestore/scrollContext.js +20 -20
- package/src/hook/useTrackRef.js +11 -11
- package/src/hook/useWindowSize.js +28 -28
- package/src/hook/useZoom.js +47 -47
- package/src/index.js +10 -10
- package/src/lib/getLiveOnlineCount.js +10 -10
- package/src/lib/getServiceConfig.js +102 -102
- package/src/list/Empty/index.jsx +20 -20
- package/src/list/Empty/index.module.less +23 -23
- package/src/list/ListItem/Action/index.jsx +100 -98
- package/src/list/ListItem/Action/index.module.less +19 -21
- package/src/list/ListItem/img/play.svg +15 -15
- package/src/list/ListItem/img/video.svg +3 -0
- package/src/list/ListItem/index.jsx +46 -28
- package/src/list/ListItem/index.module.less +152 -146
- package/src/list/index.module.less +35 -35
- package/src/service/common.js +73 -73
- package/src/service/content-mgr.js +73 -73
- package/src/service/im-group.js +12 -12
- package/src/service/im.js +7 -7
- package/src/service/imBroadcasts.js +33 -33
- package/src/service/like.js +134 -134
- package/src/service/manageApi.js +7 -7
- package/src/service/managePortal.js +6 -6
- package/src/service/myStudyRecord.js +93 -93
- package/src/service/navigation.js +47 -47
- package/src/service/ndMeeting.js +10 -10
- package/src/service/ndr.js +122 -122
- package/src/service/news.js +93 -93
- package/src/service/personalCenter.js +270 -270
- package/src/service/qualityCourse.js +31 -31
- package/src/service/recommend.js +81 -81
- package/src/service/school.js +323 -323
- package/src/service/search.js +170 -170
- package/src/service/site-config.js +7 -7
- package/src/service/socialCensor.js +45 -45
- package/src/service/specialEdu.js +31 -31
- package/src/service/suggestion.js +85 -85
- package/src/service/syncClassroom.js +321 -321
- package/src/service/tCourse.js +204 -204
- package/src/service/tchTraining.js +37 -37
- package/src/service/uc.js +45 -45
- package/src/util/app.js +1 -1
- package/src/util/array.js +3 -3
- package/src/util/auth/func.js +57 -57
- package/src/util/date.js +53 -53
- package/src/util/env.js +9 -9
- package/src/util/getTimestamp.js +10 -10
- package/src/util/hof.js +105 -105
- package/src/util/live/index.js +42 -42
- package/src/util/netUrl.js +35 -35
- package/src/util/object.js +13 -13
- package/src/util/push/index.js +58 -58
- package/src/util/request.js +227 -227
- package/src/util/type.js +17 -17
- package/src/util/url.js +203 -203
- package/src/util/video.js +26 -26
- package/test/setup.js +21 -21
- package/test/unit/component/header/logo.spec.jsx +8 -8
- package/test/unit/helper.jsx +25 -25
- package/test/unit/util/date.spec.js +40 -40
- package/dist/XEduLivePlayer.common.js +0 -72605
- package/dist/XEduLivePlayerPre.common.js +0 -72625
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import subscription from '../../../subscription'
|
|
2
|
-
|
|
3
|
-
export default function connectionDisconnect(data) {
|
|
4
|
-
subscription.websocket.publish(subscription.EVENT.DISCONNECT, data)
|
|
5
|
-
}
|
|
1
|
+
import subscription from '../../../subscription'
|
|
2
|
+
|
|
3
|
+
export default function connectionDisconnect(data) {
|
|
4
|
+
subscription.websocket.publish(subscription.EVENT.DISCONNECT, data)
|
|
5
|
+
}
|
|
@@ -1,57 +1,57 @@
|
|
|
1
|
-
import IMCoreChatroom from '@ndim/chatroom'
|
|
2
|
-
|
|
3
|
-
import chatroomInfoGetFail from './chatroomInfoGetFail'
|
|
4
|
-
import chatroomKickedBySelf from './chatroomKickedBySelf'
|
|
5
|
-
import chatroomKickedByAdmin from './chatroomKickedByAdmin'
|
|
6
|
-
import chatroomDestroyed from './chatroomDestroyed'
|
|
7
|
-
import chatroomLoginFail from './chatroomLoginFail'
|
|
8
|
-
import chatroomLoginSuccess from './chatroomLoginSuccess'
|
|
9
|
-
import chatroomMemberLogin from './chatroomMemberLogin'
|
|
10
|
-
import chatroomMemberLogout from './chatroomMemberLogout'
|
|
11
|
-
import connectionConnected from './connectionConnected'
|
|
12
|
-
import connectionConnecting from './connectionConnecting'
|
|
13
|
-
import connectionDisconnect from './connectionDisconnect'
|
|
14
|
-
import messageReceive from './messageReceive'
|
|
15
|
-
|
|
16
|
-
const actions = {
|
|
17
|
-
[IMCoreChatroom.ChatroomConnectionEvent.GetChatroomInfoFail]: chatroomInfoGetFail,
|
|
18
|
-
[IMCoreChatroom.ChatroomConnectionEvent.ChatroomKickedBySelf]: chatroomKickedBySelf,
|
|
19
|
-
[IMCoreChatroom.ChatroomConnectionEvent.ChatroomKickedByAdmin]: chatroomKickedByAdmin,
|
|
20
|
-
[IMCoreChatroom.ChatroomConnectionEvent.ChatroomDestroyed]: chatroomDestroyed,
|
|
21
|
-
[IMCoreChatroom.ChatroomConnectionEvent.LoginChatroomFail]: chatroomLoginFail,
|
|
22
|
-
[IMCoreChatroom.ChatroomConnectionEvent.LoginChatroomSuccess]: chatroomLoginSuccess,
|
|
23
|
-
[IMCoreChatroom.ChatroomConnectionEvent.ChatroomMemberLogin]: chatroomMemberLogin,
|
|
24
|
-
[IMCoreChatroom.ChatroomConnectionEvent.ChatroomMemberLogout]: chatroomMemberLogout,
|
|
25
|
-
[IMCoreChatroom.ConnectionEvent.Open]: undefined,
|
|
26
|
-
[IMCoreChatroom.ConnectionEvent.Connected]: connectionConnected,
|
|
27
|
-
[IMCoreChatroom.ConnectionEvent.Reconnecting]: connectionConnecting,
|
|
28
|
-
[IMCoreChatroom.ConnectionEvent.Disconnect]: connectionDisconnect,
|
|
29
|
-
[IMCoreChatroom.ConnectionEvent.Kicked]: chatroomKickedBySelf,
|
|
30
|
-
[IMCoreChatroom.ConnectionEvent.KickedForRedirect]: undefined,
|
|
31
|
-
[IMCoreChatroom.ConnectionEvent.Close]: undefined,
|
|
32
|
-
[IMCoreChatroom.ConnectionEvent.Error]: undefined,
|
|
33
|
-
[IMCoreChatroom.ConnectionEvent.LoginFail]: undefined,
|
|
34
|
-
[IMCoreChatroom.MessageEvent.Receive.Inbox]: messageReceive
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
const emitters = {}
|
|
38
|
-
Object.keys(actions).forEach((key) => {
|
|
39
|
-
emitters[key] = (...args) => {
|
|
40
|
-
if (
|
|
41
|
-
![
|
|
42
|
-
IMCoreChatroom.ChatroomConnectionEvent.ChatroomMemberLogin,
|
|
43
|
-
IMCoreChatroom.ChatroomConnectionEvent.ChatroomMemberLogout,
|
|
44
|
-
IMCoreChatroom.MessageEvent.Receive.Inbox
|
|
45
|
-
].some((actionName) => actionName === key)
|
|
46
|
-
) {
|
|
47
|
-
// thirdParty.onPostMessage(thirdParty.EVENT.CONNECT_STATUS, key)
|
|
48
|
-
}
|
|
49
|
-
|
|
50
|
-
const action = actions[key]
|
|
51
|
-
if (action) {
|
|
52
|
-
action(...args)
|
|
53
|
-
}
|
|
54
|
-
}
|
|
55
|
-
})
|
|
56
|
-
|
|
57
|
-
export default emitters
|
|
1
|
+
import IMCoreChatroom from '@ndim/chatroom'
|
|
2
|
+
|
|
3
|
+
import chatroomInfoGetFail from './chatroomInfoGetFail'
|
|
4
|
+
import chatroomKickedBySelf from './chatroomKickedBySelf'
|
|
5
|
+
import chatroomKickedByAdmin from './chatroomKickedByAdmin'
|
|
6
|
+
import chatroomDestroyed from './chatroomDestroyed'
|
|
7
|
+
import chatroomLoginFail from './chatroomLoginFail'
|
|
8
|
+
import chatroomLoginSuccess from './chatroomLoginSuccess'
|
|
9
|
+
import chatroomMemberLogin from './chatroomMemberLogin'
|
|
10
|
+
import chatroomMemberLogout from './chatroomMemberLogout'
|
|
11
|
+
import connectionConnected from './connectionConnected'
|
|
12
|
+
import connectionConnecting from './connectionConnecting'
|
|
13
|
+
import connectionDisconnect from './connectionDisconnect'
|
|
14
|
+
import messageReceive from './messageReceive'
|
|
15
|
+
|
|
16
|
+
const actions = {
|
|
17
|
+
[IMCoreChatroom.ChatroomConnectionEvent.GetChatroomInfoFail]: chatroomInfoGetFail,
|
|
18
|
+
[IMCoreChatroom.ChatroomConnectionEvent.ChatroomKickedBySelf]: chatroomKickedBySelf,
|
|
19
|
+
[IMCoreChatroom.ChatroomConnectionEvent.ChatroomKickedByAdmin]: chatroomKickedByAdmin,
|
|
20
|
+
[IMCoreChatroom.ChatroomConnectionEvent.ChatroomDestroyed]: chatroomDestroyed,
|
|
21
|
+
[IMCoreChatroom.ChatroomConnectionEvent.LoginChatroomFail]: chatroomLoginFail,
|
|
22
|
+
[IMCoreChatroom.ChatroomConnectionEvent.LoginChatroomSuccess]: chatroomLoginSuccess,
|
|
23
|
+
[IMCoreChatroom.ChatroomConnectionEvent.ChatroomMemberLogin]: chatroomMemberLogin,
|
|
24
|
+
[IMCoreChatroom.ChatroomConnectionEvent.ChatroomMemberLogout]: chatroomMemberLogout,
|
|
25
|
+
[IMCoreChatroom.ConnectionEvent.Open]: undefined,
|
|
26
|
+
[IMCoreChatroom.ConnectionEvent.Connected]: connectionConnected,
|
|
27
|
+
[IMCoreChatroom.ConnectionEvent.Reconnecting]: connectionConnecting,
|
|
28
|
+
[IMCoreChatroom.ConnectionEvent.Disconnect]: connectionDisconnect,
|
|
29
|
+
[IMCoreChatroom.ConnectionEvent.Kicked]: chatroomKickedBySelf,
|
|
30
|
+
[IMCoreChatroom.ConnectionEvent.KickedForRedirect]: undefined,
|
|
31
|
+
[IMCoreChatroom.ConnectionEvent.Close]: undefined,
|
|
32
|
+
[IMCoreChatroom.ConnectionEvent.Error]: undefined,
|
|
33
|
+
[IMCoreChatroom.ConnectionEvent.LoginFail]: undefined,
|
|
34
|
+
[IMCoreChatroom.MessageEvent.Receive.Inbox]: messageReceive
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
const emitters = {}
|
|
38
|
+
Object.keys(actions).forEach((key) => {
|
|
39
|
+
emitters[key] = (...args) => {
|
|
40
|
+
if (
|
|
41
|
+
![
|
|
42
|
+
IMCoreChatroom.ChatroomConnectionEvent.ChatroomMemberLogin,
|
|
43
|
+
IMCoreChatroom.ChatroomConnectionEvent.ChatroomMemberLogout,
|
|
44
|
+
IMCoreChatroom.MessageEvent.Receive.Inbox
|
|
45
|
+
].some((actionName) => actionName === key)
|
|
46
|
+
) {
|
|
47
|
+
// thirdParty.onPostMessage(thirdParty.EVENT.CONNECT_STATUS, key)
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
const action = actions[key]
|
|
51
|
+
if (action) {
|
|
52
|
+
action(...args)
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
})
|
|
56
|
+
|
|
57
|
+
export default emitters
|
|
@@ -1,36 +1,36 @@
|
|
|
1
|
-
// import get from 'lodash/get'
|
|
2
|
-
|
|
3
|
-
import subscription from '../../../subscription'
|
|
4
|
-
import appConfig from '../../../config/app'
|
|
5
|
-
import bridge from '../../bridge'
|
|
6
|
-
// import { MESSAGE_TYPE } from '../../../constants'
|
|
7
|
-
|
|
8
|
-
import { transferLongToString, formatMessages } from '../util/format'
|
|
9
|
-
|
|
10
|
-
export default function messageReceive(data) {
|
|
11
|
-
console.log('message.receive', data)
|
|
12
|
-
let messages = []
|
|
13
|
-
data.forEach((items) => {
|
|
14
|
-
messages = messages.concat(items)
|
|
15
|
-
})
|
|
16
|
-
|
|
17
|
-
const items = formatMessages(messages.map((message) => transferLongToString(message)))
|
|
18
|
-
|
|
19
|
-
// items.forEach((message) => {
|
|
20
|
-
// const messageType = get(message, '_parsedContent.type')
|
|
21
|
-
// if ([MESSAGE_TYPE.CTL, MESSAGE_TYPE.NTF, MESSAGE_TYPE.TEL].some((type) => messageType === type)) {
|
|
22
|
-
// thirdParty.onPostMessage(thirdParty.EVENT.CMD, message)
|
|
23
|
-
// }
|
|
24
|
-
// })
|
|
25
|
-
|
|
26
|
-
if (appConfig.get('chatroomChatMessageList.filterMessages')) {
|
|
27
|
-
return bridge.register('filterMessages', {
|
|
28
|
-
type: 'new',
|
|
29
|
-
messages: items
|
|
30
|
-
}).then(({ messages: newMessages }) => {
|
|
31
|
-
subscription.websocket.publish(subscription.EVENT.RECEIVE_MESSAGES, newMessages)
|
|
32
|
-
})
|
|
33
|
-
} else {
|
|
34
|
-
subscription.websocket.publish(subscription.EVENT.RECEIVE_MESSAGES, items)
|
|
35
|
-
}
|
|
36
|
-
}
|
|
1
|
+
// import get from 'lodash/get'
|
|
2
|
+
|
|
3
|
+
import subscription from '../../../subscription'
|
|
4
|
+
import appConfig from '../../../config/app'
|
|
5
|
+
import bridge from '../../bridge'
|
|
6
|
+
// import { MESSAGE_TYPE } from '../../../constants'
|
|
7
|
+
|
|
8
|
+
import { transferLongToString, formatMessages } from '../util/format'
|
|
9
|
+
|
|
10
|
+
export default function messageReceive(data) {
|
|
11
|
+
console.log('message.receive', data)
|
|
12
|
+
let messages = []
|
|
13
|
+
data.forEach((items) => {
|
|
14
|
+
messages = messages.concat(items)
|
|
15
|
+
})
|
|
16
|
+
|
|
17
|
+
const items = formatMessages(messages.map((message) => transferLongToString(message)))
|
|
18
|
+
|
|
19
|
+
// items.forEach((message) => {
|
|
20
|
+
// const messageType = get(message, '_parsedContent.type')
|
|
21
|
+
// if ([MESSAGE_TYPE.CTL, MESSAGE_TYPE.NTF, MESSAGE_TYPE.TEL].some((type) => messageType === type)) {
|
|
22
|
+
// thirdParty.onPostMessage(thirdParty.EVENT.CMD, message)
|
|
23
|
+
// }
|
|
24
|
+
// })
|
|
25
|
+
|
|
26
|
+
if (appConfig.get('chatroomChatMessageList.filterMessages')) {
|
|
27
|
+
return bridge.register('filterMessages', {
|
|
28
|
+
type: 'new',
|
|
29
|
+
messages: items
|
|
30
|
+
}).then(({ messages: newMessages }) => {
|
|
31
|
+
subscription.websocket.publish(subscription.EVENT.RECEIVE_MESSAGES, newMessages)
|
|
32
|
+
})
|
|
33
|
+
} else {
|
|
34
|
+
subscription.websocket.publish(subscription.EVENT.RECEIVE_MESSAGES, items)
|
|
35
|
+
}
|
|
36
|
+
}
|
|
@@ -1,178 +1,178 @@
|
|
|
1
|
-
import IMCoreChatroom from '@ndim/chatroom'
|
|
2
|
-
import { reverse } from 'lodash'
|
|
3
|
-
|
|
4
|
-
import getUCInstance from '../uc'
|
|
5
|
-
import { getCurrentAccount, getCurrentAccountId } from '../../util/account'
|
|
6
|
-
import appConfig from '../../config/app'
|
|
7
|
-
import bridge from '../bridge'
|
|
8
|
-
import * as C from '../../constants'
|
|
9
|
-
|
|
10
|
-
import loadPlugins from './plugins'
|
|
11
|
-
import { imCoreOrigin, imCoreApiOrigin, ContentType, MessageTypeMap } from './constants'
|
|
12
|
-
import requestInterceptors from './interceptors/request'
|
|
13
|
-
import responseInterceptors from './interceptors/response'
|
|
14
|
-
import emitters from './emitters'
|
|
15
|
-
import { transferStringToLong, transferLongToString, formatMessages } from './util/format'
|
|
16
|
-
import getUserInfoWithCache from '../oms'
|
|
17
|
-
|
|
18
|
-
// eslint-disable-next-line import/no-mutable-exports
|
|
19
|
-
let imCoreChatroom = null
|
|
20
|
-
|
|
21
|
-
// eslint-disable-next-line import/prefer-default-export
|
|
22
|
-
export const initIMCoreChatroom = () => new Promise((resolve, reject) => getUCInstance().getTokenAsync().then((token) => {
|
|
23
|
-
loadPlugins(token, getCurrentAccount())
|
|
24
|
-
|
|
25
|
-
imCoreChatroom = new IMCoreChatroom({
|
|
26
|
-
server: { // webSocket 配置
|
|
27
|
-
wsUrl: appConfig.get('wsUrl') || imCoreOrigin, // IMCore 服务端 webSocket 服务器响应地址,必填
|
|
28
|
-
wsProtocols: '', // webSocket 子协议
|
|
29
|
-
apiHost: imCoreApiOrigin, // IMCoreApi 服务地址,必填
|
|
30
|
-
cachePrefix: appConfig.get('business')
|
|
31
|
-
},
|
|
32
|
-
autoAck: true, // 是否自动 ack 消息(即:是否自动通知服务端已接收到的最大的收件箱消息id),默认 false,选填
|
|
33
|
-
listenConversationChange: false, // 是否监听会话变更,若监听,会话变更后将更新会话已读游标等,默认 true,选填
|
|
34
|
-
messageCompletion: { // 消息补齐配置,选填
|
|
35
|
-
enable: false, // 是否开启
|
|
36
|
-
interval: 500, // 补齐频率,默认 500,单位,毫秒
|
|
37
|
-
untilAgo: 1 // 补齐多少天的消息,默认 15,单位,天
|
|
38
|
-
}
|
|
39
|
-
})
|
|
40
|
-
|
|
41
|
-
console.log('imCoreChatroom', imCoreChatroom)
|
|
42
|
-
|
|
43
|
-
// 设置请求拦截器
|
|
44
|
-
imCoreChatroom.request.instance.interceptors.request.use(...requestInterceptors)
|
|
45
|
-
imCoreChatroom.request.instance.interceptors.response.use(...responseInterceptors)
|
|
46
|
-
|
|
47
|
-
// 注册emitter事件
|
|
48
|
-
Object.keys(emitters).forEach((emitterName) => {
|
|
49
|
-
imCoreChatroom.emitter.on(emitterName, emitters[emitterName].bind(imCoreChatroom))
|
|
50
|
-
})
|
|
51
|
-
|
|
52
|
-
// 连接登录聊天室
|
|
53
|
-
imCoreChatroom.connect(getCurrentAccountId())
|
|
54
|
-
|
|
55
|
-
resolve(imCoreChatroom)
|
|
56
|
-
}).catch((error) => {
|
|
57
|
-
reject(error)
|
|
58
|
-
}))
|
|
59
|
-
|
|
60
|
-
export const getIMCoreChatroom = () => imCoreChatroom
|
|
61
|
-
|
|
62
|
-
export const reconnectIMCoreChatroom = () => {
|
|
63
|
-
imCoreChatroom.connect(getCurrentAccountId())
|
|
64
|
-
}
|
|
65
|
-
|
|
66
|
-
const __sendMessage = (message, online) => {
|
|
67
|
-
if (!online) {
|
|
68
|
-
return Promise.resolve(formatMessages([{
|
|
69
|
-
...message,
|
|
70
|
-
from: getCurrentAccountId(),
|
|
71
|
-
content: message.buildContent()
|
|
72
|
-
}])[0])
|
|
73
|
-
}
|
|
74
|
-
return imCoreChatroom.sendMessage({
|
|
75
|
-
time: null,
|
|
76
|
-
seq: null,
|
|
77
|
-
qos: 0,
|
|
78
|
-
resendFlag: 0,
|
|
79
|
-
convtype: 3,
|
|
80
|
-
buildContent: message.buildContent.bind(message)
|
|
81
|
-
}).then((res) => {
|
|
82
|
-
const data = transferLongToString(res)
|
|
83
|
-
return {
|
|
84
|
-
id: data.msgId,
|
|
85
|
-
seq: data.msgSeq,
|
|
86
|
-
time: data.msgTime,
|
|
87
|
-
_direction: 'up',
|
|
88
|
-
_localInfo: {
|
|
89
|
-
id: data.msgId,
|
|
90
|
-
index: 0
|
|
91
|
-
}
|
|
92
|
-
}
|
|
93
|
-
})
|
|
94
|
-
}
|
|
95
|
-
|
|
96
|
-
const _sendMessage = async (contentType, contentBody, online, headers) => {
|
|
97
|
-
const messageType = MessageTypeMap[contentType]
|
|
98
|
-
const message = new IMCoreChatroom.MessageConstructor[messageType]()
|
|
99
|
-
if (headers) {
|
|
100
|
-
message.setHeaders(headers)
|
|
101
|
-
}
|
|
102
|
-
|
|
103
|
-
if (contentType === ContentType.Text && contentBody.length > 500) {
|
|
104
|
-
let result
|
|
105
|
-
for (let i = 0; i < contentBody.length; i += 500) {
|
|
106
|
-
const body = contentBody.substring(i, i + 500)
|
|
107
|
-
message.setBody(body)
|
|
108
|
-
result = await __sendMessage(message, online)
|
|
109
|
-
}
|
|
110
|
-
return result
|
|
111
|
-
}
|
|
112
|
-
|
|
113
|
-
let body = contentBody
|
|
114
|
-
if (messageType === ContentType.Image) {
|
|
115
|
-
body = body.replace('fullimage', 'fullImage')
|
|
116
|
-
}
|
|
117
|
-
message.setBody(body)
|
|
118
|
-
return __sendMessage(message, online)
|
|
119
|
-
}
|
|
120
|
-
|
|
121
|
-
export const sendMessage = async (contentType, contentBody, online) => {
|
|
122
|
-
if (appConfig.get('messageEditor.getMessageHeaders')) {
|
|
123
|
-
return bridge.register('getMessageHeaders').then((headers) => _sendMessage(contentType, contentBody, online, headers))
|
|
124
|
-
} else {
|
|
125
|
-
const userId = await getCurrentAccountId()
|
|
126
|
-
const userInfo = await getUserInfoWithCache(userId)
|
|
127
|
-
return _sendMessage(contentType, contentBody, online,
|
|
128
|
-
{
|
|
129
|
-
'Content-Sender': {
|
|
130
|
-
user_id: userId,
|
|
131
|
-
nick_name: userInfo.real_name
|
|
132
|
-
}
|
|
133
|
-
})
|
|
134
|
-
}
|
|
135
|
-
}
|
|
136
|
-
|
|
137
|
-
export const getHistoryMessages = (id, limit) => imCoreChatroom.getHistoryMessages(transferStringToLong(id), limit)
|
|
138
|
-
.then((messages) => {
|
|
139
|
-
const items = reverse(formatMessages(messages.map((message) => transferLongToString(message))))
|
|
140
|
-
|
|
141
|
-
// items.forEach((message) => {
|
|
142
|
-
// const messageType = get(message, '_parsedContent.type')
|
|
143
|
-
// if ([C.MESSAGE_TYPE.CTL, C.MESSAGE_TYPE.NTF, C.MESSAGE_TYPE.TEL].some((type) => messageType === type)) {
|
|
144
|
-
// thirdParty.onPostMessage(thirdParty.EVENT.CMD, message)
|
|
145
|
-
// }
|
|
146
|
-
// })
|
|
147
|
-
|
|
148
|
-
const hasMore = items.length > 0 && items[0].id !== C.MIM_CONV_MSG_ID
|
|
149
|
-
if (appConfig.get('chatroomChatMessageList.filterMessages')) {
|
|
150
|
-
return bridge.register('filterMessages', {
|
|
151
|
-
type: 'history',
|
|
152
|
-
messages: items,
|
|
153
|
-
hasMore
|
|
154
|
-
})
|
|
155
|
-
}
|
|
156
|
-
return {
|
|
157
|
-
messages: items,
|
|
158
|
-
hasMore
|
|
159
|
-
}
|
|
160
|
-
})
|
|
161
|
-
|
|
162
|
-
export const subscribeOnlineStatus = () => imCoreChatroom.subscribeOnlineStatus()
|
|
163
|
-
|
|
164
|
-
export const recallMessage = (message) => {
|
|
165
|
-
if (appConfig.get('chatroomChatMessageList.getRecallMessageExtInfo')) {
|
|
166
|
-
return bridge.register('getRecallMessageExtInfo', message).then(
|
|
167
|
-
(extInfo) => imCoreChatroom.recallMessage({
|
|
168
|
-
time: transferStringToLong(message.time),
|
|
169
|
-
id: transferStringToLong(message.id)
|
|
170
|
-
}, extInfo)
|
|
171
|
-
)
|
|
172
|
-
} else {
|
|
173
|
-
return imCoreChatroom.recallMessage({
|
|
174
|
-
time: transferStringToLong(message.time),
|
|
175
|
-
id: transferStringToLong(message.id)
|
|
176
|
-
})
|
|
177
|
-
}
|
|
178
|
-
}
|
|
1
|
+
import IMCoreChatroom from '@ndim/chatroom'
|
|
2
|
+
import { reverse } from 'lodash'
|
|
3
|
+
|
|
4
|
+
import getUCInstance from '../uc'
|
|
5
|
+
import { getCurrentAccount, getCurrentAccountId } from '../../util/account'
|
|
6
|
+
import appConfig from '../../config/app'
|
|
7
|
+
import bridge from '../bridge'
|
|
8
|
+
import * as C from '../../constants'
|
|
9
|
+
|
|
10
|
+
import loadPlugins from './plugins'
|
|
11
|
+
import { imCoreOrigin, imCoreApiOrigin, ContentType, MessageTypeMap } from './constants'
|
|
12
|
+
import requestInterceptors from './interceptors/request'
|
|
13
|
+
import responseInterceptors from './interceptors/response'
|
|
14
|
+
import emitters from './emitters'
|
|
15
|
+
import { transferStringToLong, transferLongToString, formatMessages } from './util/format'
|
|
16
|
+
import getUserInfoWithCache from '../oms'
|
|
17
|
+
|
|
18
|
+
// eslint-disable-next-line import/no-mutable-exports
|
|
19
|
+
let imCoreChatroom = null
|
|
20
|
+
|
|
21
|
+
// eslint-disable-next-line import/prefer-default-export
|
|
22
|
+
export const initIMCoreChatroom = () => new Promise((resolve, reject) => getUCInstance().getTokenAsync().then((token) => {
|
|
23
|
+
loadPlugins(token, getCurrentAccount())
|
|
24
|
+
|
|
25
|
+
imCoreChatroom = new IMCoreChatroom({
|
|
26
|
+
server: { // webSocket 配置
|
|
27
|
+
wsUrl: appConfig.get('wsUrl') || imCoreOrigin, // IMCore 服务端 webSocket 服务器响应地址,必填
|
|
28
|
+
wsProtocols: '', // webSocket 子协议
|
|
29
|
+
apiHost: imCoreApiOrigin, // IMCoreApi 服务地址,必填
|
|
30
|
+
cachePrefix: appConfig.get('business')
|
|
31
|
+
},
|
|
32
|
+
autoAck: true, // 是否自动 ack 消息(即:是否自动通知服务端已接收到的最大的收件箱消息id),默认 false,选填
|
|
33
|
+
listenConversationChange: false, // 是否监听会话变更,若监听,会话变更后将更新会话已读游标等,默认 true,选填
|
|
34
|
+
messageCompletion: { // 消息补齐配置,选填
|
|
35
|
+
enable: false, // 是否开启
|
|
36
|
+
interval: 500, // 补齐频率,默认 500,单位,毫秒
|
|
37
|
+
untilAgo: 1 // 补齐多少天的消息,默认 15,单位,天
|
|
38
|
+
}
|
|
39
|
+
})
|
|
40
|
+
|
|
41
|
+
console.log('imCoreChatroom', imCoreChatroom)
|
|
42
|
+
|
|
43
|
+
// 设置请求拦截器
|
|
44
|
+
imCoreChatroom.request.instance.interceptors.request.use(...requestInterceptors)
|
|
45
|
+
imCoreChatroom.request.instance.interceptors.response.use(...responseInterceptors)
|
|
46
|
+
|
|
47
|
+
// 注册emitter事件
|
|
48
|
+
Object.keys(emitters).forEach((emitterName) => {
|
|
49
|
+
imCoreChatroom.emitter.on(emitterName, emitters[emitterName].bind(imCoreChatroom))
|
|
50
|
+
})
|
|
51
|
+
|
|
52
|
+
// 连接登录聊天室
|
|
53
|
+
imCoreChatroom.connect(getCurrentAccountId())
|
|
54
|
+
|
|
55
|
+
resolve(imCoreChatroom)
|
|
56
|
+
}).catch((error) => {
|
|
57
|
+
reject(error)
|
|
58
|
+
}))
|
|
59
|
+
|
|
60
|
+
export const getIMCoreChatroom = () => imCoreChatroom
|
|
61
|
+
|
|
62
|
+
export const reconnectIMCoreChatroom = () => {
|
|
63
|
+
imCoreChatroom.connect(getCurrentAccountId())
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
const __sendMessage = (message, online) => {
|
|
67
|
+
if (!online) {
|
|
68
|
+
return Promise.resolve(formatMessages([{
|
|
69
|
+
...message,
|
|
70
|
+
from: getCurrentAccountId(),
|
|
71
|
+
content: message.buildContent()
|
|
72
|
+
}])[0])
|
|
73
|
+
}
|
|
74
|
+
return imCoreChatroom.sendMessage({
|
|
75
|
+
time: null,
|
|
76
|
+
seq: null,
|
|
77
|
+
qos: 0,
|
|
78
|
+
resendFlag: 0,
|
|
79
|
+
convtype: 3,
|
|
80
|
+
buildContent: message.buildContent.bind(message)
|
|
81
|
+
}).then((res) => {
|
|
82
|
+
const data = transferLongToString(res)
|
|
83
|
+
return {
|
|
84
|
+
id: data.msgId,
|
|
85
|
+
seq: data.msgSeq,
|
|
86
|
+
time: data.msgTime,
|
|
87
|
+
_direction: 'up',
|
|
88
|
+
_localInfo: {
|
|
89
|
+
id: data.msgId,
|
|
90
|
+
index: 0
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
})
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
const _sendMessage = async (contentType, contentBody, online, headers) => {
|
|
97
|
+
const messageType = MessageTypeMap[contentType]
|
|
98
|
+
const message = new IMCoreChatroom.MessageConstructor[messageType]()
|
|
99
|
+
if (headers) {
|
|
100
|
+
message.setHeaders(headers)
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
if (contentType === ContentType.Text && contentBody.length > 500) {
|
|
104
|
+
let result
|
|
105
|
+
for (let i = 0; i < contentBody.length; i += 500) {
|
|
106
|
+
const body = contentBody.substring(i, i + 500)
|
|
107
|
+
message.setBody(body)
|
|
108
|
+
result = await __sendMessage(message, online)
|
|
109
|
+
}
|
|
110
|
+
return result
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
let body = contentBody
|
|
114
|
+
if (messageType === ContentType.Image) {
|
|
115
|
+
body = body.replace('fullimage', 'fullImage')
|
|
116
|
+
}
|
|
117
|
+
message.setBody(body)
|
|
118
|
+
return __sendMessage(message, online)
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
export const sendMessage = async (contentType, contentBody, online) => {
|
|
122
|
+
if (appConfig.get('messageEditor.getMessageHeaders')) {
|
|
123
|
+
return bridge.register('getMessageHeaders').then((headers) => _sendMessage(contentType, contentBody, online, headers))
|
|
124
|
+
} else {
|
|
125
|
+
const userId = await getCurrentAccountId()
|
|
126
|
+
const userInfo = await getUserInfoWithCache(userId)
|
|
127
|
+
return _sendMessage(contentType, contentBody, online,
|
|
128
|
+
{
|
|
129
|
+
'Content-Sender': {
|
|
130
|
+
user_id: userId,
|
|
131
|
+
nick_name: userInfo.real_name
|
|
132
|
+
}
|
|
133
|
+
})
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
|
|
137
|
+
export const getHistoryMessages = (id, limit) => imCoreChatroom.getHistoryMessages(transferStringToLong(id), limit)
|
|
138
|
+
.then((messages) => {
|
|
139
|
+
const items = reverse(formatMessages(messages.map((message) => transferLongToString(message))))
|
|
140
|
+
|
|
141
|
+
// items.forEach((message) => {
|
|
142
|
+
// const messageType = get(message, '_parsedContent.type')
|
|
143
|
+
// if ([C.MESSAGE_TYPE.CTL, C.MESSAGE_TYPE.NTF, C.MESSAGE_TYPE.TEL].some((type) => messageType === type)) {
|
|
144
|
+
// thirdParty.onPostMessage(thirdParty.EVENT.CMD, message)
|
|
145
|
+
// }
|
|
146
|
+
// })
|
|
147
|
+
|
|
148
|
+
const hasMore = items.length > 0 && items[0].id !== C.MIM_CONV_MSG_ID
|
|
149
|
+
if (appConfig.get('chatroomChatMessageList.filterMessages')) {
|
|
150
|
+
return bridge.register('filterMessages', {
|
|
151
|
+
type: 'history',
|
|
152
|
+
messages: items,
|
|
153
|
+
hasMore
|
|
154
|
+
})
|
|
155
|
+
}
|
|
156
|
+
return {
|
|
157
|
+
messages: items,
|
|
158
|
+
hasMore
|
|
159
|
+
}
|
|
160
|
+
})
|
|
161
|
+
|
|
162
|
+
export const subscribeOnlineStatus = () => imCoreChatroom.subscribeOnlineStatus()
|
|
163
|
+
|
|
164
|
+
export const recallMessage = (message) => {
|
|
165
|
+
if (appConfig.get('chatroomChatMessageList.getRecallMessageExtInfo')) {
|
|
166
|
+
return bridge.register('getRecallMessageExtInfo', message).then(
|
|
167
|
+
(extInfo) => imCoreChatroom.recallMessage({
|
|
168
|
+
time: transferStringToLong(message.time),
|
|
169
|
+
id: transferStringToLong(message.id)
|
|
170
|
+
}, extInfo)
|
|
171
|
+
)
|
|
172
|
+
} else {
|
|
173
|
+
return imCoreChatroom.recallMessage({
|
|
174
|
+
time: transferStringToLong(message.time),
|
|
175
|
+
id: transferStringToLong(message.id)
|
|
176
|
+
})
|
|
177
|
+
}
|
|
178
|
+
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import imCoreApiRequestConfig from '../../../config/request/config/imCoreApi'
|
|
2
|
-
|
|
3
|
-
// 添加请求拦截器
|
|
4
|
-
export default [
|
|
5
|
-
imCoreApiRequestConfig.interceptors.request,
|
|
6
|
-
(error) => Promise.reject(error)
|
|
7
|
-
]
|
|
1
|
+
import imCoreApiRequestConfig from '../../../config/request/config/imCoreApi'
|
|
2
|
+
|
|
3
|
+
// 添加请求拦截器
|
|
4
|
+
export default [
|
|
5
|
+
imCoreApiRequestConfig.interceptors.request,
|
|
6
|
+
(error) => Promise.reject(error)
|
|
7
|
+
]
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
// 添加响应拦截器
|
|
2
|
-
export default [
|
|
3
|
-
(response) => response,
|
|
4
|
-
(error) => Promise.reject(error)
|
|
5
|
-
]
|
|
1
|
+
// 添加响应拦截器
|
|
2
|
+
export default [
|
|
3
|
+
(response) => response,
|
|
4
|
+
(error) => Promise.reject(error)
|
|
5
|
+
]
|