Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Import new module "Teamspeak3" #292

Open
wants to merge 33 commits into
base: master
Choose a base branch
from
Open

Import new module "Teamspeak3" #292

wants to merge 33 commits into from

Conversation

M4LuZ
Copy link
Collaborator

@M4LuZ M4LuZ commented May 22, 2018

Had this one lying around for quite a bit.
Provides basic functionality to integrate a TeamSpeak3 server into LanSuite.
Does support a server overview (channels and users) and allows a direct joining by creating a link.
Envisioned (and started functionality) would also allow the automated creation of tournament channels with one-time passwords.

So, to merge this the following still has to be done:

  • complete migration from static inclusions to composer autoloading
  • rewrite paths for images
  • refactoring
  • test that it still works

@andygrunwald
Copy link
Collaborator

I had a small look at it.

  • Complete migration from static inclusions to composer autoloading: Done
  • Rewrite paths for images: Done
  • Refactoring: Done
  • Test that it still works

There is a Teamspeak3 class. This class is not in use at all.
Furthermore, it seems that there is code missing or is the functionality like adding channels for tournaments not implemented?

composer.json Outdated Show resolved Hide resolved
@M4LuZ M4LuZ added this to the LanSuite 5.0 RC milestone Sep 12, 2018
@M4LuZ M4LuZ requested a review from andygrunwald May 6, 2022 21:38
@M4LuZ
Copy link
Collaborator Author

M4LuZ commented May 6, 2022

As the general caching stuff is merged I would also pull this in now. hope anyone can give this a quick review?

@M4LuZ M4LuZ requested a review from a team May 6, 2022 22:33
@andygrunwald
Copy link
Collaborator

@M4LuZ Is this still valid? Do you plan to rebase / re-pick this up and update it?
Just raising the question before I jump into a review.

@andygrunwald
Copy link
Collaborator

@M4LuZ Is this still valid? Do you plan to rebase / re-pick this up and update it?
Just raising the question before I jump into a review.

@andygrunwald
Copy link
Collaborator

@M4LuZ I am planning to go through the open Pull Requests and see which one we can finish/merge and get value from or which one we should abandon and close without merging.

How do you feel about this one?

I am not a user of Teamspeak, that's why I can't say much about it. Would be great to have a decision to clean up the existing PRs.

@M4LuZ
Copy link
Collaborator Author

M4LuZ commented Feb 22, 2024

Hi @andygrunwald,

yes, I would clean-up and merge this on short notice.
the unused class (& functions) were intended to provide a more abstract and extended functionality, but I intend to cover that with a generic module (as per #828) and leave this with the current functionality that it provides

@andygrunwald
Copy link
Collaborator

@M4LuZ Ok. Let me know once this is ready again for review.

Copy link

sonarcloud bot commented Feb 23, 2024

Quality Gate Failed Quality Gate failed

Failed conditions
1 Security Hotspot
E Security Rating on New Code (required ≥ A)
E Reliability Rating on New Code (required ≥ A)

See analysis details on SonarCloud

idea Catch issues before they fail your Quality Gate with our IDE extension SonarLint SonarLint

modules/teamspeak3/show.php Dismissed Show dismissed Hide dismissed
Switch to dev-master due to PHP 8.1 incompatibility
Work on Server-URL generation
Now stuck at namespacing
@M4LuZ
Copy link
Collaborator Author

M4LuZ commented Apr 7, 2024

I'm banging my head against the wall now after spending multiple hours trying to identify why inclusion of the framework through the namespace fails.

I guess that it is a stupid mistake, but I cannot find it
I did an example implementation in show.php based on https://github.com/planetteamspeak/ts3phpframework/tree/dev?tab=readme-ov-file#php-code-in-mvc-use-solution , but it fails on autoloading of TeamSpeak3 in line 22.
Manual inclusion causes the framework itself to fail once it tries to instantiate the right object as it then cannot find it's own class definition for ts3server.

@andygrunwald: It would be great if you could have a look, as I fail to identify the issue

@andygrunwald
Copy link
Collaborator

@M4LuZ I had a quick look at it and did:

  • Included the last stable version and not the development version: d8c4ea6
  • Fix inclusion of the classes: f5024c5
  • Fix syntax error in the tests: 6db412c

It seems that ts3server vs. serverquery was the issue. I don't see ts3server anywhere in the documentation. It seems that serverquery as a scheme is the right one.

Now, the page fails with logic/connection, see

Screenshot 2024-04-08 at 13 42 55

At least, the classes are available. Does this help you to continue on this?

@M4LuZ
Copy link
Collaborator Author

M4LuZ commented Apr 8, 2024

Yes, that does help.
I did miss the obvious, many thanks for that!

We may need to stay on dev-master till their next release as there is a function breaking memory leak issue with PHP 8.1 in the composer version that I did hit personally. (see planetteamspeak/ts3phpframework#203)

@M4LuZ
Copy link
Collaborator Author

M4LuZ commented Apr 9, 2024

Right, progress has been made while having not been made at the same time:

  • return to last stable directly runs into out-of-memory issue on any connection error, thus not viable for the moment.
    The wild thing is, that dev-master is apparently the package before renaming to dev-dev and is on state of release 1.1.35, thus originally also before PHP 8.x compatibility.
    But it works whereas the latest release on state of dev-dev / 1.2.1 does not?
  • Namespacing issue with dev-master identified: There isn't any.
    Release uses PSR-4 autoloading and Namespace PlanetTeamSpeak\TeamSpeak3Framework\ , whereas dev uses direct flle inclusion thus all framework runs in the Lansuite namespace.

I guess I have to raise a ticket with them to sort this out and pick the best tested-to-be-working version for the meantime

@lansuite lansuite deleted a comment from sonarcloud bot Apr 9, 2024
@lansuite lansuite deleted a comment from sonarcloud bot Apr 9, 2024
Copy link

sonarcloud bot commented Apr 10, 2024

Quality Gate Failed Quality Gate failed

Failed conditions
2 Security Hotspots
E Reliability Rating on New Code (required ≥ A)

See analysis details on SonarCloud

Catch issues before they fail your Quality Gate with our IDE extension SonarLint

@M4LuZ
Copy link
Collaborator Author

M4LuZ commented Apr 20, 2024

Just a quick FYI that this is on hold till memory leak has been solved in the framework.
Ticket raised here: planetteamspeak/ts3phpframework#216

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants