Exemple #1
0
        public async Task <MethodResult <RocketMessage> > MessageWrite(string message)
        {
            if (Driver == null)
            {
                return(null);
            }

            return(await Driver.SendMessageAsync(message, RoomId));
        }
Exemple #2
0
        private void DriverOnMessageReceived(RocketMessage rocketMessage)
        {
            Task.Run(async() =>  // async this to prevent holding up the message loop
            {
                foreach (var botResponse in _botResponses)
                {
                    var hasResponse = false;
                    foreach (var response in botResponse.Response(rocketMessage))
                    {
                        hasResponse = true;
                        await _driver.SendMessageAsync(response.Message, response.RoomId);
                    }

                    if (hasResponse)
                    {
                        break;
                    }
                }
            });
        }