From 7eb57f59aa72708597ee3a1d0d41e4d285787914 Mon Sep 17 00:00:00 2001 From: AmokDev Date: Sun, 8 Jun 2025 00:12:28 +0300 Subject: [PATCH] readme update --- README.md | 123 ++++++++++++++++++++++++++++-------------------------- 1 file changed, 63 insertions(+), 60 deletions(-) diff --git a/README.md b/README.md index e621bfc..4f8ec38 100644 --- a/README.md +++ b/README.md @@ -1,60 +1,63 @@ -# Rust Discord Activity -_A lightweight Rust library to control Discord Rich Presence for Windows, Linux and MacOS_ - -[Author of the idea and 80% code](https://github.com/DylanCa/rust-discord-activity) - -## Installation -```bash -cargo add --git https://git.amok.dev/AmokDev/rust-discord-rpc -``` - -## How to use -1. Instantiate a new DiscordClient -2. Create your Activity and set desired data using provided structs -3. Create a new Payload with your Activity -4. Send your Payload through the DiscordClient - -## Example -```rust -let mut client = DiscordClient::new(""); - -let _ = client.connect(); - -let limg = Some(String::from("https://placehold.co/600x400/png")); -let simg = Some(String::from("https://placehold.co/200x100/png")); -let asset = Asset::new(limg, None, simg, None); -let now_in_millis = SystemTime::now().duration_since(UNIX_EPOCH).unwrap().as_millis(); -let timestamp = Timestamp::new(Some(now_in_millis - 10000), None); - -let party = Party::new(None, Some((2, 4))); -let mut button_vec = vec![]; -button_vec.push(Button::new("First Button".into(), "https://google.com".into())); -button_vec.push(Button::new("Second Button".into(), "https://yahoo.com".into())); - -let mut activity = Activity::new(); - -activity - .set_state(Some("This is State".into())) - .set_activity_type(Some(ActivityType::LISTENING)) - .set_details(Some("This is Details".parse().unwrap())) - .set_timestamps(Some(timestamp)) - .set_assets(Some(asset)) - .set_party(Some(party)) - .set_instance(Some(true)) - .set_buttons(Some(button_vec)); - -let payload = Payload::new(EventName::Activity, EventData::Activity(activity)); - -let _ = client.send_payload(payload); - -``` - -This sets-up a new Activity for the current Discord user: - -Discord Rich Presence - -# Thanks for support -## Testers -| Windows | MacOS | Linux | -|---------------|-------------|----------| -| AmokDev (me) | hellkarm | doxbiner | \ No newline at end of file +# Localizations +[EN](https://git.amok.dev/AmokDev/rust-discord-rpc/src/branch/master/README_EN.md) | RU + +# Rust Discord Activity +_Простая Rust библиотека для управления Discord RPC для Windows, Linux и MacOS_ + +[Автор идеи](https://github.com/DylanCa/rust-discord-activity) + +## Установка +```bash +cargo add --git https://git.amok.dev/AmokDev/rust-discord-rpc +``` + +## Как использовать + 1. Создайте новый DiscordClient +2. Создайте объект Activity и задайте нужные данные, используя предоставленные структуры +3. Создайте новую полезную нагрузку с вашей активностью +4. Отправьте вашу полезную нагрузку через DiscordClient + +## Пример +```rust +let mut client = DiscordClient::new(""); + +let _ = client.connect(); + +let limg = Some(String::from("https://placehold.co/600x400/png")); +let simg = Some(String::from("https://placehold.co/200x100/png")); +let asset = Asset::new(limg, None, simg, None); +let now_in_millis = SystemTime::now().duration_since(UNIX_EPOCH).unwrap().as_millis(); +let timestamp = Timestamp::new(Some(now_in_millis - 10000), None); + +let party = Party::new(None, Some((2, 4))); +let mut button_vec = vec![]; +button_vec.push(Button::new("Первая кнопка".into(), "https://google.com".into())); +button_vec.push(Button::new("Вторая кнопка".into(), "https://yahoo.com".into())); + +let mut activity = Activity::new(); + +activity + .set_state(Some("Это состояние".into())) + .set_activity_type(Some(ActivityType::LISTENING)) + .set_details(Some("Это детали".parse().unwrap())) + .set_timestamps(Some(timestamp)) + .set_assets(Some(asset)) + .set_party(Some(party)) + .set_instance(Some(true)) + .set_buttons(Some(button_vec)); + +let payload = Payload::new(EventName::Activity, EventData::Activity(activity)); + +let _ = client.send_payload(payload); + +``` + + Это устанавливает новую активность для текущего пользователя Discord: + +Discord Rich Presence + +# Спасибо за поддержку +## Тестерам +| Windows | MacOS | Linux | +|---------------|-------------|----------| +| AmokDev (я) | hellkarm | doxbiner | \ No newline at end of file