I got a strange thing going on with GameSparks. I'm using your Plugin, despite the fact that I changed the "SceneComponent" to a "UObject", cause there is zero need for this to be a SceneComponent (ActorComponent would be the choice here) AND I want to have this in my GameInstance, so I made it a UObject.
After packaging and starting the Server on my own PC, everything works fine. Uploading the same files to the AWS GameLift Servers spams my log with this:
[2017.05.06-17.32.28:929][ 0]UGameSparksModuleLog: Received websocket error: X509 - Certificate verification failed, e.g. CRL, CA or signature check failed
[2017.05.06-17.32.28:930][ 0]UGameSparksModuleLog: Got websocket error. Please make sure, that you've setup you credentials.
[2017.05.06-17.32.28:930][ 0]UGameSparksModuleLog: Backing off for one seconds
[2017.05.06-17.32.29:958][ 31]UGameSparksModuleLog: Create new connection
And it doesn't stop. What causes this and how can I fix this?
Hi Cedric, this must have slipped through without me seeing it. I do apologise.
In regards to your original enquiry. There is no need to persist the GameSparks UComponent as it is a proxy to the GameSparks module, so every UComponent will point to the same module which we make sure is persistent. We need to have it in the GameMode because it gives us the variables we need to ensure our Websocket runs properly.
Your second enquiry, does this happen when the UComponent is in the GameMode?
Installing "addtrustexternalcaroot.crt" is not solving the problem. Still couldn't find which crt should I install because there are too many.
Pushing this as I still don't have a solution. :/
I haven't tested this yet, as my "UObject" (previous USceneComponent) sits in my GameInstance.
Could you tell me why exactly it needs the GameMode?
The error only comes up when hosting it on the GameLift server.
On my own Computer, it works fine. I could test it later, but I would rather like to know what the GameMode has that the GameInstance isn't offering for your Plugin/Websocket? The GameInstance persists during the whole Session of the Server.
The error clearly states "MBEDTLS_ERR_X509_CERT_VERIFY_FAILED", so I have a hard time understand what the GameMode vs GameInstance has to do with it. I'll setup a test case, while waiting on a response to my GameMode question. Thanks for your time!
From what I understand our initial decision to use the GameMode approach had something to do with the UE4 at the time, our resources, understanding of UE4 and the way we wanted websockets to work 2 years ago. We're going to be giving this another evaluation soon.
We're looking at your issue right now.
Also I've upgraded this forum post to a ticket so I can follow it closely. Ticket number is: 5377
I will be asking you questions there.