短消息接口函数
进入短消息中心
uc_pm_location(integer uid , bool newpm)
函数参数
参数 | 含义 |
---|---|
integer uid | 用户 ID |
bool newpm | 是否直接查看未读短消息 1:是 0:(默认值) 否 |
本接口函数运行后会发送一个 header 的 location 请求,使当前页面跳转到短消息中心。所以请不要在这个函数运行前后有任何的输出性的代码。如果 newpm 为 1 则进入短消息中心后,会默认打开新件箱。
进入短消息中心示例 (PHP)
检查新的短消息
bool/array uc_pm_checknew(integer uid [, bool more])
函数参数
参数 | 含义 |
---|---|
integer uid | 用户 ID |
bool more | 是否显示更多信息 2:返回短消息数、公共消息数、最后消息时间, 最后消息内容 1:返回短消息数、公共消息数、最后消息时间 0:(默认值) 只返回短消息数 |
返回值 (当 more = 0 时)
值 | 含义 |
---|---|
integer | 未读消息数 |
返回值 (当 more = 1 时)
值 | 含义 | |
---|---|---|
array | integer ['newpm'] | 未读消息数 |
integer ['newprivatepm'] | 私人消息数 |
返回值 (当 more = 2 时)
值 | 含义 | |
---|---|---|
array | integer ['newpm'] | 未读消息数 |
integer ['newprivatepm'] | 私人消息数 | |
integer ['announcepm'] | 公共消息数 | |
integer ['systempm'] | 系统消息数 |
返回值 (当 more = 3 时)
值 | 含义 | |
---|---|---|
array | integer [newpm] | 未读消息数 |
integer ['newprivatepm'] | 私人消息数 | |
integer ['announcepm'] | 公共消息数 | |
integer ['systempm'] | 系统消息数 | |
integer ['lastdate'] | 最后消息时间 | |
integer ['lastmsgfromid'] | 最后消息发件人 ID | |
string ['lastmsgfrom'] | 最后消息发件人用户名 | |
string ['lastmsg'] | 最后消息内容 |
本接口函数会检查指定用户是否有新的短消息。
检查新短消息示例 (PHP)
发送短消息
integer uc_pm_send(integer fromuid , string msgto , string subject , string message [, bool instantly , integer replypmid , bool isusername])
函数参数
参数 | 含义 |
---|---|
integer fromuid | 发件人用户 ID,0 为系统消息 |
string msgto | 收件人用户名 / 用户 ID,多个用逗号分割 |
string subject | 消息标题 |
string message | 消息内容 |
bool instantly | 是否直接发送 1:(默认值) 直接发送消息 0:进入发送短消息的界面 |
integer replypid | 回复的消息 ID 大于 0:回复指定的短消息 0:(默认值) 发送新的短消息 |
bool isusername | msgto 参数是否为用户名 1:msgto 参数为用户名 0:(默认值) msgto 参数为用户 ID |
返回值
值 | 含义 |
---|---|
integer | 大于 0:发送成功的最后一条消息 ID 0:发送失败 -1:超出了24小时最大允许发送短消息数目 -2:不满足两次发送短消息最短间隔 -3:不能给非好友批量发送短消息 -4:目前还不能使用发送短消息功能(注册多少日后才可以使用发短消息限制) |
本接口函数用于发送短消息。当 instantly 为 1 时,短消息会直接发送出去,否则本函数会发送一个 header 的 location 请求,使当前页面跳转到短消息中心的发送短消息页面。因此,当 instantly 为 0 时请不要在这个函数运行前后有任何的输出性的代码。fromuid 为 0 时为发送系统消息。msgto 默认为用户 ID,如果要让用户名作为参数,可让 isusername 为 1。replypid 为 0 表示发送的短消息为短消息话题的发起者,如果 replypid 为指定的消息 ID 则表示发送的短消息为回复指定短消息话题的回复信息。如果 instantly 为 1,那么发送成功后函数返回发送成功的最后一条消息 ID,返回 0 表示发送失败。
发送短消息示例 (PHP)
删除短消息
integer uc_pm_delete(integer uid , string folder , array pmids)
函数参数
参数 | 含义 |
---|---|
integer uid | 用户 ID |
string folder | 短消息所在的文件夹 inbox:收件箱 outbox:发件箱 |
array pmids | 消息 ID 数组 |
返回值
值 | 含义 |
---|---|
integer | 被删除的短消息数 |
本接口函数将删除指定文件夹中的指定消息 ID 的短消息。pmids 参数是一个自由 Key 数组类型,如“ array(1, 2, 3, 4, 5 ...) ”,数组的每一个值均为消息 ID。删除的每一条短消息 UCenter 会进行对方删除状态的检测,如果短消息对方也是删除状态,那么当前消息将在数据库中删除,否则只记录一个删除标记。
删除短消息示例 (PHP)
integer uc_pm_deleteuser(integer uid , array touids)
函数参数
参数 | 含义 |
---|---|
integer uid | 用户 ID |
array touids | 对方用户 ID 数组 |
返回值
值 | 含义 |
---|---|
integer | 被删除的短消息数 |
本接口函数将删除和 uid 对话的 touids 中的所有短消息。
标记短消息已读/未读状态
uc_pm_readstatus(integer uid , array uids [, array pmids, bool status])
函数参数
参数 | 含义 |
---|---|
integer uid | 用户 ID |
array uids | 要标记的对方用户 ID 数组 |
array pmids | 要标记的消息 ID 数组,默认值空数组 |
bool status | 要标记的状态 0:(默认值) 标记为已读 1:标记为未读 |
本接口函数用于标记短消息的已读/未读状态。uids 和 pmids 参数是一个自由 Key 数组类型,如“ array(1, 2, 3, 4, 5 ...) ”,数组的每一个值均为 ID。
标记短消息状态示例 (PHP)
获取短消息列表
array uc_pm_list(integer uid [, integer page , integer pagesize , string folder , string filter, integer msglen])
函数参数
参数 | 含义 |
---|---|
integer uid | 用户 ID |
integer page | 当前页编号,默认值 1 |
integer pagesize | 每页最大条目数,默认值 10 |
string folder | 短消息所在的文件夹 newbox:新件箱 inbox:(默认值) 收件箱 outbox:发件箱 |
string filter | 过滤方式 newpm:(默认值) 未读消息,folder 为 inbox 和 outbox 时使用 systempm:系统消息,folder 为 inbox 时使用 announcepm:公共消息,folder 为 inbox 时使用 |
integer msglen | 截取短消息内容文字的长度,0 为不截取,默认值 0 |
返回值
值 | 含义 | |
---|---|---|
array | integer ['count'] | 消息总数 |
array ['data'] | 短消息列表数据,其中单条消息数组结构请参看附表。 |
本接口函数用于获取指定文件夹的短消息列表。函数已内置分页,直接通过 page 和 pagesize 即可实现翻页。
忽略未读消息提示
uc_pm_ignore(integer uid)
函数参数
参数 | 含义 |
---|---|
integer uid | 用户 ID |
本接口函数用于直接忽略未读短消息的提示状态。
获取短消息内容
array uc_pm_view(integer uid , integer pmid [, integer touid , integer daterange])
函数参数
参数 | 含义 |
---|---|
integer uid | 用户 ID |
integer pmid | 消息 ID |
integer touid | 消息对方用户 ID |
integer daterange | 日期范围 1:(默认值) 今天 2:昨天 3:前天 4:上周 5:更早 |
返回值
值 | 含义 |
---|---|
array | 短消息内容数据,其中单条消息数组结构请参看附表 |
本接口函数用于返回指定用户的指定消息 ID 的消息,返回的数据中包含针对这个消息的回复。如果指定 touid 参数,那么短消息将列出所有 uid 和 touid 之间的短消息,daterange 可以指定返回消息的日期范围。
获取单条短消息内容
integer uc_pm_viewnode(integer uid [, integer type , integer pmid])
函数参数
参数 | 含义 |
---|---|
integer uid | 用户 ID |
integer type | 消息的类型 0:(默认值) 获取指定单条消息 1:获取指定用户发的最后单条消息 2:获取指定用户收的最后单条消息 |
integer pmid | 消息 ID,默认值 0,type 为 0 时本参数有效 |
返回值
值 | 含义 |
---|---|
array | 短消息内容数据,其中单条消息数组结构请参看附表 |
如果 type 为 0,则本接口函数返回指定 pmid 的单条消息内容。如果 type 为 1 或 2,则本接口函数返回指定用户接收的最后单条消息内容。
获取黑名单
string uc_pm_blackls_get(integer uid)
函数参数
参数 | 含义 |
---|---|
integer uid | 用户 ID |
返回值
值 | 含义 |
---|---|
string | 黑名单内容数据 |
本接口函数返回用户的黑名单设置的内容。
获取黑名单示例 (PHP)
更新黑名单
bool uc_pm_blackls_set(integer uid , string blackls)
函数参数
参数 | 含义 |
---|---|
integer uid | 用户 ID |
string blackls | 黑名单内容 |
返回值
值 | 含义 |
---|---|
bool | 1:更新成功 0:更新失败 |
本接口函数用于更新用户的黑名单列表数据。设置黑名单后,黑名单中的人员将无法发送短消息给 uid 指定的用户。黑名单中被忽略的人员用用户名表示,多个忽略人员名单时用逗号 "," 隔开(如:张三,李四,王五),如需禁止所有用户发来的短消息,请用 "{ALL}" 表示。
更新黑名单示例 (PHP)
添加黑名单项目
bool uc_pm_blackls_add(integer uid , array username)
函数参数
参数 | 含义 |
---|---|
integer uid | 用户 ID |
array username | 用户名数组 |
返回值
值 | 含义 |
---|---|
bool | 1:添加成功 0:添加失败 |
本接口函数用于添加用户的黑名单项目。如需添加屏蔽所有用户的设置,请让 username 数组中包含 "{ALL}"
添加黑名单项目示例 (PHP)
删除黑名单项目
uc_pm_blackls_delete(integer uid , array username)
函数参数
参数 | 含义 |
---|---|
integer uid | 用户 ID |
array username | 用户名数组 |
本接口函数用于删除用户的黑名单项目。如需删除屏蔽所有用户的设置,请让 username 数组中包含 "{ALL}"
添加黑名单项目示例 (PHP)
附表:单条消息数组结构
integer ['pmid'] | 消息 ID |
---|---|
string ['msgfrom'] | 发件人用户名 |
integer ['msgfromid'] | 发件人用户 ID |
integer ['msgtoid'] | 收件人用户 ID |
integer ['new'] | 1:未读短消息 0:已读短消息 |
string ['subject'] | 标题 |
integer ['dateline'] | 发送时间的时间戳 |
string ['message'] | 内容 |
integer ['daterange'] | 1:今天 2:昨天 3:前天 4:上周 5:更早 |