mirror of
https://github.com/openimsdk/open-im-server.git
synced 2025-12-08 21:47:17 +08:00
feat: add openim config ete code
Signed-off-by: Xinwei Xiong(cubxxw) <3293172751nss@gmail.com>
This commit is contained in:
parent
5e332fcf06
commit
7c11e722d2
@ -1 +0,0 @@
|
|||||||
.keep
|
|
||||||
@ -1,7 +1,10 @@
|
|||||||
package user
|
package user
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
"fmt"
|
||||||
|
|
||||||
gettoken "github.com/openimsdk/open-im-server/v3/test/e2e/api/token"
|
gettoken "github.com/openimsdk/open-im-server/v3/test/e2e/api/token"
|
||||||
|
"github.com/openimsdk/open-im-server/v3/test/e2e/framework/config"
|
||||||
)
|
)
|
||||||
|
|
||||||
// UserInfoRequest represents a request to get or update user information
|
// UserInfoRequest represents a request to get or update user information
|
||||||
@ -17,14 +20,20 @@ type GetUsersOnlineStatusRequest struct {
|
|||||||
|
|
||||||
// GetUsersInfo retrieves detailed information for a list of user IDs
|
// GetUsersInfo retrieves detailed information for a list of user IDs
|
||||||
func GetUsersInfo(token string, userIDs []string) error {
|
func GetUsersInfo(token string, userIDs []string) error {
|
||||||
|
|
||||||
|
url := fmt.Sprintf("http://%s:%s/user/get_users_info", config.LoadConfig().APIHost, config.LoadConfig().APIPort)
|
||||||
|
|
||||||
requestBody := UserInfoRequest{
|
requestBody := UserInfoRequest{
|
||||||
UserIDs: userIDs,
|
UserIDs: userIDs,
|
||||||
}
|
}
|
||||||
return sendPostRequestWithToken("http://your-api-host:port/user/get_users_info", token, requestBody)
|
return sendPostRequestWithToken(url, token, requestBody)
|
||||||
}
|
}
|
||||||
|
|
||||||
// UpdateUserInfo updates the information for a user
|
// UpdateUserInfo updates the information for a user
|
||||||
func UpdateUserInfo(token, userID, nickname, faceURL string) error {
|
func UpdateUserInfo(token, userID, nickname, faceURL string) error {
|
||||||
|
|
||||||
|
url := fmt.Sprintf("http://%s:%s/user/update_user_info", config.LoadConfig().APIHost, config.LoadConfig().APIPort)
|
||||||
|
|
||||||
requestBody := UserInfoRequest{
|
requestBody := UserInfoRequest{
|
||||||
UserInfo: &gettoken.User{
|
UserInfo: &gettoken.User{
|
||||||
UserID: userID,
|
UserID: userID,
|
||||||
@ -32,13 +41,16 @@ func UpdateUserInfo(token, userID, nickname, faceURL string) error {
|
|||||||
FaceURL: faceURL,
|
FaceURL: faceURL,
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
return sendPostRequestWithToken("http://your-api-host:port/user/update_user_info", token, requestBody)
|
return sendPostRequestWithToken(url, token, requestBody)
|
||||||
}
|
}
|
||||||
|
|
||||||
// GetUsersOnlineStatus retrieves the online status for a list of user IDs
|
// GetUsersOnlineStatus retrieves the online status for a list of user IDs
|
||||||
func GetUsersOnlineStatus(token string, userIDs []string) error {
|
func GetUsersOnlineStatus(token string, userIDs []string) error {
|
||||||
|
|
||||||
|
url := fmt.Sprintf("http://%s:%s/user/get_users_online_status", config.LoadConfig().APIHost, config.LoadConfig().APIPort)
|
||||||
|
|
||||||
requestBody := GetUsersOnlineStatusRequest{
|
requestBody := GetUsersOnlineStatusRequest{
|
||||||
UserIDs: userIDs,
|
UserIDs: userIDs,
|
||||||
}
|
}
|
||||||
return sendPostRequestWithToken("http://your-api-host:port/user/get_users_online_status", token, requestBody)
|
return sendPostRequestWithToken(url, token, requestBody)
|
||||||
}
|
}
|
||||||
|
|||||||
@ -8,6 +8,7 @@ import (
|
|||||||
"net/http"
|
"net/http"
|
||||||
|
|
||||||
gettoken "github.com/openimsdk/open-im-server/v3/test/e2e/api/token"
|
gettoken "github.com/openimsdk/open-im-server/v3/test/e2e/api/token"
|
||||||
|
"github.com/openimsdk/open-im-server/v3/test/e2e/framework/config"
|
||||||
)
|
)
|
||||||
|
|
||||||
// ForceLogoutRequest represents a request to force a user logout
|
// ForceLogoutRequest represents a request to force a user logout
|
||||||
@ -34,30 +35,39 @@ type Pagination struct {
|
|||||||
|
|
||||||
// ForceLogout forces a user to log out
|
// ForceLogout forces a user to log out
|
||||||
func ForceLogout(token, userID string, platformID int) error {
|
func ForceLogout(token, userID string, platformID int) error {
|
||||||
|
|
||||||
|
url := fmt.Sprintf("http://%s:%s/auth/force_logout", config.LoadConfig().APIHost, config.LoadConfig().APIPort)
|
||||||
|
|
||||||
requestBody := ForceLogoutRequest{
|
requestBody := ForceLogoutRequest{
|
||||||
PlatformID: platformID,
|
PlatformID: platformID,
|
||||||
UserID: userID,
|
UserID: userID,
|
||||||
}
|
}
|
||||||
return sendPostRequestWithToken("http://your-api-host:port/auth/force_logout", token, requestBody)
|
return sendPostRequestWithToken(url, token, requestBody)
|
||||||
}
|
}
|
||||||
|
|
||||||
// CheckUserAccount checks if the user accounts exist
|
// CheckUserAccount checks if the user accounts exist
|
||||||
func CheckUserAccount(token string, userIDs []string) error {
|
func CheckUserAccount(token string, userIDs []string) error {
|
||||||
|
|
||||||
|
url := fmt.Sprintf("http://%s:%s/user/account_check", config.LoadConfig().APIHost, config.LoadConfig().APIPort)
|
||||||
|
|
||||||
requestBody := CheckUserAccountRequest{
|
requestBody := CheckUserAccountRequest{
|
||||||
CheckUserIDs: userIDs,
|
CheckUserIDs: userIDs,
|
||||||
}
|
}
|
||||||
return sendPostRequestWithToken("http://your-api-host:port/user/account_check", token, requestBody)
|
return sendPostRequestWithToken(url, token, requestBody)
|
||||||
}
|
}
|
||||||
|
|
||||||
// GetUsers retrieves a list of users with pagination
|
// GetUsers retrieves a list of users with pagination
|
||||||
func GetUsers(token string, pageNumber, showNumber int) error {
|
func GetUsers(token string, pageNumber, showNumber int) error {
|
||||||
|
|
||||||
|
url := fmt.Sprintf("http://%s:%s/user/account_check", config.LoadConfig().APIHost, config.LoadConfig().APIPort)
|
||||||
|
|
||||||
requestBody := GetUsersRequest{
|
requestBody := GetUsersRequest{
|
||||||
Pagination: Pagination{
|
Pagination: Pagination{
|
||||||
PageNumber: pageNumber,
|
PageNumber: pageNumber,
|
||||||
ShowNumber: showNumber,
|
ShowNumber: showNumber,
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
return sendPostRequestWithToken("http://your-api-host:port/user/get_users", token, requestBody)
|
return sendPostRequestWithToken(url, token, requestBody)
|
||||||
}
|
}
|
||||||
|
|
||||||
// sendPostRequestWithToken sends a POST request with a token in the header
|
// sendPostRequestWithToken sends a POST request with a token in the header
|
||||||
|
|||||||
@ -1 +0,0 @@
|
|||||||
.keep
|
|
||||||
@ -1,6 +1,9 @@
|
|||||||
package config
|
package config
|
||||||
|
|
||||||
import "flag"
|
import (
|
||||||
|
"flag"
|
||||||
|
"os"
|
||||||
|
)
|
||||||
|
|
||||||
// Flags is the flag set that AddOptions adds to. Test authors should
|
// Flags is the flag set that AddOptions adds to. Test authors should
|
||||||
// also use it instead of directly adding to the global command line.
|
// also use it instead of directly adding to the global command line.
|
||||||
@ -19,3 +22,49 @@ func CopyFlags(source *flag.FlagSet, target *flag.FlagSet) {
|
|||||||
target.Var(flag.Value, flag.Name, flag.Usage)
|
target.Var(flag.Value, flag.Name, flag.Usage)
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Config defines the configuration structure for the OpenIM components.
|
||||||
|
type Config struct {
|
||||||
|
APIHost string
|
||||||
|
APIPort string
|
||||||
|
MsgGatewayHost string
|
||||||
|
MsgTransferHost string
|
||||||
|
PushHost string
|
||||||
|
RPCAuthHost string
|
||||||
|
RPCConversationHost string
|
||||||
|
RPCFriendHost string
|
||||||
|
RPCGroupHost string
|
||||||
|
RPCMsgHost string
|
||||||
|
RPCThirdHost string
|
||||||
|
RPCUserHost string
|
||||||
|
// Add other configuration fields as needed
|
||||||
|
}
|
||||||
|
|
||||||
|
// LoadConfig loads the configurations from environment variables or default values.
|
||||||
|
func LoadConfig() *Config {
|
||||||
|
return &Config{
|
||||||
|
APIHost: getEnv("OPENIM_API_HOST", "127.0.0.1"),
|
||||||
|
APIPort: getEnv("API_OPENIM_PORT", "10002"),
|
||||||
|
|
||||||
|
// TODO: Set default variable
|
||||||
|
MsgGatewayHost: getEnv("OPENIM_MSGGATEWAY_HOST", "default-msggateway-host"),
|
||||||
|
MsgTransferHost: getEnv("OPENIM_MSGTRANSFER_HOST", "default-msgtransfer-host"),
|
||||||
|
PushHost: getEnv("OPENIM_PUSH_HOST", "default-push-host"),
|
||||||
|
RPCAuthHost: getEnv("OPENIM_RPC_AUTH_HOST", "default-rpc-auth-host"),
|
||||||
|
RPCConversationHost: getEnv("OPENIM_RPC_CONVERSATION_HOST", "default-rpc-conversation-host"),
|
||||||
|
RPCFriendHost: getEnv("OPENIM_RPC_FRIEND_HOST", "default-rpc-friend-host"),
|
||||||
|
RPCGroupHost: getEnv("OPENIM_RPC_GROUP_HOST", "default-rpc-group-host"),
|
||||||
|
RPCMsgHost: getEnv("OPENIM_RPC_MSG_HOST", "default-rpc-msg-host"),
|
||||||
|
RPCThirdHost: getEnv("OPENIM_RPC_THIRD_HOST", "default-rpc-third-host"),
|
||||||
|
RPCUserHost: getEnv("OPENIM_RPC_USER_HOST", "default-rpc-user-host"),
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// getEnv is a helper function to read an environment variable or return a default value.
|
||||||
|
func getEnv(key, defaultValue string) string {
|
||||||
|
value, exists := os.LookupEnv(key)
|
||||||
|
if !exists {
|
||||||
|
return defaultValue
|
||||||
|
}
|
||||||
|
return value
|
||||||
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user