public static string GetRecipientInfo()
 {
     if (ConfigReader.GetRecipientType() == "user" || ConfigReader.GetRecipientType() == "channel")
     {
         return($"'{ConfigReader.GetRecipientName()}'");
     }
     else
     {
         throw new Exception("\nApp.config: invalid value for key['RecipientType'].\nValue must be 'user' or 'channel' only!");
     }
 }
Esempio n. 2
0
        public static async Task SendMessageToChannelAsync(string message)
        {
            var client = NewClient();
            await client.ConnectAsync();

            // get user dialogs
            var dialogs = (TLDialogs)await client.GetUserDialogsAsync();

            // find chat in contacts
            var chat = dialogs.Chats
                       .Where(c => c.GetType() == typeof(TLChannel))
                       .Cast <TLChannel>()
                       .FirstOrDefault(c => c.Title == ConfigReader.GetRecipientName());
            // send message
            await client.SendMessageAsync(new TLInputPeerChannel()
            {
                ChannelId = chat.Id, AccessHash = chat.AccessHash.Value
            }, message);

            Logger.Log.Debug("Telegram message to Channel was sent successfully.");
        }
Esempio n. 3
0
        public static async Task SendMessageToUserAsync(string message)
        {
            var client = NewClient();
            await client.ConnectAsync();

            // get available contacts
            var result = await client.GetContactsAsync();

            // find recipient in contacts
            TLUser user = result.Users.OfType <TLUser>().FirstOrDefault(x => x.Username == ConfigReader.GetRecipientName());
            // send message
            await client.SendMessageAsync(new TLInputPeerUser()
            {
                UserId = user.Id
            }, message);

            Logger.Log.Debug("Telegram message to User was sent successfully.");
        }