Ежедневник IT-ка
133 subscribers
22 photos
4 videos
1 file
43 links
Программируем на практике!!
По вопросам по поводу проектов: @vladimir_dzen
Download Telegram
Forwarded from vladimir
Сегодня продолжю работать с ZennoPoster и Telegram, но уже в видео формате.

Основные шаги.
1.
Создание проекта.
2. Создание переменных.
3. Отправка сообщения в ТГ, 2-мя способами.

#ZennoPoster, #Telegram
Media is too big
VIEW IN TELEGRAM
Отправление фото и видео в Telegram используя ZennoPoster и библиотеку "Telegram.Bot"

#ZennoPoster, #Telegram
​​Немного предыстории.
Заказчик хотел получать сигналы от биржи в телеграмм используя Emoji.
На первый взгляд, всё просто, если вы знаете как...., но тут явного решения не было, поэтому пришлось напрячься, чтобы найти его.

1. Переходим на сайт с emoji (пример: unicode-table.com)

2. Копируем emoji в Юникоде.

3. Пишем код:

    private static ITelegramBotClient _botClient;

    static void Main(string[] args)
    {

// Читаем данные для нашего бота с ранее подготовленного .json
 BotData botData = GetUserCredential<BotData>();

 // Создаём экземпляр класса TelegramBotClient используя ITelegramBotClient
 _botClient = new TelegramBotClient(botData.Token);

   // Получаем чат ID.
 string chatID = botData.Chat;

  // Эмоджи в Юникоде.
 string emoji = "U+1F600";

  // Парсим в INT эмоджи, но уже "1F600"(т.е. без 1-х 2-х знаков), через HexNumber(шестнадцатеричное число)
 int _emoji = int.Parse(emoji.Substring(2), NumberStyles.HexNumber);

  // Отсылаем сообщение.
 _botClient.SendTextMessageAsync(chatID, "Как прекрасен этот мир! " + char.ConvertFromUtf32(_emoji)).Wait();
}

// Метод получение данных из .json
    private static T GetUserCredential<T>()
    {
      using (var fileStream = new FileStream("TGbot.json", FileMode.Open, FileAccess.Read))
      {
        string contents;
        using (var sr = new StreamReader(fileStream))
        {
          contents = sr.ReadToEnd();
        }
        return JsonConvert.DeserializeObject<T>(contents);
      }
    }

На этом всё. Код работает.

#Telegram, #CSharp