public async Task EchoAsync(Update update) { if (update.Type != UpdateType.Message && update.Type != UpdateType.CallbackQuery) { return; } // callback from buttons if (update.Type == UpdateType.CallbackQuery) { _logger.LogInformation("Received Callback from {0}", update.CallbackQuery.Message.Chat.Id); _messageType = TextMessageService.Create(_botService, update.CallbackQuery); } else { var message = update.Message; _logger.LogInformation("Received Message from {0}", message.Chat.Id); _messageType = message.Type switch { MessageType.Text => TextMessageService.Create(_botService, message), MessageType.Photo => new PhotoMessageService(_botService, message), _ => new UnknownTypeService(_botService, message) }; } await _messageType.ProcessMessage(); } }
public NetworkManager() { SettingsManager settingsManager = new SettingsManager("C:\\Users\\VasyutkinKP\\Documents\\GitHub\\Pet-project\\Server\\bin\\Debug\\ServerConfig.xml"); _transport = settingsManager.Transport; _ip = settingsManager.Ip; _port = settingsManager.Port; _timeout = settingsManager.Timeout; _connectionString = settingsManager.ConnectionSettings; DatabaseController databaseController = new DatabaseController(_connectionString); if (_transport == "WebSocket") { _wsServer = new WsServer(new IPEndPoint(_ip, _port)); _wsServer.ConnectionStateChanged += HandleConnectionStateChanged; _wsServer.ConnectionReceived += HandleConnectionReceived; _wsServer.MessageReceived += HandleMessageReceived; _wsServer.ErrorReceived += HandleErrorReceived; _wsServer.FilterReceived += HandleFilterReceived; _wsServer.CreateGroupReceived += HandleCreateGroupReceived; _wsServer.LeaveGroupReceived += HandleLeaveGroupReceived; _wsServer.Timeout = _timeout; } _txtMsgService = new TextMessageService(databaseController); _clientEventService = new ClientEventService(databaseController); _clientService = new ClientService(databaseController); _groupService = new GroupService(databaseController); }
public RegtimeConsole( string configurationPath) { _configurationService = new ConfigurationService(configurationPath); _textMessageService = new TextMessageService(_configurationService); var slackConfiguration = _configurationService.Configuration.Slack; _slackService = new SlackService(slackConfiguration.Token, slackConfiguration.Username, slackConfiguration.Channel, slackConfiguration.Account); }
private static void BuildSendCommand(CommandLineApplication app) { app.Command("send", (command) => { var key = command.Option("-k|--key", "Chave de envio da API.", CommandOptionType.SingleValue); var sender = command.Option("-s|--sender", "Remetente da mensagem que será enviada.", CommandOptionType.SingleValue); var content = command.Option("-c|--content", "Conteúdo da mensagem que será enviada.", CommandOptionType.SingleValue); var receiver = command.Option("-r|--receiver", "Destinatário da mensagem que será enviada.", CommandOptionType.SingleValue); command.OnExecute(() => { var textMessageService = new TextMessageService(key.Value()); var result = textMessageService.Send(sender.Value(), content.Value(), new string[] { receiver.Value() }); Console.WriteLine(result.Message); }); }); }
private void sendSms(string mensagem, string[] telefones) { var textMessageService = new TextMessageService(_configuration.GetSection("ApiKeySms").Value); var result = textMessageService.Send( "appVacinas", // Sender: Id de requisicao da sua aplicacao para ser retornado no relatorio, pode ser passado em branco. mensagem, // Content: Conteudo da mensagem a ser enviada. telefones // Receivers: Numero de telefone que vai ser enviado o SMS. ); if (result.Success) { _logger.LogInformation("A mensagem foi enviada com sucesso."); } else { _logger.LogInformation("A mensagem não pode ser enviada. Detalhes: " + result.Message); } }
static void Main(string[] args) { var video = new Video { Title = "Video1" }; var videoEncoder = new VideoEncoder(); // this is the event publisher // event subscribers var emailService = new EmailService(); var textMessageService = new TextMessageService(); // Register the event handlers // this event will be handled by different overrides of the OnVideoEncoded method // provided by various subscriber objects (emailService and textMessageService here) videoEncoder.VideoEncoded += emailService.OnVideoEncoded; videoEncoder.VideoEncoded += textMessageService.OnVideoEncoded; // eventually call the main app which contains the event publisher videoEncoder.Encode(video); }
private static void BuildDetailedReportCommand(CommandLineApplication app) { app.Command("report", (command) => { var key = command.Option("-k|--key", "Chave de envio da API.", CommandOptionType.SingleValue); var startDate = command.Option("-s|--startdate", "Data inicial do relatório de respostas.", CommandOptionType.SingleValue); var endDate = command.Option("-e|--enddate", "Data final do relatório de respostas.", CommandOptionType.SingleValue); var file = command.Option("-f|--file", "Nome do arquivo que as respostas serão salvas", CommandOptionType.SingleValue); command.OnExecute(() => { Console.WriteLine("Buscando relatório..."); var textMessageService = new TextMessageService(key.Value()); var result = textMessageService.GetDetailedReport(DateTime.Parse(startDate.Value()), DateTime.Parse(endDate.Value()), Sdk.Core.Resources.DeliveryStatus.All); if (result.Success) { Console.WriteLine("Processando relatório..."); var builder = new StringBuilder(); builder.AppendLine($"SENDER;RECEIVER;CONTENT;SYSTEM MESSAGE;STATUS;REQUEST DATE;SCHEDULE DATE"); foreach (var message in result.Object) { builder.AppendLine($"{message.Sender};{message.Receiver};{message.Content};{message.SystemMessage};{message.Status};{message.RequestDate:yyyy-MM-dd HH:mm:ss};{(message.ScheduleDate == null ? "Sem Agendamento" : message.ScheduleDate?.ToString("yyyy-MM-dd HH:mm:ss"))}"); }