static void Main(string[] args) { var config = Stormancer.ClientConfiguration.ForAccount("d81fc876-6094-3d92-a3d0-86d42d866b96", "hello-world-tutorial"); //config.ServerEndpoint = "http://localhost:8081"; var client = new Stormancer.Client(config); client.GetPublicScene("main", "hello").ContinueWith( t => { var scene = t.Result; scene.AddRoute("msg", p => { Console.WriteLine(p.ReadObject <string>()); }, null); scene.Connect().ContinueWith(t2 => { if (t2.IsCompleted) { } else { Console.WriteLine("Bad stuff happened..."); } }); }); Console.ReadLine(); }
public async Task Run(dynamic configuration, string[] args, Action <string, float> sendMetric, Action <string> error) { bool online = false; try { string endpoint = configuration.app.endpoint; string appName = configuration.app.application; string appAccount = configuration.app.account; //string impersonationKey = configuration.app.impersonationKey; //string claimValue = configuration.app.claimValue; //string claimPath = configuration.app.claimPath; var config = Stormancer.ClientConfiguration.ForAccount(appAccount, appName); config.ServerEndpoint = endpoint; config.Logger = new DefaultLogger(); var client = new Stormancer.Client(config); var auth = new Authentication(client); var id = args.Any() ? args[0] : Guid.NewGuid().ToString(); await Measure(() => { return(auth.Login(id)); }, "login", sendMetric); //var scene = await Measure(() => //{ // return auth.Locate("apoc.character", ""); //}, "connect.locateService", sendMetric); online = true; client.Disconnect(); } catch (Exception ex) { error(ex.Message); online = false; } finally { sendMetric("online", online ? 1f : 0f); } }
public Task Start(Stormancer.Client client) { if (!IsRunning) { _client = client; return Initialize(); } return Task.FromResult(true); }