PHPSDK
Public 成员函数 | 所有成员列表
Easemob\Message类 参考

Public 成员函数

 text ($target_type, $target, $message, $from='admin', $sync_device=false, $isOnline=false)
 发送文本消息 更多...
 
 image ($target_type, $target, $message, $from='admin', $sync_device=false, $isOnline=false)
 发送图片消息 更多...
 
 audio ($target_type, $target, $message, $from='admin', $sync_device=false, $isOnline=false)
 发送语音消息 更多...
 
 video ($target_type, $target, $message, $from='admin', $sync_device=false, $isOnline=false)
 发送视频消息 更多...
 
 file ($target_type, $target, $message, $from='admin', $sync_device=false, $isOnline=false)
 发送文件消息 更多...
 
 location ($target_type, $target, $message, $from='admin', $sync_device=false, $isOnline=false)
 发送位置消息 更多...
 
 cmd ($target_type, $target, $message, $from='admin', $sync_device=false, $isOnline=false)
 发送透传消息 更多...
 
 custom ($target_type, $target, $message, $from='admin', $sync_device=false, $isOnline=false)
 发送自定义消息 更多...
 
 countMissedMessages ($username)
 获取用户离线消息数 更多...
 
 isMessageDeliveredToUser ($username, $msgId)
 获取某条离线消息状态 更多...
 
 getHistoryAsUri ($dateTime)
 获取历史消息文件下载地址 更多...
 
 getHistoryAsLocalFile ($dateTime, $filename)
 下载消息历史文件到本地 更多...
 
 withdraw ($msgs)
 服务端消息撤回 更多...
 
 deleteSession ($username, $channel, $type, $delete_roam=true)
 服务端单向删除会话 更多...
 

详细描述

Message 用来发送消息

成员函数说明

◆ audio()

Easemob\Message::audio (   $target_type,
  $target,
  $message,
  $from = 'admin',
  $sync_device = false,
  $isOnline = false 
)

发送语音消息

参数
string$target_type发送的目标类型;users:给用户发消息,chatgroups:给群发消息,chatrooms:给聊天室发消息
array$target发送的目标;注意这里需要用数组,数组内添加的最大用户数默认 600 个,即使只有一个用户,也要用数组 [‘u1’];给用户发送时数组元素是用户名,给群组发送时,数组元素是 groupid。
array$message消息内容
string$from表示消息发送者;无此字段 Server 会默认设置为 "from": "admin",有 from 字段但值为空串 ("") 时请求失败
string$sync_device消息发送成功后,是否将消息同步给发送方。true:是;false(默认):否。
boolean$isOnline该参数值为 true 时,代表 routetype 的值为 “ROUTE_ONLINE”,表示发送消息时只有接收方在线时,才进行消息投递。若接收方离线,将不会收到此条消息。
返回
array 发送给的目标和对应消息 id 的数组或者错误

◆ cmd()

Easemob\Message::cmd (   $target_type,
  $target,
  $message,
  $from = 'admin',
  $sync_device = false,
  $isOnline = false 
)

发送透传消息

参数
string$target_type发送的目标类型;users:给用户发消息,chatgroups:给群发消息,chatrooms:给聊天室发消息
array$target发送的目标;注意这里需要用数组,数组内添加的最大用户数默认 600 个,即使只有一个用户,也要用数组 [‘u1’];给用户发送时数组元素是用户名,给群组发送时,数组元素是 groupid。
array$message消息内容
string$from表示消息发送者;无此字段 Server 会默认设置为 "from": "admin",有 from 字段但值为空串 ("") 时请求失败
string$sync_device消息发送成功后,是否将消息同步给发送方。true:是;false(默认):否。
boolean$isOnline该参数值为 true 时,代表 routetype 的值为 “ROUTE_ONLINE”,表示发送消息时只有接收方在线时,才进行消息投递。若接收方离线,将不会收到此条消息。
返回
array 发送给的目标和对应消息 id 的数组或者错误

◆ countMissedMessages()

Easemob\Message::countMissedMessages (   $username)

获取用户离线消息数

参数
string$username用户名
返回
int|array 用户离线消息数量或者错误

◆ custom()

Easemob\Message::custom (   $target_type,
  $target,
  $message,
  $from = 'admin',
  $sync_device = false,
  $isOnline = false 
)

发送自定义消息

参数
string$target_type发送的目标类型;users:给用户发消息,chatgroups:给群发消息,chatrooms:给聊天室发消息
array$target发送的目标;注意这里需要用数组,数组内添加的最大用户数默认 600 个,即使只有一个用户,也要用数组 [‘u1’];给用户发送时数组元素是用户名,给群组发送时,数组元素是 groupid。
array$message消息内容
string$from表示消息发送者;无此字段 Server 会默认设置为 "from": "admin",有 from 字段但值为空串 ("") 时请求失败
string$sync_device消息发送成功后,是否将消息同步给发送方。true:是;false(默认):否。
boolean$isOnline该参数值为 true 时,代表 routetype 的值为 “ROUTE_ONLINE”,表示发送消息时只有接收方在线时,才进行消息投递。若接收方离线,将不会收到此条消息。
返回
array 发送给的目标和对应消息 id 的数组或者错误

◆ deleteSession()

Easemob\Message::deleteSession (   $username,
  $channel,
  $type,
  $delete_roam = true 
)

服务端单向删除会话

参数
string$username用户名
string$channel要删除的会话 ID。
string$type会话类型。chat:单聊会话;groupchat:群聊会话。
string$delete_roam是否删除服务端消息,不允许为空。true:是;false:否。
返回
boolean 成功或者错误

◆ file()

Easemob\Message::file (   $target_type,
  $target,
  $message,
  $from = 'admin',
  $sync_device = false,
  $isOnline = false 
)

发送文件消息

参数
string$target_type发送的目标类型;users:给用户发消息,chatgroups:给群发消息,chatrooms:给聊天室发消息
array$target发送的目标;注意这里需要用数组,数组内添加的最大用户数默认 600 个,即使只有一个用户,也要用数组 [‘u1’];给用户发送时数组元素是用户名,给群组发送时,数组元素是 groupid。
array$message消息内容
string$from表示消息发送者;无此字段 Server 会默认设置为 "from": "admin",有 from 字段但值为空串 ("") 时请求失败
string$sync_device消息发送成功后,是否将消息同步给发送方。true:是;false(默认):否。
boolean$isOnline该参数值为 true 时,代表 routetype 的值为 “ROUTE_ONLINE”,表示发送消息时只有接收方在线时,才进行消息投递。若接收方离线,将不会收到此条消息。
返回
array 发送给的目标和对应消息 id 的数组或者错误

◆ getHistoryAsLocalFile()

Easemob\Message::getHistoryAsLocalFile (   $dateTime,
  $filename 
)

下载消息历史文件到本地

参数
int$datetime时间,每次只能获取一小时的消息,格式为 yyyyMMddHH 如 2018112717。
string$filename下载后的文件名,消息历史文件是 gz 压缩的。
返回
boolean|array 下载成功或错误

◆ getHistoryAsUri()

Easemob\Message::getHistoryAsUri (   $dateTime)

获取历史消息文件下载地址

导出聊天记录接口不是实时接口,获取成功存在一定的延时,不能够作为实时拉取消息的接口使用。以下 API 均需要企业管理员权限才能访问。此接口一次只能获取一个小时的历史消息。

参数
int$datetime时间,每次只能获取一小时的消息,格式为 yyyyMMddHH 如 2018112717。
返回
string|array 聊天记录文件下载地址或者错误

◆ image()

Easemob\Message::image (   $target_type,
  $target,
  $message,
  $from = 'admin',
  $sync_device = false,
  $isOnline = false 
)

发送图片消息

参数
string$target_type发送的目标类型;users:给用户发消息,chatgroups:给群发消息,chatrooms:给聊天室发消息
array$target发送的目标;注意这里需要用数组,数组内添加的最大用户数默认 600 个,即使只有一个用户,也要用数组 [‘u1’];给用户发送时数组元素是用户名,给群组发送时,数组元素是 groupid。
array$message消息内容
string$from表示消息发送者;无此字段 Server 会默认设置为 "from": "admin",有 from 字段但值为空串 ("") 时请求失败
string$sync_device消息发送成功后,是否将消息同步给发送方。true:是;false(默认):否。
boolean$isOnline该参数值为 true 时,代表 routetype 的值为 “ROUTE_ONLINE”,表示发送消息时只有接收方在线时,才进行消息投递。若接收方离线,将不会收到此条消息。
返回
array 发送给的目标和对应消息 id 的数组或者错误

◆ isMessageDeliveredToUser()

Easemob\Message::isMessageDeliveredToUser (   $username,
  $msgId 
)

获取某条离线消息状态

参数
string$username用户名
string$msgId消息 ID 编号
返回
string|array 离线消息状态(delivered:表示状态为消息已投递;undelivered:表示消息未投递;msg_not_found:消息不存在)或者错误

◆ location()

Easemob\Message::location (   $target_type,
  $target,
  $message,
  $from = 'admin',
  $sync_device = false,
  $isOnline = false 
)

发送位置消息

参数
string$target_type发送的目标类型;users:给用户发消息,chatgroups:给群发消息,chatrooms:给聊天室发消息
array$target发送的目标;注意这里需要用数组,数组内添加的最大用户数默认 600 个,即使只有一个用户,也要用数组 [‘u1’];给用户发送时数组元素是用户名,给群组发送时,数组元素是 groupid。
array$message消息内容
string$from表示消息发送者;无此字段 Server 会默认设置为 "from": "admin",有 from 字段但值为空串 ("") 时请求失败
string$sync_device消息发送成功后,是否将消息同步给发送方。true:是;false(默认):否。
boolean$isOnline该参数值为 true 时,代表 routetype 的值为 “ROUTE_ONLINE”,表示发送消息时只有接收方在线时,才进行消息投递。若接收方离线,将不会收到此条消息。
返回
array 发送给的目标和对应消息 id 的数组或者错误

◆ text()

Easemob\Message::text (   $target_type,
  $target,
  $message,
  $from = 'admin',
  $sync_device = false,
  $isOnline = false 
)

发送文本消息

参数
string$target_type发送的目标类型;users:给用户发消息,chatgroups:给群发消息,chatrooms:给聊天室发消息
array$target发送的目标;注意这里需要用数组,数组内添加的最大用户数默认 600 个,即使只有一个用户,也要用数组 [‘u1’];给用户发送时数组元素是用户名,给群组发送时,数组元素是 groupid。
array$message消息内容
string$from表示消息发送者;无此字段 Server 会默认设置为 "from": "admin",有 from 字段但值为空串 ("") 时请求失败
string$sync_device消息发送成功后,是否将消息同步给发送方。true:是;false(默认):否。
boolean$isOnline该参数值为 true 时,代表 routetype 的值为 “ROUTE_ONLINE”,表示发送消息时只有接收方在线时,才进行消息投递。若接收方离线,将不会收到此条消息。
返回
array 发送给的目标和对应消息 id 的数组或者错误

◆ video()

Easemob\Message::video (   $target_type,
  $target,
  $message,
  $from = 'admin',
  $sync_device = false,
  $isOnline = false 
)

发送视频消息

参数
string$target_type发送的目标类型;users:给用户发消息,chatgroups:给群发消息,chatrooms:给聊天室发消息
array$target发送的目标;注意这里需要用数组,数组内添加的最大用户数默认 600 个,即使只有一个用户,也要用数组 [‘u1’];给用户发送时数组元素是用户名,给群组发送时,数组元素是 groupid。
array$message消息内容
string$from表示消息发送者;无此字段 Server 会默认设置为 "from": "admin",有 from 字段但值为空串 ("") 时请求失败
string$sync_device消息发送成功后,是否将消息同步给发送方。true:是;false(默认):否。
boolean$isOnline该参数值为 true 时,代表 routetype 的值为 “ROUTE_ONLINE”,表示发送消息时只有接收方在线时,才进行消息投递。若接收方离线,将不会收到此条消息。
返回
array 发送给的目标和对应消息 id 的数组或者错误

◆ withdraw()

Easemob\Message::withdraw (   $msgs)

服务端消息撤回

应用管理员可调用接口撤回发送的消息,默认时限为 2 分钟,如需调整请联系环信商务经理。

参数
array$msg要撤回的消息,一维数组代表撤回一条消息,二维数组代表撤回多条消息
  • msg_id String 类型,撤回消息的消息 ID。
  • to 可选,String 类型,撤回消息的接收方。如果不提供则消息体找不到就撤回不了。单聊为接收方用户名称,群组为群 ID,聊天室为聊天室 ID。
  • chat_type String 类型,撤回消息的三种消息类型:单聊:chat;群聊:group_chat;聊天室:chatroom。
  • from 可选,String 类型,消息撤回方,不传默认使用的是 admin,默认消息撤回方为原消息发送者。你可以通过用户 ID 指定消息撤回方。
  • force boolean 类型,是否为强制撤回:
    • true:是,即超过服务器保存消息时间消息也可以被撤回,具体见服务器消息保存时长;
    • false:否,若设置的消息撤回时限超过服务端的消息保存时间,请求消息撤回时消息可能由于过期已在服务端删除,消息撤回请求会失败,即无法从收到该消息的客户端撤回该消息。
返回
array 撤回的消息或者错误