public async Task Unsubscribe(IGenaSubscription subscription) { GenaSubscription sub = subscription as GenaSubscription; if (sub == null) { return; } HttpRequestMessage httpRequest = new HttpRequestMessage(new HttpMethod("UNSUBSCRIBE"), sub.Address); httpRequest.Headers.Clear(); httpRequest.Headers.Add("HOST", sub.Address.Authority); httpRequest.Headers.Add("SID", subscription.Id); await HttpHandler.SendAsync(httpRequest); }
public async Task SubscribeToEvents(GenaSubscriptionHandler handler, string callbackUrl, int timeout) { if (_subscription != null) { return; } GenaSubscriptionRequest request = new GenaSubscriptionRequest() { BaseAddress = new Uri(Service.BaseUrl), PublisherPath = Service.EventSubUrl, Timeout = timeout, Callback = callbackUrl }; _subscription = await handler.Subscribe(request); _subscription.OnNotify += HandleOnNotify; if (_subscription.LastOnNotify != null) { HandleOnNotify(null, _subscription.LastOnNotify); } }