Sign In Register

How can we help you today?

Start a new topic
Answered

How is Messaging API implemented?

Hi,


I am investigating the viability of using GameSparks for my game. One of my requirements is the ability to push updates down to the device in real time. For example, let's say a turn based card game where 2 players are playing against each other. I'll need to be able to receive on the server what card a player played, then send to the other player the card they used.


I believe I can do this with Cloud Code and Messaging, but what I'd like to understand is the underlying tech behind GameSparks messaging. I know it says 'socket based' or 'notification based', but what tech is actually being used? Is it using something like Firebase Cloud Messaging or Amazon SNS?


If Socket Based is used, is it using something like PubNub or is it opening a straight socket connection using proprietary code that it's keeping open? If that's the case, what kind of latency delays exist and what kind of SLA exists? For example, PubNub has global edge servers and guarantees 250 MS latency in their SLAs.


Thanks for any help!


Drew


Best Answer
Hi Drew

GameSparks is websocket based.
When using one of our client SDK's a connection is opened and kept open by use of websockets.
GameSparks has built in challenges that can be turn based with turn taken messages that would suit your type of game.
Messages are by default socket messages but can be set to push notifications as well.
If using push notification Firebase and Apple push notification services can be used.

For socket messages if the message has custom cloud code attached that will be run first so the run time of that will depend on the complexity of calculations in the script.
As for latency , that  really depends on the customers distance to the server , GameSparks provides servers in must regions to tackle latency.

As for SLA's , one of are sales people would be the best to answer that question for you.
Would you like me to pass your details on to one of our sales persons so they can go into details with you.

Regards
Katie


 


Answer
Hi Drew

GameSparks is websocket based.
When using one of our client SDK's a connection is opened and kept open by use of websockets.
GameSparks has built in challenges that can be turn based with turn taken messages that would suit your type of game.
Messages are by default socket messages but can be set to push notifications as well.
If using push notification Firebase and Apple push notification services can be used.

For socket messages if the message has custom cloud code attached that will be run first so the run time of that will depend on the complexity of calculations in the script.
As for latency , that  really depends on the customers distance to the server , GameSparks provides servers in must regions to tackle latency.

As for SLA's , one of are sales people would be the best to answer that question for you.
Would you like me to pass your details on to one of our sales persons so they can go into details with you.

Regards
Katie


 


1 person likes this

hi Katie,


Yes, thank you. Do you have an email address of someone I could contact?


Thank you for your explanations. About the regions - is redundancy built into your system? For example, often times AWS regions will have issues with certain services. AWS recommends keeping redundancy in other regions and having your code fall back to the other regions if your main region goes down for some reason. I know you guys are built on AWS as well as Azure and GCP. Do you have failover in the cases of downtime of one of the services with a provider?


Thanks,

Drew

Login to post a comment