Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
I
im-common
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
陈永峰
im-common
Commits
4b378a0b
Unverified
Commit
4b378a0b
authored
Jul 31, 2021
by
Yang Libin
Committed by
GitHub
Jul 31, 2021
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
feat(member): implement member api (#13)
parent
8eb0d5ff
Hide whitespace changes
Inline
Side-by-side
Showing
22 changed files
with
591 additions
and
17 deletions
+591
-17
README.md
README.md
+12
-12
IMClient.java
src/main/java/com/qcloud/im/IMClient.java
+2
-0
Member.java
src/main/java/com/qcloud/im/core/Member.java
+93
-0
IMAddTagRequest.java
...ain/java/com/qcloud/im/model/request/IMAddTagRequest.java
+25
-0
IMGetAttrNameRequest.java
...ava/com/qcloud/im/model/request/IMGetAttrNameRequest.java
+12
-0
IMGetAttrRequest.java
...in/java/com/qcloud/im/model/request/IMGetAttrRequest.java
+24
-0
IMGetTagRequest.java
...ain/java/com/qcloud/im/model/request/IMGetTagRequest.java
+24
-0
IMPushRequest.java
src/main/java/com/qcloud/im/model/request/IMPushRequest.java
+81
-0
IMRemoveAllTagsRequest.java
...a/com/qcloud/im/model/request/IMRemoveAllTagsRequest.java
+24
-0
IMRemoveAttrRequest.java
...java/com/qcloud/im/model/request/IMRemoveAttrRequest.java
+25
-0
IMRemoveTagRequest.java
.../java/com/qcloud/im/model/request/IMRemoveTagRequest.java
+25
-0
IMSetAttrNameRequest.java
...ava/com/qcloud/im/model/request/IMSetAttrNameRequest.java
+24
-0
IMSetAttrRequest.java
...in/java/com/qcloud/im/model/request/IMSetAttrRequest.java
+25
-0
PortraitGetRequest.java
.../java/com/qcloud/im/model/request/PortraitGetRequest.java
+2
-0
SetNoSpeakingRequest.java
...ava/com/qcloud/im/model/request/SetNoSpeakingRequest.java
+2
-0
IMGetAttrNameResult.java
...ava/com/qcloud/im/model/response/IMGetAttrNameResult.java
+10
-3
IMGetAttrResult.java
...in/java/com/qcloud/im/model/response/IMGetAttrResult.java
+7
-0
IMPushResult.java
src/main/java/com/qcloud/im/model/response/IMPushResult.java
+8
-1
IMRemoveAllTagsResult.java
...a/com/qcloud/im/model/response/IMRemoveAllTagsResult.java
+1
-1
UserAttrItem.java
src/main/java/com/qcloud/im/model/response/UserAttrItem.java
+8
-0
UserTagItem.java
src/main/java/com/qcloud/im/model/response/UserTagItem.java
+8
-0
MemberTest.java
src/test/java/com/qcloud/im/MemberTest.java
+149
-0
No files found.
README.md
View file @
4b378a0b
...
...
@@ -25,16 +25,16 @@
### 3. 全员推送
-
[
]
全员推送
-
[
]
设置应用属性名称
-
[
]
获取应用属性名称
-
[
]
获取用户属性
-
[
]
设置用户属性
-
[
]
删除用户属性
-
[
]
获取用户标签
-
[
]
添加用户标签
-
[
]
删除用户标签
-
[
]
删除用户所有标签
-
[
x
]
全员推送
-
[
x
]
设置应用属性名称
-
[
x
]
获取应用属性名称
-
[
x
]
获取用户属性
-
[
x
]
设置用户属性
-
[
x
]
删除用户属性
-
[
x
]
获取用户标签
-
[
x
]
添加用户标签
-
[
x
]
删除用户标签
-
[
x
]
删除用户所有标签
### 4. 资料管理
...
...
@@ -88,8 +88,8 @@
### 7. 全局禁言管理
-
[
]
设置全局禁言
-
[
]
查询全局禁言
-
[
x
]
设置全局禁言
-
[
x
]
查询全局禁言
### 8. 运营管理
...
...
src/main/java/com/qcloud/im/IMClient.java
View file @
4b378a0b
...
...
@@ -19,6 +19,7 @@ public class IMClient {
*/
public
Account
account
;
public
Message
message
;
public
Member
member
;
public
Profile
profile
;
public
SNS
sns
;
public
Operation
operation
;
...
...
@@ -52,6 +53,7 @@ public class IMClient {
this
.
userSig
=
SigUtil
.
genUserSig
(
sdkAppId
,
key
,
userId
,
expire
);
account
=
new
Account
(
this
);
message
=
new
Message
(
this
);
member
=
new
Member
(
this
);
profile
=
new
Profile
(
this
);
operation
=
new
Operation
(
this
);
sns
=
new
SNS
(
this
);
...
...
src/main/java/com/qcloud/im/core/Member.java
0 → 100644
View file @
4b378a0b
package
com
.
qcloud
.
im
.
core
;
import
com.qcloud.im.IMClient
;
import
com.qcloud.im.model.request.*
;
import
com.qcloud.im.model.response.*
;
import
com.qcloud.im.util.HttpUtil
;
import
com.qcloud.im.util.JsonUtil
;
import
java.io.IOException
;
/**
* @author bingo
* @since 2021/7/31 16:19
*/
public
class
Member
{
private
static
final
String
SERVICE_NAME
=
"all_member_push"
;
private
static
final
String
IM_PUSH_COMMAND
=
"im_push"
;
private
static
final
String
IM_SET_ATTR_NAME_COMMAND
=
"im_set_attr_name"
;
private
static
final
String
IM_GET_ATTR_NAME_COMMAND
=
"im_get_attr_name"
;
private
static
final
String
IM_GET_ATTR_COMMAND
=
"im_get_attr"
;
private
static
final
String
IM_SET_ATTR_COMMAND
=
"im_set_attr"
;
private
static
final
String
IM_REMOVE_ATTR_COMMAND
=
"im_remove_attr"
;
private
static
final
String
IM_GET_TAG_COMMAND
=
"im_get_tag"
;
private
static
final
String
IM_ADD_TAG_COMMAND
=
"im_add_tag"
;
private
static
final
String
IM_REMOVE_TAG_COMMAND
=
"im_remove_tag"
;
private
static
final
String
IM_REMOVE_ALL_TAGS_COMMAND
=
"im_remove_all_tags"
;
private
final
IMClient
imClient
;
public
Member
(
IMClient
imClient
)
{
this
.
imClient
=
imClient
;
}
public
IMPushResult
imPush
(
IMPushRequest
imPushRequest
)
throws
IOException
{
String
url
=
imClient
.
getUrl
(
SERVICE_NAME
,
IM_PUSH_COMMAND
);
String
result
=
HttpUtil
.
post
(
url
,
JsonUtil
.
obj2Str
(
imPushRequest
),
null
);
return
JsonUtil
.
str2Obj
(
result
,
IMPushResult
.
class
);
}
public
IMSetAttrNameResult
imSetAttrName
(
IMSetAttrNameRequest
imSetAttrNameRequest
)
throws
IOException
{
String
url
=
imClient
.
getUrl
(
SERVICE_NAME
,
IM_SET_ATTR_NAME_COMMAND
);
String
result
=
HttpUtil
.
post
(
url
,
JsonUtil
.
obj2Str
(
imSetAttrNameRequest
),
null
);
return
JsonUtil
.
str2Obj
(
result
,
IMSetAttrNameResult
.
class
);
}
public
IMGetAttrNameResult
imGetAttrName
(
IMGetAttrNameRequest
imGetAttrNameRequest
)
throws
IOException
{
String
url
=
imClient
.
getUrl
(
SERVICE_NAME
,
IM_GET_ATTR_NAME_COMMAND
);
String
result
=
HttpUtil
.
post
(
url
,
JsonUtil
.
obj2Str
(
imGetAttrNameRequest
),
null
);
return
JsonUtil
.
str2Obj
(
result
,
IMGetAttrNameResult
.
class
);
}
public
IMGetAttrResult
imGetAttr
(
IMGetAttrRequest
imGetAttrRequest
)
throws
IOException
{
String
url
=
imClient
.
getUrl
(
SERVICE_NAME
,
IM_GET_ATTR_COMMAND
);
String
result
=
HttpUtil
.
post
(
url
,
JsonUtil
.
obj2Str
(
imGetAttrRequest
),
null
);
return
JsonUtil
.
str2Obj
(
result
,
IMGetAttrResult
.
class
);
}
public
IMSetAttrResult
imSetAttr
(
IMSetAttrRequest
imSetAttrRequest
)
throws
IOException
{
String
url
=
imClient
.
getUrl
(
SERVICE_NAME
,
IM_SET_ATTR_COMMAND
);
String
result
=
HttpUtil
.
post
(
url
,
JsonUtil
.
obj2Str
(
imSetAttrRequest
),
null
);
return
JsonUtil
.
str2Obj
(
result
,
IMSetAttrResult
.
class
);
}
public
IMRemoveAttrResult
imRemoveAttr
(
IMRemoveAttrRequest
imRemoveAttrRequest
)
throws
IOException
{
String
url
=
imClient
.
getUrl
(
SERVICE_NAME
,
IM_REMOVE_ATTR_COMMAND
);
String
result
=
HttpUtil
.
post
(
url
,
JsonUtil
.
obj2Str
(
imRemoveAttrRequest
),
null
);
return
JsonUtil
.
str2Obj
(
result
,
IMRemoveAttrResult
.
class
);
}
public
IMGetTagResult
imGetTag
(
IMGetTagRequest
imGetTagRequest
)
throws
IOException
{
String
url
=
imClient
.
getUrl
(
SERVICE_NAME
,
IM_GET_TAG_COMMAND
);
String
result
=
HttpUtil
.
post
(
url
,
JsonUtil
.
obj2Str
(
imGetTagRequest
),
null
);
return
JsonUtil
.
str2Obj
(
result
,
IMGetTagResult
.
class
);
}
public
IMAddTagResult
imAddTag
(
IMAddTagRequest
imAddTagRequest
)
throws
IOException
{
String
url
=
imClient
.
getUrl
(
SERVICE_NAME
,
IM_ADD_TAG_COMMAND
);
String
result
=
HttpUtil
.
post
(
url
,
JsonUtil
.
obj2Str
(
imAddTagRequest
),
null
);
return
JsonUtil
.
str2Obj
(
result
,
IMAddTagResult
.
class
);
}
public
IMRemoveTagResult
imRemoveTag
(
IMRemoveTagRequest
imRemoveTagRequest
)
throws
IOException
{
String
url
=
imClient
.
getUrl
(
SERVICE_NAME
,
IM_REMOVE_TAG_COMMAND
);
String
result
=
HttpUtil
.
post
(
url
,
JsonUtil
.
obj2Str
(
imRemoveTagRequest
),
null
);
return
JsonUtil
.
str2Obj
(
result
,
IMRemoveTagResult
.
class
);
}
public
IMRemoveAllTagsResult
imRemoveAllTags
(
IMRemoveAllTagsRequest
imRemoveAllTagsRequest
)
throws
IOException
{
String
url
=
imClient
.
getUrl
(
SERVICE_NAME
,
IM_REMOVE_ALL_TAGS_COMMAND
);
String
result
=
HttpUtil
.
post
(
url
,
JsonUtil
.
obj2Str
(
imRemoveAllTagsRequest
),
null
);
return
JsonUtil
.
str2Obj
(
result
,
IMRemoveAllTagsResult
.
class
);
}
}
src/main/java/com/qcloud/im/model/request/IMAddTagRequest.java
0 → 100644
View file @
4b378a0b
package
com
.
qcloud
.
im
.
model
.
request
;
import
com.fasterxml.jackson.annotation.JsonInclude
;
import
com.fasterxml.jackson.annotation.JsonProperty
;
import
com.qcloud.im.model.response.UserTagItem
;
import
java.util.List
;
/**
* @author bingo
* @since 2021/7/31 17:05
*/
@JsonInclude
(
JsonInclude
.
Include
.
NON_NULL
)
public
class
IMAddTagRequest
extends
GenericRequest
{
@JsonProperty
(
"UserTags"
)
private
List
<
UserTagItem
>
userTags
;
public
List
<
UserTagItem
>
getUserTags
()
{
return
userTags
;
}
public
void
setUserTags
(
List
<
UserTagItem
>
userTags
)
{
this
.
userTags
=
userTags
;
}
}
src/main/java/com/qcloud/im/model/request/IMGetAttrNameRequest.java
0 → 100644
View file @
4b378a0b
package
com
.
qcloud
.
im
.
model
.
request
;
import
com.fasterxml.jackson.annotation.JsonInclude
;
/**
* @author bingo
* @since 2021/7/31 16:47
*/
@JsonInclude
(
JsonInclude
.
Include
.
NON_NULL
)
public
class
IMGetAttrNameRequest
extends
GenericRequest
{
}
src/main/java/com/qcloud/im/model/request/IMGetAttrRequest.java
0 → 100644
View file @
4b378a0b
package
com
.
qcloud
.
im
.
model
.
request
;
import
com.fasterxml.jackson.annotation.JsonInclude
;
import
com.fasterxml.jackson.annotation.JsonProperty
;
import
java.util.List
;
/**
* @author bingo
* @since 2021/7/31 16:50
*/
@JsonInclude
(
JsonInclude
.
Include
.
NON_NULL
)
public
class
IMGetAttrRequest
extends
GenericRequest
{
@JsonProperty
(
"To_Account"
)
private
List
<
String
>
toAccount
;
public
List
<
String
>
getToAccount
()
{
return
toAccount
;
}
public
void
setToAccount
(
List
<
String
>
toAccount
)
{
this
.
toAccount
=
toAccount
;
}
}
src/main/java/com/qcloud/im/model/request/IMGetTagRequest.java
0 → 100644
View file @
4b378a0b
package
com
.
qcloud
.
im
.
model
.
request
;
import
com.fasterxml.jackson.annotation.JsonInclude
;
import
com.fasterxml.jackson.annotation.JsonProperty
;
import
java.util.List
;
/**
* @author bingo
* @since 2021/7/31 17:03
*/
@JsonInclude
(
JsonInclude
.
Include
.
NON_NULL
)
public
class
IMGetTagRequest
extends
GenericRequest
{
@JsonProperty
(
"To_Account"
)
private
List
<
String
>
toAccount
;
public
List
<
String
>
getToAccount
()
{
return
toAccount
;
}
public
void
setToAccount
(
List
<
String
>
toAccount
)
{
this
.
toAccount
=
toAccount
;
}
}
src/main/java/com/qcloud/im/model/request/IMPushRequest.java
0 → 100644
View file @
4b378a0b
package
com
.
qcloud
.
im
.
model
.
request
;
import
com.fasterxml.jackson.annotation.JsonInclude
;
import
com.fasterxml.jackson.annotation.JsonProperty
;
import
com.qcloud.im.model.response.MsgBodyItem
;
import
java.util.List
;
import
java.util.Map
;
/**
* @author bingo
* @since 2021/7/31 16:27
*/
@JsonInclude
(
JsonInclude
.
Include
.
NON_NULL
)
public
class
IMPushRequest
extends
GenericRequest
{
@JsonProperty
(
"Condition"
)
private
Map
<
String
,
Object
>
condition
;
@JsonProperty
(
"MsgRandom"
)
private
Integer
msgRandom
;
@JsonProperty
(
"MsgBody"
)
private
List
<
MsgBodyItem
>
msgBody
;
@JsonProperty
(
"MsgLifeTime"
)
private
Integer
msgLifeTime
;
@JsonProperty
(
"From_Account"
)
private
String
fromAccount
;
@JsonProperty
(
"OfflinePushInfo"
)
private
OfflinePushInfo
offlinePushInfo
;
public
Map
<
String
,
Object
>
getCondition
()
{
return
condition
;
}
public
void
setCondition
(
Map
<
String
,
Object
>
condition
)
{
this
.
condition
=
condition
;
}
public
Integer
getMsgRandom
()
{
return
msgRandom
;
}
public
void
setMsgRandom
(
Integer
msgRandom
)
{
this
.
msgRandom
=
msgRandom
;
}
public
List
<
MsgBodyItem
>
getMsgBody
()
{
return
msgBody
;
}
public
void
setMsgBody
(
List
<
MsgBodyItem
>
msgBody
)
{
this
.
msgBody
=
msgBody
;
}
public
Integer
getMsgLifeTime
()
{
return
msgLifeTime
;
}
public
void
setMsgLifeTime
(
Integer
msgLifeTime
)
{
this
.
msgLifeTime
=
msgLifeTime
;
}
public
String
getFromAccount
()
{
return
fromAccount
;
}
public
void
setFromAccount
(
String
fromAccount
)
{
this
.
fromAccount
=
fromAccount
;
}
public
OfflinePushInfo
getOfflinePushInfo
()
{
return
offlinePushInfo
;
}
public
void
setOfflinePushInfo
(
OfflinePushInfo
offlinePushInfo
)
{
this
.
offlinePushInfo
=
offlinePushInfo
;
}
}
src/main/java/com/qcloud/im/model/request/IMRemoveAllTagsRequest.java
0 → 100644
View file @
4b378a0b
package
com
.
qcloud
.
im
.
model
.
request
;
import
com.fasterxml.jackson.annotation.JsonInclude
;
import
com.fasterxml.jackson.annotation.JsonProperty
;
import
java.util.List
;
/**
* @author bingo
* @since 2021/7/31 17:08
*/
@JsonInclude
(
JsonInclude
.
Include
.
NON_NULL
)
public
class
IMRemoveAllTagsRequest
extends
GenericRequest
{
@JsonProperty
(
"To_Account"
)
private
List
<
String
>
toAccount
;
public
List
<
String
>
getToAccount
()
{
return
toAccount
;
}
public
void
setToAccount
(
List
<
String
>
toAccount
)
{
this
.
toAccount
=
toAccount
;
}
}
src/main/java/com/qcloud/im/model/request/IMRemoveAttrRequest.java
0 → 100644
View file @
4b378a0b
package
com
.
qcloud
.
im
.
model
.
request
;
import
com.fasterxml.jackson.annotation.JsonInclude
;
import
com.fasterxml.jackson.annotation.JsonProperty
;
import
com.qcloud.im.model.response.UserAttrItem
;
import
java.util.List
;
/**
* @author bingo
* @since 2021/7/31 17:01
*/
@JsonInclude
(
JsonInclude
.
Include
.
NON_NULL
)
public
class
IMRemoveAttrRequest
extends
GenericRequest
{
@JsonProperty
(
"UserAttrs"
)
private
List
<
UserAttrItem
>
userAttrs
;
public
List
<
UserAttrItem
>
getUserAttrs
()
{
return
userAttrs
;
}
public
void
setUserAttrs
(
List
<
UserAttrItem
>
userAttrs
)
{
this
.
userAttrs
=
userAttrs
;
}
}
src/main/java/com/qcloud/im/model/request/IMRemoveTagRequest.java
0 → 100644
View file @
4b378a0b
package
com
.
qcloud
.
im
.
model
.
request
;
import
com.fasterxml.jackson.annotation.JsonInclude
;
import
com.fasterxml.jackson.annotation.JsonProperty
;
import
com.qcloud.im.model.response.UserTagItem
;
import
java.util.List
;
/**
* @author bingo
* @since 2021/7/31 17:07
*/
@JsonInclude
(
JsonInclude
.
Include
.
NON_NULL
)
public
class
IMRemoveTagRequest
extends
GenericRequest
{
@JsonProperty
(
"UserTags"
)
private
List
<
UserTagItem
>
userTags
;
public
List
<
UserTagItem
>
getUserTags
()
{
return
userTags
;
}
public
void
setUserTags
(
List
<
UserTagItem
>
userTags
)
{
this
.
userTags
=
userTags
;
}
}
src/main/java/com/qcloud/im/model/request/IMSetAttrNameRequest.java
0 → 100644
View file @
4b378a0b
package
com
.
qcloud
.
im
.
model
.
request
;
import
com.fasterxml.jackson.annotation.JsonInclude
;
import
com.fasterxml.jackson.annotation.JsonProperty
;
import
java.util.Map
;
/**
* @author bingo
* @since 2021/7/31 17:14
*/
@JsonInclude
(
JsonInclude
.
Include
.
NON_NULL
)
public
class
IMSetAttrNameRequest
extends
GenericRequest
{
@JsonProperty
(
"AttrNames"
)
private
Map
<
String
,
String
>
attrNames
;
public
Map
<
String
,
String
>
getAttrNames
()
{
return
attrNames
;
}
public
void
setAttrNames
(
Map
<
String
,
String
>
attrNames
)
{
this
.
attrNames
=
attrNames
;
}
}
src/main/java/com/qcloud/im/model/request/IMSetAttrRequest.java
0 → 100644
View file @
4b378a0b
package
com
.
qcloud
.
im
.
model
.
request
;
import
com.fasterxml.jackson.annotation.JsonInclude
;
import
com.fasterxml.jackson.annotation.JsonProperty
;
import
com.qcloud.im.model.response.UserAttrItem
;
import
java.util.List
;
/**
* @author bingo
* @since 2021/7/31 16:58
*/
@JsonInclude
(
JsonInclude
.
Include
.
NON_NULL
)
public
class
IMSetAttrRequest
extends
GenericRequest
{
@JsonProperty
(
"UserAttrs"
)
List
<
UserAttrItem
>
userAttrs
;
public
List
<
UserAttrItem
>
getUserAttrs
()
{
return
userAttrs
;
}
public
void
setUserAttrs
(
List
<
UserAttrItem
>
userAttrs
)
{
this
.
userAttrs
=
userAttrs
;
}
}
src/main/java/com/qcloud/im/model/request/PortraitGetRequest.java
View file @
4b378a0b
package
com
.
qcloud
.
im
.
model
.
request
;
import
com.fasterxml.jackson.annotation.JsonInclude
;
import
com.fasterxml.jackson.annotation.JsonProperty
;
import
java.util.List
;
...
...
@@ -8,6 +9,7 @@ import java.util.List;
* @author hyh
* @since 2021/07/31 10:39
*/
@JsonInclude
(
JsonInclude
.
Include
.
NON_NULL
)
public
class
PortraitGetRequest
extends
GenericRequest
{
@JsonProperty
(
"To_Account"
)
private
List
<
String
>
toAccount
;
...
...
src/main/java/com/qcloud/im/model/request/SetNoSpeakingRequest.java
View file @
4b378a0b
package
com
.
qcloud
.
im
.
model
.
request
;
import
com.fasterxml.jackson.annotation.JsonInclude
;
import
com.fasterxml.jackson.annotation.JsonProperty
;
/**
* @author xy
* @since 2021/07/31 11:39
*/
@JsonInclude
(
JsonInclude
.
Include
.
NON_NULL
)
public
class
SetNoSpeakingRequest
extends
GenericRequest
{
@JsonProperty
(
"Set_Account"
)
private
String
setAccount
;
...
...
src/main/java/com/qcloud/im/model/response/IMGetAttrNameResult.java
View file @
4b378a0b
...
...
@@ -10,15 +10,22 @@ import java.util.Map;
*/
public
class
IMGetAttrNameResult
extends
GenericResult
{
@JsonProperty
(
"AttrNames"
)
private
Map
<
String
,
String
>
attrNames
;
private
Map
<
String
,
Object
>
attrNames
;
public
Map
<
String
,
String
>
getAttrNames
()
{
public
Map
<
String
,
Object
>
getAttrNames
()
{
return
attrNames
;
}
public
void
setAttrNames
(
Map
<
String
,
String
>
attrNames
)
{
public
void
setAttrNames
(
Map
<
String
,
Object
>
attrNames
)
{
this
.
attrNames
=
attrNames
;
}
@Override
public
String
toString
()
{
return
"IMGetAttrNameResult{"
+
"attrNames="
+
attrNames
+
'}'
;
}
}
src/main/java/com/qcloud/im/model/response/IMGetAttrResult.java
View file @
4b378a0b
...
...
@@ -19,4 +19,11 @@ public class IMGetAttrResult extends GenericResult {
public
void
setUserAttrs
(
List
<
UserAttrItem
>
userAttrs
)
{
this
.
userAttrs
=
userAttrs
;
}
@Override
public
String
toString
()
{
return
"IMGetAttrResult{"
+
"userAttrs="
+
userAttrs
+
'}'
;
}
}
src/main/java/com/qcloud/im/model/response/IMPushResult.java
View file @
4b378a0b
...
...
@@ -6,7 +6,7 @@ import com.fasterxml.jackson.annotation.JsonProperty;
* @author hyh
* @since 2021/07/30 11:20
*/
public
class
IMPushResult
extends
GenericResult
{
public
class
IMPushResult
extends
GenericResult
{
@JsonProperty
(
"TaskId"
)
private
String
taskId
;
...
...
@@ -17,4 +17,11 @@ public class IMPushResult extends GenericResult{
public
void
setTaskId
(
String
taskId
)
{
this
.
taskId
=
taskId
;
}
@Override
public
String
toString
()
{
return
"IMPushResult{"
+
"taskId='"
+
taskId
+
'\''
+
'}'
;
}
}
src/main/java/com/qcloud/im/model/response/IMRemoveAllTags.java
→
src/main/java/com/qcloud/im/model/response/IMRemoveAllTags
Result
.java
View file @
4b378a0b
...
...
@@ -4,5 +4,5 @@ package com.qcloud.im.model.response;
* @author hyh
* @since 2021/07/30 14:28
*/
public
class
IMRemoveAllTags
extends
GenericResult
{
public
class
IMRemoveAllTags
Result
extends
GenericResult
{
}
src/main/java/com/qcloud/im/model/response/UserAttrItem.java
View file @
4b378a0b
...
...
@@ -30,4 +30,12 @@ public class UserAttrItem {
public
void
setAttrs
(
Map
<
String
,
Object
>
attrs
)
{
this
.
attrs
=
attrs
;
}
@Override
public
String
toString
()
{
return
"UserAttrItem{"
+
"toAccount='"
+
toAccount
+
'\''
+
", attrs="
+
attrs
+
'}'
;
}
}
src/main/java/com/qcloud/im/model/response/UserTagItem.java
View file @
4b378a0b
...
...
@@ -30,4 +30,12 @@ public class UserTagItem {
public
void
setTags
(
List
<
String
>
tags
)
{
this
.
tags
=
tags
;
}
@Override
public
String
toString
()
{
return
"UserTagItem{"
+
"toAccount='"
+
toAccount
+
'\''
+
", tags="
+
tags
+
'}'
;
}
}
src/test/java/com/qcloud/im/MemberTest.java
0 → 100644
View file @
4b378a0b
package
com
.
qcloud
.
im
;
import
com.qcloud.im.model.request.*
;
import
com.qcloud.im.model.response.*
;
import
org.junit.Assert
;
import
org.junit.Test
;
import
java.io.IOException
;
import
java.io.InputStream
;
import
java.util.*
;
/**
* @author bingo
* @since 2021/7/31 17:22
*/
public
class
MemberTest
{
private
static
final
Properties
properties
=
new
Properties
();
private
static
final
IMClient
client
;
static
{
InputStream
resourceAsStream
=
AccountTest
.
class
.
getClassLoader
().
getResourceAsStream
(
"app.properties"
);
try
{
properties
.
load
(
resourceAsStream
);
}
catch
(
IOException
e
)
{
e
.
printStackTrace
();
}
String
key
=
properties
.
getProperty
(
"key"
);
String
identifier
=
properties
.
getProperty
(
"identifier"
);
Long
appId
=
Long
.
parseLong
(
properties
.
getProperty
(
"appId"
));
client
=
IMClient
.
getInstance
(
appId
,
identifier
,
key
);
}
@Test
public
void
testImPush
()
throws
IOException
{
IMPushRequest
request
=
new
IMPushRequest
();
request
.
setFromAccount
(
"admin"
);
request
.
setMsgRandom
(
9312457
);
request
.
setMsgLifeTime
(
120
);
MsgBodyItem
item
=
new
MsgBodyItem
();
MsgContentItem
contentItem
=
new
MsgContentItem
();
contentItem
.
setText
(
"hi, beauty"
);
item
.
setMsgContent
(
contentItem
);
request
.
setMsgBody
(
Collections
.
singletonList
(
item
));
IMPushResult
result
=
client
.
member
.
imPush
(
request
);
System
.
out
.
println
(
result
);
Assert
.
assertEquals
(
"OK"
,
result
.
getActionStatus
());
}
@Test
public
void
testImSetAttrName
()
throws
IOException
{
IMSetAttrNameRequest
request
=
new
IMSetAttrNameRequest
();
Map
<
String
,
String
>
attrNames
=
new
HashMap
<>(
3
);
attrNames
.
put
(
"0"
,
"sex"
);
attrNames
.
put
(
"1"
,
"city"
);
attrNames
.
put
(
"2"
,
"country"
);
request
.
setAttrNames
(
attrNames
);
IMSetAttrNameResult
result
=
client
.
member
.
imSetAttrName
(
request
);
System
.
out
.
println
(
result
);
Assert
.
assertEquals
(
"OK"
,
result
.
getActionStatus
());
}
@Test
public
void
testImGetAttrName
()
throws
IOException
{
IMGetAttrNameRequest
request
=
new
IMGetAttrNameRequest
();
IMGetAttrNameResult
result
=
client
.
member
.
imGetAttrName
(
request
);
System
.
out
.
println
(
result
);
Assert
.
assertEquals
(
"OK"
,
result
.
getActionStatus
());
}
@Test
public
void
testImGetAttr
()
throws
IOException
{
IMGetAttrRequest
request
=
new
IMGetAttrRequest
();
request
.
setToAccount
(
Arrays
.
asList
(
"test1"
,
"test2"
));
IMGetAttrResult
result
=
client
.
member
.
imGetAttr
(
request
);
System
.
out
.
println
(
result
);
Assert
.
assertEquals
(
"OK"
,
result
.
getActionStatus
());
}
@Test
public
void
testImSetAttr
()
throws
IOException
{
IMSetAttrRequest
request
=
new
IMSetAttrRequest
();
UserAttrItem
item
=
new
UserAttrItem
();
Map
<
String
,
Object
>
attrs
=
new
HashMap
<>();
attrs
.
put
(
"sex"
,
"attr1"
);
attrs
.
put
(
"city"
,
"attr2"
);
item
.
setAttrs
(
attrs
);
item
.
setToAccount
(
"test1"
);
request
.
setUserAttrs
(
Collections
.
singletonList
(
item
));
IMSetAttrResult
result
=
client
.
member
.
imSetAttr
(
request
);
System
.
out
.
println
(
result
);
Assert
.
assertEquals
(
"OK"
,
result
.
getActionStatus
());
}
@Test
public
void
testImRemoveAttr
()
throws
IOException
{
IMRemoveAttrRequest
request
=
new
IMRemoveAttrRequest
();
UserAttrItem
item
=
new
UserAttrItem
();
Map
<
String
,
Object
>
attrs
=
new
HashMap
<>();
attrs
.
put
(
"sex"
,
"attr1"
);
attrs
.
put
(
"city"
,
"attr2"
);
item
.
setAttrs
(
attrs
);
request
.
setUserAttrs
(
Collections
.
singletonList
(
item
));
IMRemoveAttrResult
result
=
client
.
member
.
imRemoveAttr
(
request
);
System
.
out
.
println
(
result
);
Assert
.
assertEquals
(
"OK"
,
result
.
getActionStatus
());
}
@Test
public
void
testImGetTag
()
throws
IOException
{
IMGetTagRequest
request
=
new
IMGetTagRequest
();
request
.
setToAccount
(
Arrays
.
asList
(
"test1"
,
"test2"
));
IMGetTagResult
result
=
client
.
member
.
imGetTag
(
request
);
System
.
out
.
println
(
result
);
Assert
.
assertEquals
(
"OK"
,
result
.
getActionStatus
());
}
@Test
public
void
testImAddTag
()
throws
IOException
{
IMAddTagRequest
request
=
new
IMAddTagRequest
();
UserTagItem
item
=
new
UserTagItem
();
item
.
setTags
(
Arrays
.
asList
(
"a"
,
"b"
));
item
.
setToAccount
(
"test1"
);
request
.
setUserTags
(
Collections
.
singletonList
(
item
));
IMAddTagResult
result
=
client
.
member
.
imAddTag
(
request
);
System
.
out
.
println
(
result
);
Assert
.
assertEquals
(
"OK"
,
result
.
getActionStatus
());
}
@Test
public
void
testImRemoveTag
()
throws
IOException
{
IMRemoveTagRequest
request
=
new
IMRemoveTagRequest
();
UserTagItem
item
=
new
UserTagItem
();
item
.
setTags
(
Arrays
.
asList
(
"a"
,
"b"
));
item
.
setToAccount
(
"test1"
);
request
.
setUserTags
(
Collections
.
singletonList
(
item
));
IMRemoveTagResult
result
=
client
.
member
.
imRemoveTag
(
request
);
System
.
out
.
println
(
result
);
Assert
.
assertEquals
(
"OK"
,
result
.
getActionStatus
());
}
@Test
public
void
testImRemoveAllTags
()
throws
IOException
{
IMRemoveAllTagsRequest
request
=
new
IMRemoveAllTagsRequest
();
request
.
setToAccount
(
Arrays
.
asList
(
"test1"
,
"test2"
));
IMRemoveAllTagsResult
result
=
client
.
member
.
imRemoveAllTags
(
request
);
System
.
out
.
println
(
result
);
Assert
.
assertEquals
(
"OK"
,
result
.
getActionStatus
());
}
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment