Image placeholder
Chưa xác định

Safrochain Testnet

Cập nhật: 21:23 18/11/2025
R1zaXR1zaX
Trạng thái: 
Nodejs
100.000 ₫

Hướng Dẫn Sử Dụng Safrochain Auto Bot

Tổng quan

Safrochain Auto Bot là công cụ tự động hóa các thao tác trên Safrochain testnet, giúp bạn quản lý và thực hiện các giao dịch blockchain một cách tự động. Bot hỗ trợ nhiều tính năng như nhận token từ faucet, stake, unstake, claim rewards, và gửi token giữa các ví.
Cài đặt ví Keplr: Extention Keplr
- Tạo ví mới lưu lại 12 từ khóa
Link dự án: https://hub.safrochain.com/

Faucet https://faucet.safrochain.com/

Tính năng chính

1. Nhận Token Từ Faucet
2. Stake Token SAF
3. Claim Staking Rewards
4. Gửi Token Chéo
5. Unstake Token SAF
6. Chế Độ Tự Động
7. Đa Luồng (Multithreading)

Cấu hình

File .env

Tạo file .env trong thư mục gốc với các ví của bạn:

MNEMONIC_1=word1 word2 word3 ... word24
MNEMONIC_2=word1 word2 word3 ... word24
PRIVATE_KEY_1=64_hex_characters_without_0x_prefix
PRIVATE_KEY_2=64_hex_characters_without_0x_prefix

Lưu ý:

  • Mnemonic phải có 12 hoặc 24 từ

  • Private key phải có đúng 64 ký tự hex (không có 0x ở đầu)

  • Có thể sử dụng cả mnemonic và private key

File proxies.txt (Tùy chọn)

Mỗi dòng là một proxy:

user:pass@host:port
http://user:pass@host:port
https://user:pass@host:port

Lưu ý:

  • Proxy sẽ được rotate tự động

  • Nếu không có proxy, bot vẫn hoạt động bình thường

  • Dòng bắt đầu bằng # sẽ bị bỏ qua

File address.txt (Tự động tạo)

File này được tự động tạo khi khởi động bot, chứa danh sách địa chỉ từ các ví trong .env. File này được dùng cho chức năng gửi chéo.

Cài đặt và sử dụng

Bước 1: Cài đặt

npm install

Bước 2: Cấu hình

  1. Tạo file .env với các ví của bạn

  2. (Tùy chọn) Thêm proxy vào proxies.txt

  3. Cấu hình config.json theo nhu cầu

Bước 3: Chạy Bot

node index.js

Bước 4: Chọn Chế Độ

  • Chế độ thủ công (Manual): Chọn từng chức năng từ menu

  • Chế độ tự động (Auto): Chạy theo cấu hình trong config.json

Bước 5: Nhập Số Luồng (Nếu cần)

  • Nhập số luồng khi được hỏi (ví dụ: 3)

  • Hoặc Enter để dùng giá trị từ config.json

Giải thích config.json

Cấu trúc tổng quan

{
  "mode": "manual|auto",
  "auto": { ... },
  "settings": { ... }
}

1. mode (Chế độ)

  • "manual": Chế độ thủ công - người dùng chọn từng chức năng

  • "auto": Chế độ tự động - chạy theo cấu hình trong auto.tasks

2. auto (Cấu hình chế độ tự động)

enabled (Bật/tắt)

  • true: Bật chế độ tự động

  • false: Tắt chế độ tự động

tasks (Danh sách các task)

Mỗi task có cấu trúc:

{
  "type": "faucet|stake|claimRewards|send|unstake",
  "enabled": true|false,
  "walletIndex": "all"|0|1|2|...,
  "amount": 10,
  "minAmount": 5,
  "maxAmount": 15,
  "toAddress": "addr_safro1...",
  "validatorIndex": 0,
  "delay": 3000
}

Giải thích từng thông số:

  • type: Loại task

    • "faucet": Nhận token từ faucet

    • "stake": Stake token SAF

    • "claimRewards": Nhận phần thưởng staking

    • "send": Gửi token chéo (từ address.txt)

    • "unstake": Unstake token SAF

  • enabled: Bật/tắt task

    • true: Task được chạy

    • false: Task bị bỏ qua

  • walletIndex: Chọn ví

    • "all": Chạy cho tất cả ví

    • 0, 1, 2, ...: Chỉ chạy cho ví tại index đó

  • amount: Số lượng cố định (SAF)

    • Dùng khi không có minAmount/maxAmount

    • Ví dụ: 10 = 10 SAF

  • minAmountmaxAmount: Random số lượng

    • Random số lượng giữa min và max cho mỗi ví

    • Ưu tiên hơn amount nếu có

    • Ví dụ: minAmount: 5, maxAmount: 15 → random 5-15 SAF

  • toAddress: Địa chỉ nhận (chỉ cho task "send")

    • "" hoặc không có: Tự động gửi chéo từ address.txt

    • "addr_safro1...": Gửi đến địa chỉ cụ thể

  • validatorIndex: Chọn validator (chỉ cho task "unstake")

    • 0, 1, 2, ...: Index của validator trong danh sách delegation

    • Mặc định: 0 (validator đầu tiên)

  • delay: Độ trễ (milliseconds)

    • Thời gian chờ trước khi chạy task tiếp theo

    • Ví dụ: 3000 = 3 giây

    • Bot sẽ tự động thêm jitter (biến thiên) để tự nhiên hơn

loop (Cấu hình lặp lại)

{
  "enabled": true|false,
  "interval": 86400000,
  "maxIterations": 0
}
  • enabled: Bật/tắt lặp

    • true: Tự động lặp lại sau mỗi chu kỳ

    • false: Chỉ chạy 1 lần

  • interval: Khoảng thời gian (milliseconds)

    • Thời gian chờ giữa các chu kỳ

    • Ví dụ: 86400000 = 24 giờ (1000 60 60 * 24)

  • maxIterations: Số lần lặp tối đa

    • 0: Lặp vô hạn

    • 1, 2, 3, ...: Số lần lặp tối đa

3. settings (Cài đặt mặc định)

{
  "defaultWalletIndex": 0,
  "defaultStakeAmount": 10,
  "defaultSendAmount": 1,
  "defaultUnstakeAmount": 5,
  "delayBetweenActions": 3000,
  "delayBetweenWallets": 2000,
  "threads": 1
}
  • defaultWalletIndex: Ví mặc định (0 = ví đầu tiên)

  • defaultStakeAmount: Số lượng stake mặc định (SAF)

  • defaultSendAmount: Số lượng gửi mặc định (SAF)

  • defaultUnstakeAmount: Số lượng unstake mặc định (SAF)

  • delayBetweenActions: Độ trễ giữa các hành động (ms)

  • delayBetweenWallets: Độ trễ giữa các ví (ms)

  • threads: Số luồng chạy song song

    • 1: Chạy tuần tự (mặc định)

    • 2, 3, 4, ...: Chạy song song nhiều ví

    • Khuyến nghị: 2-5 luồng để tránh quá tải

Troubleshooting

Lỗi: "Không tìm thấy ví nào trong file .env"

Nguyên nhân: File .env không có hoặc không có ví hợp lệ.

Giải pháp:

  1. Kiểm tra file .env có tồn tại không

  2. Đảm bảo có ít nhất một trong các format:

    • MNEMONIC_1=word1 word2 ... word24

    • PRIVATE_KEY_1=64_hex_characters

  3. Kiểm tra mnemonic có đúng 12 hoặc 24 từ

  4. Kiểm tra private key có đúng 64 ký tự hex

Lỗi: "Số dư không đủ"

Nguyên nhân: Ví không có đủ SAF để thực hiện giao dịch.

Giải pháp:

  1. Kiểm tra số dư của ví

  2. Request token từ faucet trước

  3. Giảm số lượng stake/send/unstake

  4. Đảm bảo để lại một ít SAF cho phí gas (khoảng 0.5 SAF)

Lỗi: "Rate limit exceeded"

Nguyên nhân: Đã đạt giới hạn yêu cầu faucet (2 lần/24 giờ).

Giải pháp:

  1. Đợi 24 giờ để reset limit

  2. Sử dụng proxy khác

  3. Sử dụng ví khác

Lỗi: "Account does not exist on chain"

Nguyên nhân: Tài khoản chưa được tạo trên blockchain.

Giải pháp:

  1. Gửi một ít token đến địa chỉ đó trước

  2. Request từ faucet để tạo tài khoản

  3. Đảm bảo địa chỉ đúng format addr_safro...

Lỗi: "Không tìm thấy delegation nào"

Nguyên nhân: Ví chưa stake hoặc đã unstake hết.

Giải pháp:

  1. Stake token trước khi unstake

  2. Kiểm tra lại validator index

  3. Đảm bảo có delegation đang hoạt động

Lỗi: "Lỗi kết nối RPC"

Nguyên nhân: Không thể kết nối đến RPC endpoint.

Giải pháp:

  1. Kiểm tra kết nối internet

  2. Thử lại sau vài phút

  3. Sử dụng proxy nếu bị chặn

  4. Kiểm tra RPC endpoint có hoạt động không

Lỗi: "Invalid receiver address"

Nguyên nhân: Địa chỉ không đúng format.

Giải pháp:

  1. Đảm bảo địa chỉ bắt đầu bằng addr_safro

  2. Kiểm tra địa chỉ có đủ độ dài

  3. Không có ký tự đặc biệt hoặc khoảng trắng

Bot chạy quá chậm

Nguyên nhân: Số luồng quá thấp hoặc delay quá cao.

Giải pháp:

  1. Tăng số luồng trong config.json: "threads": 3

  2. Giảm delay giữa các task

  3. Tắt các task không cần thiết

File address.txt không được tạo

Nguyên nhân: Bot chưa khởi động hoặc không có ví.

Giải pháp:

  1. Đảm bảo có ít nhất 1 ví trong .env

  2. Chạy lại bot để tự động tạo file

  3. Hoặc chạy chức năng "Xuất Địa Chỉ Ra File" từ menu

Lỗi khi lưu config.json

Nguyên nhân: File bị khóa hoặc không có quyền ghi.

Giải pháp:

  1. Kiểm tra quyền ghi file

  2. Đảm bảo file không bị mở bởi chương trình khác

  3. Chạy với quyền administrator nếu cần

Proxy không hoạt động

Nguyên nhân: Proxy không hợp lệ hoặc đã hết hạn.

Giải pháp:

  1. Kiểm tra format proxy trong proxies.txt

  2. Test proxy bằng công cụ khác

  3. Cập nhật proxy mới

  4. Bot sẽ tự động bỏ qua proxy lỗi và tiếp tục

Lỗi: "Task không được hỗ trợ"

Nguyên nhân: Loại task trong config.json không đúng.

Giải pháp:

  1. Kiểm tra type phải là một trong: faucet, stake, claimRewards, send, unstake

  2. Kiểm tra chính tả và viết thường

Mẹo sử dụng

  1. Bắt đầu với số luồng thấp: Dùng threads: 1-2 để test, sau đó tăng dần

  2. Cấu hình delay hợp lý: Không quá nhanh (dễ bị rate limit) cũng không quá chậm

  3. Sử dụng proxy: Tăng tính ẩn danh và tránh rate limit

  4. Kiểm tra số dư: Đảm bảo có đủ SAF trước khi chạy các task

Hỗ trợ

Mọi lỗi liên hệ Telegram: @R1zaX040