Microsoft Azure has a great service to host apps called App Service which allows you to connect and expose a database via an awesome feature called Easy Tables. App Service also allows you to easily created various API endpoints for your game, via the Easy APIs feature. Moreover, Azure Storage has a great NoSQL key-value store called Table Storage Service which can be used to store precious data for your game (such as highscores, save data, chat logs etc.). This library also contains some methods to access Table Storage Service from within a Unity game. One can also use Azure Event Hubs, a hyper-scale telemetry ingestion service that collects, transforms, and stores millions of events.
In the project source files you can find two scenes, one that contains demos for App Service and one for Table Storage.
There are three blog posts that describe the library and its usage
- Original blog post describing the library and Easy Tables access
- Updates, fixes and workarounds
- Accessing Table Storage
In the root folder you'll find two scenes that contain demos for App Service and Storage interaction, respectively. Their relevant source files exist in the UIScripts folder. Main library resides in the AppServicesForUnity folder. In this folder, the AppService and Storage folders contain isolated code about AppService and Storage, respectively whereas the Shared folder contains code used by both. So, in order to use this library in your Unity game, copy the AppServicesForUnity folder into your project and delete the folder you do not need. To use the library, copy the relevant code from the UIScripts folder.
- Added method to post data to Azure Event Hub
- Added methods to access Azure Table Service to use as a game backend
- Changes in Easy APIs API (no, that's correct!) so that there are two methods now, one to return a single and one to return multiple results
- Fix for use on Android, check details here: dgkanatsios#4
- Updated for use with Unity 5.4 (removed "Experimental" from UnityWebRequest namespace)
- Fixed a couple of reported issues on OSX and iOS
- Fixed IncludeTotalCount() issue
- Namespace changes, separating Easy Table and Easy APIs
- Target for next version is a *.unitypackage file creation, fingers crossed!
- Fix for issue about [OData not working on iOS] (dgkanatsios#1). Many thanks to Matt Warren for pointing me to a PartialEvaluator solution that does not use Reflection.Emit (check here) and 9 to Friday studio for precious help in debugging.
- Integrated the (much better) official OData query translator from the official App Service .NET client
- Initial commit