public async Task GetBucketKey() { var key = _contextManager.GetBucketKey(node); key.ShouldNotBeNull(); key.ShouldBe("testUser_UserContext"); }
public async Task <bool> HandleAsync(Message message, CancellationToken cancellationToken) { try { var action = message.Content.ToString().Trim(); action = RemoveDevTag(action); if (action.Equals("")) //DevAction to delete current user from the bot's context { var bucketKey = _contextManager.GetBucketKey(message.From); await _bucket.DeleteAsync(bucketKey); await _sender.SendMessageAsync("DELETION DONE", message.From, cancellationToken); } else if (action.Equals("")) //DevAction to refresh scheduled messages. TODO: automate { if (message.From.Name.Equals("")) //To make sure no one exploits this, set the Main Dev identifier from facebook here { await _scheduler.UpdateBroadcastMessagesAsync(_owlFilter, _settings); await _sender.SendMessageAsync("UPDATE DONE", message.From, cancellationToken); } else { await _sender.SendMessageAsync("NOT MAIN DEV. ABORTING", message.From, cancellationToken); throw new Exception(); } } return(true); } catch (Exception ex) { return(false); } }