Initial commit of LittleShop project (excluding large archives)
- BTCPay Server integration - TeleBot Telegram bot - Review system - Admin area - Docker deployment configuration 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -1,96 +1,96 @@
|
||||
using System;
|
||||
using System.Net.Http;
|
||||
using System.Text;
|
||||
using System.Text.Json;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
class TelegramClient
|
||||
{
|
||||
private static readonly string BotToken = "7330819864:AAHx9GEL-G-WeH2ON5-ncdsbbhV6YaOqZzg";
|
||||
private static readonly string ApiUrl = $"https://api.telegram.org/bot{BotToken}/";
|
||||
|
||||
static async Task Main()
|
||||
{
|
||||
Console.WriteLine("Telegram Bot Client Started...");
|
||||
|
||||
while (true)
|
||||
{
|
||||
await ReceiveMessagesAsync();
|
||||
await Task.Delay(5000); // Polling delay
|
||||
}
|
||||
}
|
||||
|
||||
private static async Task SendMessageAsync(string chatId, string message)
|
||||
{
|
||||
using HttpClient client = new HttpClient();
|
||||
var payload = new
|
||||
{
|
||||
chat_id = chatId,
|
||||
text = message
|
||||
};
|
||||
|
||||
var content = new StringContent(JsonSerializer.Serialize(payload), Encoding.UTF8, "application/json");
|
||||
try
|
||||
{
|
||||
var response = await client.PostAsync(ApiUrl + "sendMessage", content);
|
||||
var responseText = await response.Content.ReadAsStringAsync();
|
||||
|
||||
Console.WriteLine($"Response: {responseText}");
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
Console.WriteLine($"Error sending message: {ex.Message}");
|
||||
}
|
||||
}
|
||||
|
||||
private static async Task ReceiveMessagesAsync()
|
||||
{
|
||||
using HttpClient client = new HttpClient();
|
||||
try
|
||||
{
|
||||
var response = await client.GetAsync(ApiUrl + "getUpdates");
|
||||
response.EnsureSuccessStatusCode();
|
||||
|
||||
var responseText = await response.Content.ReadAsStringAsync();
|
||||
var updates = JsonSerializer.Deserialize<TelegramUpdateResponse>(responseText);
|
||||
|
||||
if (updates?.Result != null)
|
||||
{
|
||||
foreach (var update in updates.Result)
|
||||
{
|
||||
Console.WriteLine($"Received message from {update.Message.Chat.Id}: {update.Message.Text}");
|
||||
await SendMessageAsync(update.Message.Chat.Id.ToString(), "Message received!");
|
||||
}
|
||||
}
|
||||
}
|
||||
catch (HttpRequestException httpEx)
|
||||
{
|
||||
Console.WriteLine($"HTTP error: {httpEx.Message}");
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
Console.WriteLine($"Unexpected error: {ex.Message}");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
class TelegramUpdateResponse
|
||||
{
|
||||
public TelegramUpdate[] Result { get; set; }
|
||||
}
|
||||
|
||||
class TelegramUpdate
|
||||
{
|
||||
public TelegramMessage Message { get; set; }
|
||||
}
|
||||
|
||||
class TelegramMessage
|
||||
{
|
||||
public TelegramChat Chat { get; set; }
|
||||
public string Text { get; set; }
|
||||
}
|
||||
|
||||
class TelegramChat
|
||||
{
|
||||
public long Id { get; set; }
|
||||
using System;
|
||||
using System.Net.Http;
|
||||
using System.Text;
|
||||
using System.Text.Json;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
class TelegramClient
|
||||
{
|
||||
private static readonly string BotToken = "7330819864:AAHx9GEL-G-WeH2ON5-ncdsbbhV6YaOqZzg";
|
||||
private static readonly string ApiUrl = $"https://api.telegram.org/bot{BotToken}/";
|
||||
|
||||
static async Task Main()
|
||||
{
|
||||
Console.WriteLine("Telegram Bot Client Started...");
|
||||
|
||||
while (true)
|
||||
{
|
||||
await ReceiveMessagesAsync();
|
||||
await Task.Delay(5000); // Polling delay
|
||||
}
|
||||
}
|
||||
|
||||
private static async Task SendMessageAsync(string chatId, string message)
|
||||
{
|
||||
using HttpClient client = new HttpClient();
|
||||
var payload = new
|
||||
{
|
||||
chat_id = chatId,
|
||||
text = message
|
||||
};
|
||||
|
||||
var content = new StringContent(JsonSerializer.Serialize(payload), Encoding.UTF8, "application/json");
|
||||
try
|
||||
{
|
||||
var response = await client.PostAsync(ApiUrl + "sendMessage", content);
|
||||
var responseText = await response.Content.ReadAsStringAsync();
|
||||
|
||||
Console.WriteLine($"Response: {responseText}");
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
Console.WriteLine($"Error sending message: {ex.Message}");
|
||||
}
|
||||
}
|
||||
|
||||
private static async Task ReceiveMessagesAsync()
|
||||
{
|
||||
using HttpClient client = new HttpClient();
|
||||
try
|
||||
{
|
||||
var response = await client.GetAsync(ApiUrl + "getUpdates");
|
||||
response.EnsureSuccessStatusCode();
|
||||
|
||||
var responseText = await response.Content.ReadAsStringAsync();
|
||||
var updates = JsonSerializer.Deserialize<TelegramUpdateResponse>(responseText);
|
||||
|
||||
if (updates?.Result != null)
|
||||
{
|
||||
foreach (var update in updates.Result)
|
||||
{
|
||||
Console.WriteLine($"Received message from {update.Message.Chat.Id}: {update.Message.Text}");
|
||||
await SendMessageAsync(update.Message.Chat.Id.ToString(), "Message received!");
|
||||
}
|
||||
}
|
||||
}
|
||||
catch (HttpRequestException httpEx)
|
||||
{
|
||||
Console.WriteLine($"HTTP error: {httpEx.Message}");
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
Console.WriteLine($"Unexpected error: {ex.Message}");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
class TelegramUpdateResponse
|
||||
{
|
||||
public TelegramUpdate[] Result { get; set; }
|
||||
}
|
||||
|
||||
class TelegramUpdate
|
||||
{
|
||||
public TelegramMessage Message { get; set; }
|
||||
}
|
||||
|
||||
class TelegramMessage
|
||||
{
|
||||
public TelegramChat Chat { get; set; }
|
||||
public string Text { get; set; }
|
||||
}
|
||||
|
||||
class TelegramChat
|
||||
{
|
||||
public long Id { get; set; }
|
||||
}
|
||||
Reference in New Issue
Block a user