ParaWorld_Users
user info
| Title |
user info |
| Author(s) |
LiXizhi |
| Date |
2008/1/21 |
| File |
script/kids/3DMapSystemApp/API/paraworld.users.lua |
Description
Sample Code
NPL.load("(gl)script/kids/3DMapSystemApp/API/ParaworldAPI.lua");
Member Functions
paraworld.users.getInfo
create class
commonlib.setfield("paraworld.users", {});
[[
获取一组指定用户的指定信息
msg = {
"uids" = string (*) //用逗号(,)分隔的多个用户ID
"fields" = string //要逗号(,)分隔的多个要取得的字段,若不传此参数,表示取得所有字段。可用的参数为:UserName;MoneyE;MoneyEValidUntil;Gender;BirthDate;Occupation;Website;GameServer;SpaceServer;LobbyServer;MapX;MapY;MapLevel;MapMessage;CityID;CityRole;Profession;ProfessionalSkill;EngineeringSkill;Inventories;CCS_info;UserID,ViewCount,
MoneyP? , Credits, Level,
InRoles? ,FirstName,LastName
}
if(operation = "get")
{
msg = {
"users" = list{
userID = string
(由参数fields决定的节点)
}
[ errorCode ] = int 错误码。0:无异常 500:未知错误 499:提供的数据不完整 498:非法的访问
[ info ] = string 发生异常或特殊情形下有此节点
}
}
]]
getinfo with modified preprocessor and postprocessor and local server cache policy
local getInfo_cache_policy =
Map3DSystem? .localserver.CachePolicy:new("access plus 1 week");
local getInfo_cache_policy =
Map3DSystem? .localserver.CachePolicy:new("access plus 1 day");
syntax
function paraworld.users.getInfo()
!
Post Processor
syntax
function (self, msg, id)
parameters
paraworld.users.setInfo
[[
登录用户更改自己的个人信息
msg = {
"sessionKey" = string (*)
[***除了以下字段外,其它都可修改:UserID,
UserName? ,
ViewCount? ,
MoneyP? , Credits, Level,
InRoles? ***]
可用参数:MoneyE;MoneyEValidUntil;Gender;BirthDate;Occupation;Website;GameServer;SpaceServer;LobbyServer;MapX;MapY;MapLevel;MapMessage;CityID;CityRole;Profession;ProfessionalSkill;EngineeringSkill;Inventories;CCS_info;FirstName,LastName
}
msg = {
isSuccess = boolean
[ errorCode ] = int 错误码。0:无异常 500:未知错误 499:提供的数据不完整 498:非法的访问 497:数据不存在或已被删除
[ info ] = string 将发生异常或特殊情形时会有此节点
}
]]
paraworld.CreateRPCWrapper("paraworld.users.setInfo", "http://users.paraengine.com/setInfo.asmx");
syntax
function paraworld.users.setInfo()
paraworld.users.isAppAdded
[[
]]
syntax
function paraworld.users.isAppAdded()
paraworld.users.Find
[[
依据输入的Email查找已在PE注册的用户,并将注册用户的ID返回,多个用户ID之间用英文逗号分隔
msg = {
email(string) (*) 要查找的Email地址,多个Email之间用英文逗号“,”隔开
}
msg = {
uids (string) 以英文逗号分隔的符合条件的用户ID集合
[ errorCode ] (int) 若发生异常,则返回错误码。错误码。0:无异常 500:未知错误 499:提供的数据不完整 498:非法的访问 497:数据不存在或已被删除
}
]]
syntax
function paraworld.users.Find()
paraworld.users.Registration
[[
注册一个新用户
msg = {
"appKey" = string (*)
"userName" = string (*) //注册的用户名
"password" = string (*) //注册的密码
"email" = "string" (*) //注册的邮箱
"passQuestion" = string (*) //安全问题
"passAnswer" = string (*) //安全问题的答案
[ ip ] = string //当用户是从网站注册(或其它第三方应用程序调用)时,应该提供用户的IP地址,以便获得用户的所在地。
}
msg = {
isSuccess = boolean //注册是否成功
newUserID = string //新注册用户的ID值
[ info ] = string //发生异常或特殊情形下会有此节点,记录导演信息
}
]]
syntax
function paraworld.users.Registration()
paraworld.users.Search
[[
依据传入的MCQL语句查找用户
msg = {
mcql(string) (*) 规范的MCQL语句 (不支持多表联合查询,不支持聚合函数,不支持Top语句; 支持where、order by 、group by语句; 可用字段:uid,uname,createDate,lastActivityDate,email)
-
-
-
-
-
-
- (MCQL关键字:PageSize
- 用在where语句中,以分页的形式返回数据,该值指定每页的最大数据量,必须与PageIndex一起使用才起作用,否则忽略,若指定了PageIndex,却没有提供PageSize,则默认的每页最大数据量为10
PageIndex? :用在where语句中,以分页的形式返回数据,该值指定返回的页码。
示例:select * from users where
PageIndex? = 0 and
PageSize? = 20 //每页最多20条数据,返回第一页的数据)
}
msg = {
users[list]{ //所有字段都是可选的
-
-
- uid
- string
-
-
- uname
- string
-
-
- createDate
- string
-
-
- lastActivityDate
- string
-
-
- email
- string
}
errorCode //错误码。发生异常时会有此节点 错误码。0:无异常 500:未知错误 499:提供的数据不完整 498:非法的访问 497:数据不存在或已被删除 494:语法错误
}
]]
syntax
function paraworld.users.Search()
paraworld.users.Invite
[[
邀请好友加入
msg = {
"sessionKey" = string (*) 当前登录用户的用户凭证
"from" = string (*) 发送邀请者的名称,发送者自行填写,将显示在邮件中
"to" = string(*) 以英文逗号(,)分隔的被邀请用户的Email集合
"message" = string (*) 邀请信函中包含的消息
"language" = int 邀请信使用的语言。1:中文,2:英文。默认值为1
}
msg = {
"isSuccess" = boolean 操作是否成功
[ errorCode ] = int 错误码。0:无异常 500:未知错误 499:提供的数据不完整 498:非法的访问 497:数据不存在或已被删除
}
]]
syntax
function paraworld.users.Invite()