Giới hạn ký tự Discord: Tin nhắn, Embed và lệnh Bot
Discord ra mắt năm 2015 như một công cụ chat thoại cho game thủ và từ đó đã phát triển thành một trong những nền tảng mạng xã hội dành cho lập trình viên, nhà giáo dục và doanh nghiệp. Nắm rõ giới hạn ký tự của nó là điều cần thiết cho giao tiếp rõ ràng và phát triển bot hiệu quả. Kết hợp hướng dẫn này với sách về marketing mạng xã hội để có cách tiếp cận toàn diện.
Tổng quan giới hạn ký tự Discord
| Phần tử | Giới hạn ký tự | Ghi chú |
|---|---|---|
| Tin nhắn thường | 2.000 | Người dùng miễn phí và Nitro Basic |
| Tin nhắn Nitro | 4.000 | Chỉ dành cho thuê bao Nitro đầy đủ |
| Chủ đề kênh | 1.024 | Hiển thị ở đầu kênh |
| Tên kênh | 100 | Chỉ chữ thường, dấu gạch ngang và số |
| Tên máy chủ | 100 | Có thể chỉnh sửa trong cài đặt máy chủ |
| Biệt danh | 32 | Cài đặt theo từng máy chủ |
| Tên người dùng | 32 | Tên hiển thị toàn cầu |
| Giới thiệu bản thân | 190 | Tiểu sử hồ sơ |
| Trạng thái tùy chỉnh | 128 | Emoji + văn bản |
| Tổng Embed | 6.000 | Tổng tất cả các trường embed |
| Tiêu đề Embed | 256 | Tiêu đề embed |
| Mô tả Embed | 4.096 | Nội dung chính của embed |
| Tên trường Embed | 256 | Mỗi trường |
| Giá trị trường Embed | 1.024 | Mỗi trường |
| Chân trang Embed | 2.048 | Văn bản ở cuối embed |
| Tên tác giả Embed | 256 | Văn bản ở đầu embed |
| Tin nhắn Webhook | 2.000 | Trường nội dung |
| Mô tả lệnh Slash | 100 | Văn bản trợ giúp lệnh |
| Đầu vào Modal | 4.000 | Thành phần TextInput |
Ngôn ngữ ảnh hưởng mật độ thông tin như thế nào
Discord đếm ký tự, không phải byte. Sự khác biệt này quan trọng vì các ngôn ngữ khác nhau chứa lượng thông tin rất khác nhau trong cùng một số ký tự.
Trong tiếng Anh, 2.000 ký tự tương đương khoảng 300–400 từ — khoảng nửa trang A4. Trong tiếng Nhật, cùng 2.000 ký tự truyền tải lượng thông tin tương đương 1.200–1.500 từ tiếng Anh, vì một ký tự kanji thường mang ý nghĩa của cả một từ tiếng Anh. Trên thực tế, người nói tiếng Nhật có thể chứa gấp ba đến bốn lần lượng thông tin trong cùng giới hạn 2.000 ký tự.
Khoảng cách này có hậu quả thực tế. Người nói tiếng Anh có khả năng chạm giới hạn cao hơn nhiều trong các cuộc thảo luận kỹ thuật, trong khi người nói tiếng Nhật hiếm khi cảm thấy bị hạn chế. Hiểu sự khác biệt giữa ký tự và byte đặc biệt hữu ích nếu bạn quản lý một máy chủ đa ngôn ngữ.
Tại sao 2.000 ký tự? Câu chuyện kỹ thuật
Lựa chọn 2.000 ký tự của Discord làm giới hạn mặc định phản ánh nhiều quyết định thiết kế chồng chéo.
Thứ nhất, có triết lý thiết kế hội thoại. Chat thời gian thực hoạt động tốt nhất dưới dạng chuỗi trao đổi ngắn, không phải độc thoại dài. So với giới hạn 512 byte của IRC hay thiết kế tin nhắn ban đầu của Slack, 2.000 ký tự là sự cân bằng có chủ đích — đủ dài để giải thích một quan điểm, đủ ngắn để giữ cuộc trò chuyện tiếp diễn. Nghiên cứu UX chat cho thấy tin nhắn mất hơn 10 giây để đọc khiến sự chú ý của người nhận giảm sút, và 2.000 ký tự tiếng Anh (khoảng 300–400 từ) mất khoảng 8–10 giây để đọc ở tốc độ trung bình.
Thứ hai, có tối ưu payload WebSocket. Discord truyền tin nhắn theo thời gian thực qua kết nối WebSocket. Trên các máy chủ có hàng chục nghìn người dùng đồng thời, kích thước dữ liệu mỗi tin nhắn ảnh hưởng trực tiếp đến tải mạng. Trong UTF-8, một tin nhắn tiếng Anh 2.000 ký tự khoảng 2 KB, trong khi tin nhắn tiếng Nhật 2.000 ký tự có thể đạt khoảng 6 KB. Cả hai đều nằm thoải mái trong giới hạn khung WebSocket thông thường (64 KB–1 MB trong hầu hết các triển khai), tránh chi phí phân mảnh. Payload tin nhắn thực tế cũng bao gồm metadata (ID người gửi, dấu thời gian, thông tin tệp đính kèm, v.v.), nên cho phép riêng nội dung tin nhắn tiêu thụ hàng chục kilobyte là không thực tế.
Thứ ba, có hiệu quả cơ sở dữ liệu. Discord sử dụng ScyllaDB (cơ sở dữ liệu phân tán tương thích Cassandra) để lưu trữ tin nhắn, xử lý hàng tỷ tin nhắn mỗi ngày. Mỗi tin nhắn được gán một ID Snowflake 64-bit mã hóa dấu thời gian để sắp xếp theo thứ tự thời gian. Giới hạn độ dài tin nhắn giữ kích thước dữ liệu mỗi phân vùng có thể dự đoán được và ngăn ngừa điểm nóng. Nếu tin nhắn không giới hạn độ dài, một tin nhắn quá lớn có thể làm phình phân vùng và giảm hiệu suất đọc/ghi cho mọi tin nhắn khác trong cùng kênh.
Thứ tư, có hiệu suất render phía client. Ứng dụng desktop của Discord chạy trên Electron và sử dụng cuộn ảo (chỉ render các tin nhắn hiển thị trên màn hình trong DOM) cho nhật ký chat. Khi độ dài tin nhắn có thể dự đoán, việc ước tính chiều cao mỗi tin nhắn trở nên đơn giản, giúp tính toán vị trí cuộn và thao tác nhảy đến tin nhắn mượt mà.
Trường hợp biên số ký tự
Bộ đếm ký tự của Discord hoạt động theo cách có thể khiến bạn bất ngờ. Biết những điểm đặc biệt này giúp tránh lỗi "tin nhắn quá dài" khó chịu khi bạn nghĩ mình vẫn nằm trong giới hạn.
| Phần tử | Bạn thấy gì | Số ký tự thực tế |
|---|---|---|
| Emoji tiêu chuẩn | 😀 (trông như 1 ký tự) | 1–2 ký tự (Code point Unicode) |
| Emoji tùy chỉnh | :emoji_name: | ~20–40 ký tự (định dạng <:name:id>) |
| Emoji động | :emoji_name: | ~21–41 ký tự (định dạng <a:name:id>) |
| Đề cập người dùng | @Username | ~22 ký tự (định dạng <@userID>) |
| Đề cập vai trò | @RoleName | ~22 ký tự (định dạng <@&roleID>) |
| Liên kết kênh | #channel-name | ~21 ký tự (định dạng <#channelID>) |
| URL | Liên kết có thể nhấp | Toàn bộ độ dài URL được tính nguyên trạng |
| Markdown | văn bản in đậm | Bao gồm ký tự cú pháp (**bold** = 8 ký tự) |
| Khối mã | Mã được định dạng | Bao gồm dấu backtick và định danh ngôn ngữ |
Emoji tùy chỉnh là bất ngờ lớn nhất. Một emoji riêng của máy chủ được lưu trữ nội bộ dưới dạng như <:emoji_name:123456789>, tiêu thụ hơn 20 ký tự cho thứ trông như một biểu tượng duy nhất. Sử dụng nhiều emoji tùy chỉnh có thể nhanh chóng ngốn hết ngân sách ký tự của bạn.
Đề cập hoạt động tương tự — mỗi đề cập lưu trữ đầy đủ ID người dùng hoặc vai trò bên trong. Đề cập 10 người tốn khoảng 220 ký tự, để lại ít chỗ hơn đáng kể cho tin nhắn thực tế của bạn.
Một trường hợp biên thường bị bỏ qua liên quan đến ký tự có độ rộng bằng không và chuỗi kết hợp. Zero-Width Joiner (ZWJ, U+200D) không hiển thị trên màn hình nhưng được tính là một ký tự. Emoji gia đình như 👨👩👧👦 được tạo bằng cách nối bốn emoji riêng lẻ với ký tự ZWJ, nên thứ trông như một biểu tượng duy nhất thực tế tiêu thụ 7 ký tự (4 emoji + 3 ZWJ). Emoji có tông da (ví dụ: 👋🏽) tương tự tốn 2 ký tự — emoji cơ sở cộng với bộ sửa đổi. Hiểu cách đếm ký tự emoji và Unicode hoạt động giúp bạn quản lý ngân sách ký tự chính xác.
Cú pháp Markdown là một kẻ tiêu thụ ký tự thầm lặng khác. In đậm (**text**) thêm 4 ký tự đánh dấu, gạch ngang (~~text~~) thêm 4, và khối mã cần ít nhất 8 ký tự cho phần mở ```lang\n và đóng \n```. Trong tin nhắn được định dạng nhiều, ngân sách ký tự hiệu quả cho nội dung thực tế có thể giảm xuống 1.600–1.800 ký tự.
Nitro vs. Miễn phí: Bạn thực sự nhận được gì
Discord Nitro tăng gấp đôi giới hạn tin nhắn từ 2.000 lên 4.000 ký tự. Tuy nhiên, Nitro Basic không tăng giới hạn ký tự — vẫn giữ ở 2.000.
| Tính năng | Miễn phí | Nitro Basic | Nitro |
|---|---|---|---|
| Độ dài tin nhắn | 2.000 | 2.000 | 4.000 |
| Tải tệp lên | 25 MB | 50 MB | 500 MB |
| Sử dụng Emoji tùy chỉnh | Chỉ máy chủ hiện tại | Mọi nơi | Mọi nơi |
Giới hạn 4.000 ký tự có giá trị nhất cho người dùng thảo luận kỹ thuật hoặc review code trên Discord. Đoạn mã tiêu thụ ký tự nhanh chóng, nên phần dư thêm tạo ra sự khác biệt thực sự. Đối với chat hàng ngày, 2.000 ký tự là quá đủ.
Một điểm quan trọng cần lưu ý: mở rộng 4.000 ký tự của Nitro là đặc quyền phía người gửi. Người nhận dùng gói miễn phí vẫn có thể xem toàn bộ tin nhắn 4.000 ký tự. Tuy nhiên, nếu bạn hủy Nitro, bạn sẽ không thể chỉnh sửa các tin nhắn cũ vượt quá 2.000 ký tự trừ khi rút ngắn chúng trước. Tránh phụ thuộc vào giới hạn mở rộng cho nội dung dài quan trọng — thay vào đó hãy sử dụng embed hoặc thread cho bất cứ thứ gì cần tồn tại bất kể trạng thái đăng ký của bạn.
Viết tin nhắn hiệu quả
Trong khi 2.000 ký tự là đủ cho chat hàng ngày, những giải thích hoặc thảo luận dài hơn cần một chút lên kế hoạch. Hãy ghi nhớ những nguyên tắc sau:
- Đi thẳng vào vấn đề. Dù đó là câu hỏi, yêu cầu hay cập nhật, hãy nêu mục đích tin nhắn ngay dòng đầu tiên để người đọc biết ngay điều gì đang được hỏi.
- Sử dụng định dạng Markdown. Discord hỗ trợ in đậm (
**text**), in nghiêng (*text*) và khối mã (`code`). Định dạng giúp tin nhắn dễ đọc lướt hơn nhiều. Hãy nhớ rằng ký tự cú pháp Markdown được tính vào giới hạn. - Chuyển thảo luận dài sang thread. Thread giữ dòng thời gian kênh chính sạch sẽ và cho phép các cuộc trò chuyện phụ phát triển mà không làm gián đoạn luồng.
- Sử dụng danh sách gạch đầu dòng. Dấu gạch ngang (
-) hoặc dấu sao (*) tạo danh sách dễ đọc lướt hơn nhiều so với đoạn văn dày đặc.
Chia tin nhắn dài hiệu quả
Khi bạn cần vượt quá 2.000 ký tự, một vài chiến lược chia nhỏ giúp tin nhắn của bạn dễ đọc:
- Chia tại ranh giới logic. Ngắt tại ranh giới đoạn văn hoặc chủ đề để mỗi tin nhắn tự đứng được. Đánh số chúng "(1/3)" để báo hiệu cấu trúc tổng thể.
- Tách mã khỏi giải thích. Đặt đoạn mã trong một tin nhắn và giải thích trong tin nhắn khác. Điều này tránh khối mã ăn vào ngân sách giải thích của bạn.
- Sử dụng mô hình tóm tắt rồi chi tiết. Đăng kết luận và điểm chính trước, sau đó bổ sung chi tiết hỗ trợ. Người đọc bận có thể dừng sau tin nhắn đầu tiên.
- Tận dụng thread. Đăng tóm tắt ngắn gọn trong kênh chính và mở rộng chi tiết bên trong thread. Điều này giữ dòng thời gian kênh sạch sẽ.
Giới hạn tin nhắn Bot và Webhook
Nếu bạn đang xây dựng Discord bot, bạn cần biết cả giới hạn tin nhắn thường và embed. Vượt quá chúng trả về lỗi 400 Bad Request, tương tự như khi bạn gặp ràng buộc độ dài phản hồi API.
| Giới hạn | Tối đa | Chi tiết chính |
|---|---|---|
| Nội dung tin nhắn bot | 2.000 ký tự | Giới hạn 4.000 ký tự của Nitro không áp dụng cho bot |
| Nội dung webhook | 2.000 ký tự | Tên webhook: 1–80 ký tự |
| Tổng embed | 6.000 ký tự | Tổng tất cả các trường trong tất cả embed |
| Embed mỗi tin nhắn | 10 | Giới hạn 6.000 ký tự áp dụng cho tất cả embed |
| Trường mỗi embed | 25 | Mỗi embed riêng lẻ |
| Giới hạn tốc độ API | 5 yêu cầu/5 giây | Mỗi kênh (chia sẻ giữa các bot) |
| Phản hồi tương tác | 2.000 ký tự | Trả lời lệnh slash |
Chi tiết quan trọng cho lập trình viên bot: Mở rộng 4.000 ký tự của Nitro không áp dụng cho tin nhắn bot. Trường nội dung của bot luôn bị giới hạn ở 2.000 ký tự. Đối với tập dữ liệu lớn, hãy sử dụng embed hoặc triển khai phân trang với nút tương tác.
Giới hạn 6.000 ký tự embed là tổng của tất cả các trường trên tất cả embed đính kèm vào một tin nhắn duy nhất. Ví dụ, nếu bạn đính kèm 3 embed, tổng kết hợp của mọi tiêu đề, mô tả, tên trường, giá trị trường, chân trang và tên tác giả trên cả ba phải dưới 6.000 ký tự. Các embed riêng lẻ có thể nằm trong giới hạn trường riêng nhưng vẫn bị từ chối nếu tổng vượt quá — luôn tính tổng trước khi gửi.
Tin nhắn webhook chia sẻ cùng giới hạn nội dung 2.000 ký tự nhưng có thể đính kèm tối đa 10 embed. Khi chuyển thông báo GitHub hoặc kết quả CI/CD vào Discord, hãy giữ trường nội dung ngắn và đặt chi tiết trong embed. Webhook có giới hạn tốc độ riêng (30 yêu cầu/60 giây) so với tài khoản bot, nên các pipeline thông báo tần suất cao nên triển khai hàng đợi để tránh chạm trần.
Một chi tiết thường bị bỏ qua là chỉnh sửa tin nhắn tuân theo cùng giới hạn ký tự. Khi bot chỉnh sửa tin nhắn đã gửi trước đó, giới hạn 2.000 ký tự vẫn áp dụng. Phản hồi tương tác (lệnh slash, callback nút) cũng bị giới hạn ở 2.000 ký tự, ngay cả khi sử dụng phản hồi trì hoãn được chỉnh sửa sau. Đối với bot xử lý nhiều dữ liệu, kết hợp nội dung và embed cho bạn tối đa thực tế 8.000 ký tự mỗi tin nhắn (2.000 nội dung + 6.000 embed).
Lỗi phổ biến cần tránh
- Gửi bức tường văn bản. Một tin nhắn duy nhất lấp đầy toàn bộ giới hạn 2.000 ký tự làm đình trệ cuộc trò chuyện và khiến người khác khó trả lời. Chia nội dung dài thành hai hoặc ba tin nhắn, hoặc sử dụng thread.
- Lạm dụng @everyone và @here. Những đề cập này thông báo cho mọi thành viên của máy chủ hoặc kênh. Hãy dành chúng cho thông báo thực sự quan trọng. Mệt mỏi thông báo khiến mọi người bỏ qua ngay cả tin nhắn quan trọng.
- Dán mã thô không định dạng. Đăng mã nguồn không có khối mã (
```language) phá hủy thụt lề và làm mã không thể đọc được. Đối với đoạn mã dài hơn, hãy chia sẻ liên kết Gist hoặc Pastebin thay thế. - Tiêu tốn ký tự cho emoji tùy chỉnh. Như đã lưu ý ở trên, mỗi emoji tùy chỉnh tốn hơn 20 ký tự bên trong. Sử dụng chúng thoải mái để trang trí có thể để lại ít chỗ đáng ngạc nhiên cho văn bản thực tế của bạn.
Tận dụng giới hạn ký tự trong quản lý server
Đối với quản trị viên máy chủ, giới hạn ký tự là công cụ thực tế để định hình cấu trúc kênh và quy tắc cộng đồng.
- Sử dụng chủ đề kênh (1.024 ký tự) làm bảng quy tắc. Chủ đề luôn hiển thị ở đầu kênh, nổi bật hơn tin nhắn ghim. Thành viên mới nhìn thấy nó đầu tiên. Tóm tắt quy tắc, mẫu và liên kết quan trọng ở đó.
- Kết hợp SlowMode với giới hạn ký tự. Bật SlowMode (ví dụ: thời gian chờ 30 giây) khuyến khích người dùng đưa nhiều thông tin hơn vào mỗi tin nhắn. Trong kênh hỏi đáp, kết hợp SlowMode với lời nhắc "sử dụng mẫu câu hỏi" cải thiện đáng kể chất lượng câu hỏi.
- Đặt số ký tự tối thiểu với AutoMod. Tính năng AutoMod của Discord cho phép bạn yêu cầu độ dài tin nhắn tối thiểu trong các kênh cụ thể. Đặt tối thiểu 50 ký tự trong kênh trợ giúp ngăn chặn bài đăng thiếu nỗ lực như "giúp tôi" không có ngữ cảnh.
- Hiển thị quy tắc qua embed bot. Xây dựng hiển thị quy tắc với embed bot cho phép bạn tổ chức thông tin qua các trường và chứa tới 6.000 ký tự nội dung có cấu trúc trong một tin nhắn duy nhất — gấp ba lần giới hạn tin nhắn thường.
Kỹ thuật nâng cao
- Tự động hóa với Webhook. Commit GitHub, kết quả CI/CD và cảnh báo giám sát có thể được đẩy tự động vào kênh Discord qua webhook. Thông tin đến trong embed được định dạng gọn gàng, giữ cả nhóm cập nhật. Thực hành tốt nhất: giữ trường nội dung ở mức tóm tắt ngắn (~100 ký tự) và đặt chi tiết trong mô tả embed (tối đa 4.096 ký tự).
- Tổ chức hỏi đáp với kênh Forum. Kênh forum tạo thread riêng cho mỗi chủ đề, giúp dễ dàng tìm kiếm câu hỏi và câu trả lời trước đó. Theo thời gian, chúng hoạt động như cơ sở kiến thức có thể tìm kiếm. Lưu ý rằng bài đăng đầu tiên trong thread forum cũng chịu giới hạn 2.000 ký tự, nên câu hỏi dài hơn nên được tiếp tục trong tin nhắn tiếp theo trong thread.
- Thu gọn thông tin bổ sung với thẻ spoiler. Bọc văn bản trong
||thẻ spoiler||ẩn nó cho đến khi nhấp. Ngoài việc ẩn spoiler, đây là cách tiện lợi để cất giấu chi tiết bổ sung mà không làm lộn xộn tin nhắn chính. Dấu phân cách||tự thân tính là 4 ký tự (2 mỗi bên). - Sử dụng khối trích dẫn cho ngữ cảnh. Các dòng bắt đầu bằng
>hiển thị dưới dạng trích dẫn khối. Trích dẫn tin nhắn của ai đó trước khi trả lời giúp rõ ràng bạn đang đề cập điểm nào. Đối với trích dẫn nhiều dòng, bắt đầu bằng>>>để biến mọi thứ theo sau thành một khối trích dẫn duy nhất. - Triển khai phân trang bot. Đối với bot hiển thị tập dữ liệu lớn, thành phần nút (tối đa 5 mỗi hàng, tối đa 5 hàng) cho phép điều hướng từng trang. Hiển thị một embed mỗi trang (tối đa 6.000 ký tự mỗi trang) với nút "Trước" và "Sau", trình bày hiệu quả thông tin không giới hạn trong ràng buộc ký tự của Discord.
Discord so sánh với các nền tảng khác
| Nền tảng | Giới hạn tin nhắn | Hiển thị phong phú | API Bot | Đặc điểm chính |
|---|---|---|---|---|
| Discord (Miễn phí) | 2.000 ký tự | 6.000 ký tự (Embed) | Mở rộng | Hỗ trợ Markdown, mở rộng qua embed |
| Discord (Nitro) | 4.000 ký tự | 6.000 ký tự (Embed) | Mở rộng | Tăng gấp đôi với gói trả phí |
| Slack | 40.000 ký tự | Block Kit | Mở rộng | Hướng doanh nghiệp, chấp nhận nội dung dài |
| LINE | 10.000 ký tự | Flex Message | Hạn chế | Ưu tiên di động, sử dụng cá nhân |
| X (trước đây là Twitter) | 280 ký tự (miễn phí) | Không có | Hạn chế | Tập trung nội dung ngắn, mở rộng với Premium |
| Telegram | 4.096 ký tự | HTML/Markdown | Mở rộng | API Bot mạnh mẽ, nhóm tới 200K thành viên |
| Microsoft Teams | 28.000 ký tự | Adaptive Cards | Mở rộng | Tích hợp Office 365, hướng doanh nghiệp |
Giới hạn 2.000 ký tự của Discord trông khiêm tốn so với 40.000 của Slack hay 28.000 của Teams, nhưng các nền tảng phục vụ mục đích khác nhau. Slack và Teams được xây dựng cho giao tiếp doanh nghiệp thường giống tài liệu dài, trong khi Discord ưu tiên nhịp độ hội thoại. Giới hạn 4.096 ký tự của Telegram gấp khoảng đôi gói miễn phí của Discord và gần bằng Nitro.
Sức mạnh thực sự của Discord nằm ở hệ thống embed. Giống Block Kit của Slack hay Flex Message của LINE, embed cho phép bạn trình bày dữ liệu phong phú, có cấu trúc — nhưng embed của Discord cung cấp tới 10 mỗi tin nhắn với dung lượng kết hợp 6.000 ký tự, mang lại cho lập trình viên bot lớp trình bày linh hoạt nhất trong bất kỳ nền tảng chat nào. Đánh giá khả năng biểu đạt của nền tảng chỉ bằng giới hạn tin nhắn văn bản thuần là bỏ lỡ bức tranh lớn hơn.
Kết luận
Giới hạn 2.000 ký tự tin nhắn Discord (4.000 với Nitro) đáp ứng thoải mái hầu hết cuộc trò chuyện. Tuy nhiên, emoji tùy chỉnh (20–40 ký tự mỗi cái), đề cập (~22 ký tự mỗi cái) và cú pháp Markdown (4+ ký tự cho in đậm, 8+ cho khối mã) tiêu thụ nhiều ký tự hơn vẻ ngoài, nên giới hạn hiệu quả có thể ngắn hơn đáng kể. Zero-width joiner trong emoji ghép thêm chi phí ẩn. Đối với lập trình viên bot, các con số chính cần nhớ là trần 6.000 ký tự embed (tổng trên tất cả trường và embed), việc mở rộng Nitro không áp dụng cho bot, và giới hạn tốc độ (5 yêu cầu mỗi 5 giây mỗi kênh). Để hiểu sâu hơn về phát triển bot, hãy xem hướng dẫn phát triển bot Discord. Sử dụng Bộ đếm ký tự để kiểm tra độ dài tin nhắn và embed trước khi đăng.