This commit is contained in:
commie
2026-02-24 21:02:17 +08:00
parent 6586f27c9e
commit c9c8a120ab
12 changed files with 345 additions and 103 deletions
+233 -26
View File
@@ -19,6 +19,7 @@ class HookController{
"nextCode"=> 0
]);
}
//用户注册完成后
function callbackAfterUserRegisterCommand(Request $request): Response
{
$userID= Input('userID');
@@ -60,25 +61,25 @@ class HookController{
{
//log_alert(Input());
$user_id = Input('sendID');
$recv_user_id = Input( 'recvID');
$status = Input('status',1);
$sessionType = Input('sessionType',null);
if($status == 1 && $sessionType != 4){
//$max = 10000000000;//限制消息数量
$user_rights = get_user_rights($user_id);
$max = $user_rights['max_send_msg_count'];
$sended_msg_count = cache('single_msg_count_'.$user_id)??0 + cache('group_msg_count_'.$user_id)??0;
if($sended_msg_count > $max){
return json([
"actionCode" => 0,
"errCode" => 1002,
"errMsg" => "超出消息数量限制,请先开通或升级会员",
"errDlt" => "超出消息数量限制,请先开通或升级会员",
"nextCode"=> 1
]);
}
}
// $user_id = Input('sendID');
// $recv_user_id = Input( 'recvID');
// $status = Input('status',1);
// $sessionType = Input('sessionType',null);
// if($status == 1 && $sessionType != 4){
// //$max = 10000000000;//限制消息数量
// $user_rights = get_user_rights($user_id);
// $max = $user_rights['max_send_msg_count'];
// $sended_msg_count = cache('single_msg_count_'.$user_id)??0 + cache('group_msg_count_'.$user_id)??0;
// if($sended_msg_count > $max){
// return json([
// "actionCode" => 0,
// "errCode" => 1002,
// "errMsg" => "超出消息数量限制,请先开通或升级会员",
// "errDlt" => "超出消息数量限制,请先开通或升级会员",
// "nextCode"=> 1
// ]);
// }
// }
return json([
"actionCode" => 0,
"errCode" => 0,
@@ -122,8 +123,6 @@ class HookController{
*/
public function callbackBeforeSendGroupleMsgCommand(Request $request): Response
{
//log_alert('callbackBeforeSendGroupleMsgCommand:');
//log_alert(Input());
return json([
"actionCode" => 0,
"errCode" => 0,
@@ -138,9 +137,6 @@ class HookController{
*/
public function callbackAfterSendGroupleMsgCommand(Request $request): Response
{
//log_alert('callbackAfterSendGroupleMsgCommand:');
//log_alert(Input());
return json([
"actionCode" => 0,
"errCode" => 0,
@@ -160,7 +156,7 @@ class HookController{
$handleResult = Input('handleResult');
$key = 'friend_count_'.$from_user_id;
$user_rights = get_user_rights($from_user_id);
$max = $user_rights['max_friend_count'];
$max = isset($user_rights['max_friend_count']) ? $user_rights['max_friend_count'] : -1;
if(cache($key) > $max){
return json([
"actionCode" => 0,
@@ -210,7 +206,7 @@ class HookController{
if($handleResult == 1){
$key = 'friend_count_'.$to_user_id;
$user_rights = get_user_rights($to_user_id);
$max = $user_rights['max_friend_count'];
$max = isset($user_rights['max_friend_count']) ? $user_rights['max_friend_count'] : -1;
if(cache($key) > $max){
return json([
"actionCode" => 0,
@@ -276,6 +272,8 @@ class HookController{
"nextCode"=> 0
]);
}
//用户删除好友之后得回调
function callbackAfterDeleteFriendCommand() : Response {
$friendUserID = Input('friendUserID');
$ownerUserID = Input('ownerUserID');
@@ -297,6 +295,215 @@ class HookController{
"nextCode"=> 0
]);
}
/**
* 在创建群组之前的回调
* @return void
*/
public function callbackbeforeCreateGroupCommand(Request $request): Response
{
$from_user_id = Input('fromUserID');
$to_user_id = Input('toUserID');
$handleResult = Input('handleResult');
if($handleResult == 1){
$key = 'friend_count_'.$to_user_id;
$user_rights = get_user_rights($to_user_id);
$max = isset($user_rights['max_friend_count']) ? $user_rights['max_friend_count'] : -1;
if(cache($key) > $max){
return json([
"actionCode" => 0,
"errCode" => 1001,
"errMsg" => "超出好友数量限制,请先开通或升级会员",
"errDlt" => "超出好友数量限制,请先开通或升级会员",
"nextCode"=> 1
]);
}
}
return json([
"actionCode" => 0,
"errCode" => 0,
"errMsg" => "",
"errDlt" => "",
"nextCode"=> 0
]);
}
/**
* 在创建群组之后的回调
* @param Request $request
* @return void
*/
public function callbackafterCreateGroupCommand(Request $request):Response
{
return json([
"actionCode" => 0,
"errCode" => 0,
"errMsg" => "",
"errDlt" => "",
"nextCode"=> 0
]);
}
/**
* 转让群主之后的回调
* @param Request $request
* @return void
*/
public function callbackAfterTransferGroupOwnerCommand(Request $request):Response
{
$oldOwnerUserID = Input('oldOwnerUserID');
$newOwnerUserID = Input('newOwnerUserID');
cache_add('user_'.$oldOwnerUserID.'_create_group_count',-1);
cache_add('user_'.$newOwnerUserID.'_create_group_count',1);
return json([
"actionCode" => 0,
"errCode" => 0,
"errMsg" => "",
"errDlt" => "",
"nextCode"=> 0
]);
}
/**
* 解散群组后回调
* @param Request $request
* @return void
*/
public function callbackAfterDisMissGroupCommand(Request $request):Response
{
$groupID = Input('groupID');
$ownerID = Input('ownerID');
return json([
"actionCode" => 0,
"errCode" => 0,
"errMsg" => "",
"errDlt" => "",
"nextCode"=> 0
]);
}
/**
* 用户退出群组的回调
* @param Request $request
* @return void
*/
public function callbackAfterQuitGroupCommand(Request $request):Response
{
$groupID = Input('groupID');
$userID = Input('userID');
cache_add('user_'.$userID.'_join_group_count',-1);
cache_add('group_'.$groupID.'_user_count',-1);
return json([
"actionCode" => 0,
"errCode" => 0,
"errMsg" => "",
"errDlt" => "",
"nextCode"=> 0
]);
}
/**
* 群成员进群之前的回调
* @param Request $request
* @return void
*/
public function callbackBeforeMembersJoinGroupCommand(Request $request):Response
{
$groupID = Input('groupID');
$memberList = Input('memberList');
return json([
"actionCode" => 0,
"errCode" => 0,
"errMsg" => "",
"errDlt" => "",
"nextCode"=> 0
]);
}
/**
* 踢除群组成员的回调
* @param Request $request
* @return void
*/
public function callbackAfterKickGroupCommand(Request $request):Response
{
$groupID = Input('groupID');
$kickedUserIDs = Input('kickedUserIDs');
return json([
"actionCode" => 0,
"errCode" => 0,
"errMsg" => "",
"errDlt" => "",
"nextCode"=> 0
]);
}
/**
* 新成员加入群组之后的回调
* @param Request $request
* @return void
*/
public function callbackAfterJoinGroupCommand(Request $request):Response
{
$groupID = Input('groupID');
$userID = Input('userID');
cache_add('user_'.$userID.'_join_group_count',-1);
cache_add('group_'.$groupID.'_user_count',-1);
return json([
"actionCode" => 0,
"errCode" => 0,
"errMsg" => "",
"errDlt" => "",
"nextCode"=> 0
]);
}
/**
* 邀请新成员加入群组之前的回调
* @param Request $request
* @return void
*/
public function callbackBeforeInviteJoinGroupCommand(Request $request):Response
{
$groupID = Input('groupID');
$invitedUserIDs = Input('invitedUserIDs');
return json([
"actionCode" => 0,
"errCode" => 0,
"errMsg" => "",
"errDlt" => "",
"nextCode"=> 0
]);
}
/**
* 申请加入群组之前的回调
* @param Request $request
* @return void
*/
public function callbackBeforeJoinGroupCommand(Request $request):Response
{
$groupID = Input('groupID');
$applyID = Input('applyID');
return json([
"actionCode" => 0,
"errCode" => 0,
"errMsg" => "",
"errDlt" => "",
"nextCode"=> 0
]);
}
function getSdk(){
$IM = new \support\OpenImSdk\Client([
'host' => 'http://127.0.0.1:10002', // OpenIM API地址