安装教程:https://github.com/firebase/php-jwt
use Firebase\JWT\JWT;
function pubSubAccessToken($id, $protectedChannel){
$payload = array(
"id" => $id,//必须与connect GoEasy时传入的id一致
"channel" => $protectedChannel,//要授权的channel
"w" => true,//写权限,是否允许publish
"r" => true,//读全新,是否允许subscriber
"exp"=> strtotime('+3 hour')//token的有效时间,最长不能超过3小时,为了安全,GoEasy不接受有效时间大于3小时的access token
);
//应用的Secret key,登陆GoEasy->应用详情->Professional keys->Secret key
$secretKey = "f7e4cf0f5c6db52d";
$accessToken = JWT::encode($payload, $secretKey);
return $accessToken;
}
use Firebase\JWT\JWT;
function privateChatAccessToken($id, $toId){
$payload = array(
"id" => $id,//必须与connect GoEasy时传入的id一致
"to" => $toId,//私聊对象的id
"w" => true,//写权限,是否允许发送
"exp"=> strtotime('+3 hour')//token的有效时间,最长不能超过3小时,为了安全,GoEasy不接受有效时间大于3小时的access token
);
//应用的Secret key,登陆GoEasy->应用详情->Professional keys->Secret key
$secretKey = "f7e4cf0f5c6db52d";
$accessToken = JWT::encode($payload, $secretKey);
return $accessToken;
}
use Firebase\JWT\JWT;
function groupChatAccessToken($id, $groupIds){
$payload = array(
"id" => $id,//必须与connect GoEasy时传入的id一致
"to" => $groupIds,//需要授权的groupId列表, 支持一次为多个群授权
"w" => true,//写权限,是否允许发送
"r"=> true, //写权限,是否允许订阅群消息
"exp"=> strtotime('+3 hour')//token的有效时间,最长不能超过3小时,为了安全,GoEasy不接受有效时间大于3小时的access token
);
//应用的Secret key,登陆GoEasy->应用详情->Professional keys->Secret key
$secretKey = "f7e4cf0f5c6db52d";
$accessToken = JWT::encode($payload, $secretKey);
return $accessToken;
}