Here's how GameStow uses Pusher in three different ways.
We’ve chatted to Brandon Chez, who developed his own cloud based solution for saving game files, GameStow. He put the idea on the funding platform Kickstarter, and the project was a success. The prototype is now open and anyone can try it out for free.
GameStow helps PC Gamers to store their game progress in the cloud. Since there is no consistent hard drive location for game save files, it can be frustrating for users to hunt them down if they ever want to backup their game progress. GameStow knows exactly which files need to be backed up to the cloud and will automatically sync the necessary files once the user quits a game. It also helps keep games that are installed on multiple computers synced with the user’s latest progress, regardless of which computer the user plays from.
GameStow uses Pusher in three different ways:
The client app is a .NET 4.0 executable which monitors game save files and uses the Pusher .NET client library to be informed of new or updated files based in the cloud. When local file changes are detected by the app a request is made to the GameStow REST API, which is hosted on EC2. Whenever the API receives a sync request from the client app, it then makes calls to Amazon S3 and Amazon SDB to fetch/store the files. If they store new or updated files, the API will send an event through Pusher, using the Pusher PHP server library, to the other connected computers running the .NET app to notify them that some new files need to be downloaded.
Since all files are synced and updated in real time, the user doesn’t ever need to worry if their game save files are out of date!
WebHooks trigger events when the first person joins a channel or the last one leaves a channel. If you give each user their own unique channel, you can use WebHooks to monitor how often users are connecting to and disconnecting from your app.