Documentation
¶
Index ¶
- Constants
- Variables
- func CheckUserType(userType string) bool
- func GetInfo(user string, appid uint16, connId logic.ConnectionId, gatewayAddr string, ...) (int, error)
- func GetUserType(user string, appid uint16, connectionType string) string
- func OnlineCacheStat(addr string) (map[string][]map[string]uint64, error)
- func QueryUserOnlineCache(addr string, appid uint16, users []string) (map[string][]*logic.UserGateway, error)
- type ChatRoomDetail
- type CloseSessionReq
- type CloseSessionResp
- type GetMsgInfo
- type JoinChatRoomRequest
- type JoinChatRoomResponse
- type OpenSessionReq
- type OpenSessionResp
- type QuerySessionReq
- type QuerySessionResp
- type QuitChatRoomRequest
- type QuitChatRoomResponse
- type SessionStat
- func (stat *SessionStat) Add(add *SessionStat) *SessionStat
- func (stat *SessionStat) AtomicAddCloseRespTime(i uint64) uint64
- func (stat *SessionStat) AtomicAddCloseSessionFails(i uint64) uint64
- func (stat *SessionStat) AtomicAddCloseSessions(i uint64) uint64
- func (stat *SessionStat) AtomicAddJoinFails(i uint64) uint64
- func (stat *SessionStat) AtomicAddJoinRespTime(i uint64) uint64
- func (stat *SessionStat) AtomicAddJoins(i uint64) uint64
- func (stat *SessionStat) AtomicAddOpenRespTime(i uint64) uint64
- func (stat *SessionStat) AtomicAddOpenSessionFails(i uint64) uint64
- func (stat *SessionStat) AtomicAddOpenSessions(i uint64) uint64
- func (stat *SessionStat) AtomicAddQueryFails(i uint64) uint64
- func (stat *SessionStat) AtomicAddQueryRespTime(i uint64) uint64
- func (stat *SessionStat) AtomicAddQuerySessionFails(i uint64) uint64
- func (stat *SessionStat) AtomicAddQuerySessionRespTime(i uint64) uint64
- func (stat *SessionStat) AtomicAddQuerySessions(i uint64) uint64
- func (stat *SessionStat) AtomicAddQuerys(i uint64) uint64
- func (stat *SessionStat) AtomicAddQuitFails(i uint64) uint64
- func (stat *SessionStat) AtomicAddQuitRespTime(i uint64) uint64
- func (stat *SessionStat) AtomicAddQuits(i uint64) uint64
- func (stat *SessionStat) AtomicCopyTo(copy *SessionStat) *SessionStat
- func (stat *SessionStat) AtomicGetCloseRespTime() uint64
- func (stat *SessionStat) AtomicGetCloseSessionFails() uint64
- func (stat *SessionStat) AtomicGetCloseSessions() uint64
- func (stat *SessionStat) AtomicGetJoinFails() uint64
- func (stat *SessionStat) AtomicGetJoinRespTime() uint64
- func (stat *SessionStat) AtomicGetJoins() uint64
- func (stat *SessionStat) AtomicGetOpenRespTime() uint64
- func (stat *SessionStat) AtomicGetOpenSessionFails() uint64
- func (stat *SessionStat) AtomicGetOpenSessions() uint64
- func (stat *SessionStat) AtomicGetQueryFails() uint64
- func (stat *SessionStat) AtomicGetQueryRespTime() uint64
- func (stat *SessionStat) AtomicGetQuerySessionFails() uint64
- func (stat *SessionStat) AtomicGetQuerySessionRespTime() uint64
- func (stat *SessionStat) AtomicGetQuerySessions() uint64
- func (stat *SessionStat) AtomicGetQuerys() uint64
- func (stat *SessionStat) AtomicGetQuitFails() uint64
- func (stat *SessionStat) AtomicGetQuitRespTime() uint64
- func (stat *SessionStat) AtomicGetQuits() uint64
- func (stat *SessionStat) AtomicGetStatResponse() bool
- func (stat *SessionStat) AtomicGetUserSessionRequests() uint64
- func (stat *SessionStat) AtomicMakeQps(i uint64) string
- func (stat *SessionStat) AtomicSetStatResponse(value bool)
- func (stat *SessionStat) QpsString() string
- func (stat *SessionStat) String() string
- func (stat *SessionStat) Sub(sub *SessionStat) *SessionStat
- type UserChatRoomRequest
- type UserChatRoomResponse
- type UserOnlineCache
- type UserSession
Constants ¶
const ( RegisteredChatRoomUser = "reg" NonRegisteredChatRoomUser = "noreg" RobotChatRoomUser = "fake" ChatRoomWebUserPrefix = "web_" )
const ( Success = iota CallbackFailed AddUserFailed UserIsRobot int = 100 UserAlreadyInChatRoom = 101 SessionAlreadyInChatRoom = 102 AllSessionQuitedChatRoom = 103 SessionNotInChatRoom = 104 )
const ( NormalUser int = 0 HighLevelUser = 1 )
const ( GroupOwner uint8 = 255 GroupNormalUser uint8 = 0 )
Variables ¶
var ( JoinChatRoomSuccessResp = &JoinChatRoomResponse{ UserChatRoomResponse: &UserChatRoomResponse{ Code: Success, Reason: "success", Response: []byte("response"), }, ChatRoomDetail: &ChatRoomDetail{ AppID: logic.APPID_HUAJIAO, Members: make(map[string]int), }, } QuitChatRoomSuccessResp = &QuitChatRoomResponse{ UserChatRoomResponse: &UserChatRoomResponse{ Code: Success, Reason: "success", Response: []byte(""), }, } )
构造加入/退出成功返回
var GorpcClient *gorpc.Client
Functions ¶
func CheckUserType ¶
func GetInfo ¶
func GetInfo(user string, appid uint16, connId logic.ConnectionId, gatewayAddr string, infoType string, infoId int64, infoOffset int32, sParameter []byte) (int, error)
@todo 返回值 还不知道 是什么
func OnlineCacheStat ¶
获取online_cache的统计信息
func QueryUserOnlineCache ¶
Types ¶
type ChatRoomDetail ¶
type ChatRoomDetail struct { AppID uint16 RoomID string CreateTime int64 Version uint MaxID uint Members map[string]int GatewayAddrs map[string]int }
func QueryChatRoom ¶
func QueryChatRoom(user string, appid string, room string) (*ChatRoomDetail, error)
func (*ChatRoomDetail) Registered ¶
func (this *ChatRoomDetail) Registered() int
pb协议中的注册用户数,包括普通注册用户 + 机器人
type CloseSessionReq ¶
type CloseSessionReq struct {
*UserSession
}
type CloseSessionResp ¶
type CloseSessionResp struct {
Tags []string
}
type GetMsgInfo ¶
type JoinChatRoomRequest ¶
type JoinChatRoomRequest struct { *UserChatRoomRequest Properties map[string]string }
type JoinChatRoomResponse ¶
type JoinChatRoomResponse struct { *UserChatRoomResponse *ChatRoomDetail }
func AddRobotIntoChatRoom ¶
func AddRobotIntoChatRoom(user string, appid string, room string, properties map[string]string) (*JoinChatRoomResponse, error)
properties用于保存机器人其他请求参数(除去uid, appid, rid之外)
func JoinChatRoom ¶
type OpenSessionReq ¶
type OpenSessionReq struct {
*UserSession
}
type OpenSessionResp ¶
type OpenSessionResp struct { OldUserSessions []*UserSession Tags []string }
type QuerySessionReq ¶
type QuerySessionReq struct {
QueryUserSessions []*UserSession
}
type QuerySessionResp ¶
type QuerySessionResp struct {
ResultUserSessions []*UserSession
}
type QuitChatRoomRequest ¶
type QuitChatRoomRequest struct { *UserChatRoomRequest Properties map[string]string }
type QuitChatRoomResponse ¶
type QuitChatRoomResponse struct {
*UserChatRoomResponse
}
func QuitChatRoom ¶
func RemoveRobotFromChatRoom ¶
func RemoveRobotFromChatRoom(user string, appid string, room string) (*QuitChatRoomResponse, error)
type SessionStat ¶
type SessionStat struct { // user sessions OpenSessions uint64 OpenSessionFails uint64 CloseSessions uint64 CloseSessionFails uint64 QuerySessions uint64 QuerySessionFails uint64 // chatroom request count Joins uint64 JoinFails uint64 Quits uint64 QuitFails uint64 Querys uint64 QueryFails uint64 // p2p chat response time count OpenRespTime uint64 CloseRespTime uint64 QuerySessionRespTime uint64 // chatroom response time count JoinRespTime uint64 QuitRespTime uint64 QueryRespTime uint64 // stat switch state StatResponse int32 }
func GetSessionQps ¶
func GetSessionQps(gorpcAddr string) (*SessionStat, error)
* get session qps from specified saver * @param gorpcAddr is specified saver go rpc address * @return (*SessionStat, nil) if successful, otherwise (*SessionStat{}, error) will be return
func GetSessionTotalOps ¶
func GetSessionTotalOps(gorpcAddr string) (*SessionStat, error)
* get session total operations count after start from specified saver * @param gorpcAddr is specified saver go rpc address * @return (*SessionStat, nil) if successful, otherwise (*SessionStat{}, error) will be return
func (*SessionStat) Add ¶
func (stat *SessionStat) Add(add *SessionStat) *SessionStat
* stat add add and then store result in stat * @param add is value will be added * @return stat with new value
func (*SessionStat) AtomicAddCloseRespTime ¶
func (stat *SessionStat) AtomicAddCloseRespTime(i uint64) uint64
func (*SessionStat) AtomicAddCloseSessionFails ¶
func (stat *SessionStat) AtomicAddCloseSessionFails(i uint64) uint64
func (*SessionStat) AtomicAddCloseSessions ¶
func (stat *SessionStat) AtomicAddCloseSessions(i uint64) uint64
func (*SessionStat) AtomicAddJoinFails ¶
func (stat *SessionStat) AtomicAddJoinFails(i uint64) uint64
func (*SessionStat) AtomicAddJoinRespTime ¶
func (stat *SessionStat) AtomicAddJoinRespTime(i uint64) uint64
func (*SessionStat) AtomicAddJoins ¶
func (stat *SessionStat) AtomicAddJoins(i uint64) uint64
func (*SessionStat) AtomicAddOpenRespTime ¶
func (stat *SessionStat) AtomicAddOpenRespTime(i uint64) uint64
func (*SessionStat) AtomicAddOpenSessionFails ¶
func (stat *SessionStat) AtomicAddOpenSessionFails(i uint64) uint64
func (*SessionStat) AtomicAddOpenSessions ¶
func (stat *SessionStat) AtomicAddOpenSessions(i uint64) uint64
func (*SessionStat) AtomicAddQueryFails ¶
func (stat *SessionStat) AtomicAddQueryFails(i uint64) uint64
func (*SessionStat) AtomicAddQueryRespTime ¶
func (stat *SessionStat) AtomicAddQueryRespTime(i uint64) uint64
func (*SessionStat) AtomicAddQuerySessionFails ¶
func (stat *SessionStat) AtomicAddQuerySessionFails(i uint64) uint64
func (*SessionStat) AtomicAddQuerySessionRespTime ¶
func (stat *SessionStat) AtomicAddQuerySessionRespTime(i uint64) uint64
func (*SessionStat) AtomicAddQuerySessions ¶
func (stat *SessionStat) AtomicAddQuerySessions(i uint64) uint64
func (*SessionStat) AtomicAddQuerys ¶
func (stat *SessionStat) AtomicAddQuerys(i uint64) uint64
func (*SessionStat) AtomicAddQuitFails ¶
func (stat *SessionStat) AtomicAddQuitFails(i uint64) uint64
func (*SessionStat) AtomicAddQuitRespTime ¶
func (stat *SessionStat) AtomicAddQuitRespTime(i uint64) uint64
func (*SessionStat) AtomicAddQuits ¶
func (stat *SessionStat) AtomicAddQuits(i uint64) uint64
func (*SessionStat) AtomicCopyTo ¶
func (stat *SessionStat) AtomicCopyTo(copy *SessionStat) *SessionStat
operations
- this copy content of stat to 'copy' atomicly
- @param copy is target the content copy to
- @return copy if it is not nil, otherwise will return a new GatewayStat point
func (*SessionStat) AtomicGetCloseRespTime ¶
func (stat *SessionStat) AtomicGetCloseRespTime() uint64
func (*SessionStat) AtomicGetCloseSessionFails ¶
func (stat *SessionStat) AtomicGetCloseSessionFails() uint64
func (*SessionStat) AtomicGetCloseSessions ¶
func (stat *SessionStat) AtomicGetCloseSessions() uint64
func (*SessionStat) AtomicGetJoinFails ¶
func (stat *SessionStat) AtomicGetJoinFails() uint64
func (*SessionStat) AtomicGetJoinRespTime ¶
func (stat *SessionStat) AtomicGetJoinRespTime() uint64
func (*SessionStat) AtomicGetJoins ¶
func (stat *SessionStat) AtomicGetJoins() uint64
func (*SessionStat) AtomicGetOpenRespTime ¶
func (stat *SessionStat) AtomicGetOpenRespTime() uint64
func (*SessionStat) AtomicGetOpenSessionFails ¶
func (stat *SessionStat) AtomicGetOpenSessionFails() uint64
func (*SessionStat) AtomicGetOpenSessions ¶
func (stat *SessionStat) AtomicGetOpenSessions() uint64
func (*SessionStat) AtomicGetQueryFails ¶
func (stat *SessionStat) AtomicGetQueryFails() uint64
func (*SessionStat) AtomicGetQueryRespTime ¶
func (stat *SessionStat) AtomicGetQueryRespTime() uint64
func (*SessionStat) AtomicGetQuerySessionFails ¶
func (stat *SessionStat) AtomicGetQuerySessionFails() uint64
func (*SessionStat) AtomicGetQuerySessionRespTime ¶
func (stat *SessionStat) AtomicGetQuerySessionRespTime() uint64
func (*SessionStat) AtomicGetQuerySessions ¶
func (stat *SessionStat) AtomicGetQuerySessions() uint64
func (*SessionStat) AtomicGetQuerys ¶
func (stat *SessionStat) AtomicGetQuerys() uint64
func (*SessionStat) AtomicGetQuitFails ¶
func (stat *SessionStat) AtomicGetQuitFails() uint64
func (*SessionStat) AtomicGetQuitRespTime ¶
func (stat *SessionStat) AtomicGetQuitRespTime() uint64
func (*SessionStat) AtomicGetQuits ¶
func (stat *SessionStat) AtomicGetQuits() uint64
func (*SessionStat) AtomicGetStatResponse ¶
func (stat *SessionStat) AtomicGetStatResponse() bool
func (*SessionStat) AtomicGetUserSessionRequests ¶
func (stat *SessionStat) AtomicGetUserSessionRequests() uint64
func (*SessionStat) AtomicMakeQps ¶
func (stat *SessionStat) AtomicMakeQps(i uint64) string
* this computes qps with stat according to interval * @param i is interval which unit is second * @return a json string that include saver QPS information
func (*SessionStat) AtomicSetStatResponse ¶
func (stat *SessionStat) AtomicSetStatResponse(value bool)
func (*SessionStat) QpsString ¶
func (stat *SessionStat) QpsString() string
func (*SessionStat) String ¶
func (stat *SessionStat) String() string
func (*SessionStat) Sub ¶
func (stat *SessionStat) Sub(sub *SessionStat) *SessionStat
* stat subtract sub and then store result in stat * @param sub is value will be subtracted * @return stat with new value
type UserChatRoomRequest ¶
type UserChatRoomResponse ¶
type UserOnlineCache ¶
type UserSession ¶
type UserSession struct { UserId string SessionId string SessionKey string LoginTime string //uint64 AppId uint16 Deviceid string ClientVer string //uint16 SenderType string Platform string UserIp string TraceId string IsLoginUser bool ConnectionId logic.ConnectionId GatewayAddr string Property map[string]string }
func Query ¶
func Query(querys []*UserSession) ([]*UserSession, error)