post() ?? ''; if(empty($data)) return; if($data['SdkAppid'] == env('TENCENT_IM_APP_ID')) file_put_contents('logs/tencent.log',var_export($data,true).PHP_EOL,FILE_APPEND); switch ($data['CallbackCommand']){ /** * 在线状态 */ case "State.StateChange": //状态变更回调 if($data['Action']=='Login'){ $online = 1; }else{ $online = 0; } //修改用户状态 User::query()->where(['tencent_im_user_id'=>$data['To_Account'],'status'=>1])->update(['online'=>$online]); break; /** * 资料关系链 */ case "Sns.CallbackPrevFriendAdd": //添加好友之前回调 break; case "Sns.CallbackPrevFriendResponse": //添加好友回应之前回调 break; case "Sns.CallbackFriendAdd": //添加好友之后回调 break; case "Sns.CallbackFriendDelete": //删除好友之后回调 break; case "Sns.CallbackBlackListAdd": //添加黑名单之后回调 break; case "Sns.CallbackBlackListDelete": //删除黑名单之后回调 break; /** * 单聊消息 */ case "C2C.CallbackBeforeSendMsg": //发单聊消息之前回调 break; case "C2C.CallbackAfterSendMsg": //发单聊消息之后回调 break; case "C2C.CallbackAfterMsgReport": //单聊消息已读上报后回调 break; case "C2C.CallbackAfterMsgWithDraw": //单聊消息撤回后回调 break; /** * 群组系统 */ case "Group.CallbackBeforeCreateGroup": //创建群组之前回调 break; case "Group.CallbackAfterCreateGroup": //创建群组之后回调 break; case "Group.CallbackBeforeApplyJoinGroup": //申请入群之前回调 break; case "Group.CallbackBeforeInviteJoinGroup": //拉人入群之前回调 break; case "Group.CallbackAfterNewMemberJoin": //新成员入群之后回调 break; case "Group.CallbackAfterMemberExit": //群成员离开之后回调 break; case "Group.CallbackBeforeSendMsg": //群内发言之前回调 break; case "Group.CallbackAfterSendMsg": //群内发言之后回调 break; case "Group.CallbackAfterGroupFull": //群组满员之后回调 break; case "Group.CallbackAfterGroupDestroyed": //群组解散之后回调 break; case "Group.CallbackAfterGroupInfoChanged": //群组资料修改之后回调 break; } } }