[core] i18n

This commit is contained in:
devlikepro committed 2025-11-04 14:00:30 +07:00
1 parent 304b0037ec
commit e839203dbd
19 files changed
+2241 -147

No files matched your search

+72
View File
@@ -0,0 +1,72 @@
#!/usr/bin/env node
const { readFileSync } = require('fs');
const { spawnSync } = require('child_process');
const path = require('path');
const YAML = require('yaml');
const repoRoot = path.resolve(__dirname, '..');
const enPath = path.join(repoRoot, 'src/apps/chatwoot/i18n/locales/en-US.yaml');
const contents = readFileSync(enPath, 'utf8');
const document = YAML.parse(contents);
const flatten = (node, prefix = '') => {
if (node && typeof node === 'object' && !Array.isArray(node)) {
return Object.entries(node).reduce((acc, [key, value]) => {
const next = prefix ? `${prefix}.${key}` : key;
return acc.concat(flatten(value, next));
}, []);
}
return [prefix];
};
const allKeys = flatten(document).filter(Boolean);
const ignoredPrefixes = ['datetime.', 'locale.'];
const ignored = new Set();
const unused = [];
const searchRoots = ['src', 'tests'];
for (const key of allKeys) {
if (
ignoredPrefixes.some((prefix) => key.startsWith(prefix)) ||
!key.includes('.')
) {
ignored.add(key);
continue;
}
const result = spawnSync(
'rg',
[
'--files-with-matches',
'--fixed-strings',
key,
...searchRoots,
'--glob',
'!apps/chatwoot/i18n/locales/*.yaml',
],
{
cwd: repoRoot,
encoding: 'utf8',
},
);
if (result.status !== 0 || !result.stdout.trim()) {
unused.push(key);
}
}
const message = [
`Scanned ${allKeys.length} keys.`,
`Ignored ${ignored.size} keys (datetime.*, locale.*, or without dot).`,
unused.length
? `Found ${unused.length} potentially unused keys:\n - ${unused.join(
'\n - ',
)}`
: 'No unused keys detected.',
];
console.log(message.join('\n'));
+144
View File
@@ -0,0 +1,144 @@
Here’s a complete `AGENTS.md` draft for your i18n workflow 👇
---
# 🌐 AGENTS.md — Locale Maintenance Guide
This document defines how the **i18n Agent** manages, updates, and synchronizes
locale files (e.g. `en-US.yaml`, `pt-BR.yaml`, etc.) across all supported
languages.
---
## 🧩 Overview
Each locale file (e.g. `en-US.yaml`) contains translation keys and values used
throughout the system. The **English (en-US)** file is the **source of truth** —
every other language must mirror its structure, keys, emojis, and formatting.
---
## 🪄 Core Commands
### 1. `update all i18n`
**Purpose:** Ensures all locales are synchronized with the current `en-US.yaml`.
**Steps:**
1. **Start with `en-US.yaml`.**
- Scan all code and templates to verify each key is used.
- Ignore usage warnings for `datetime.*`, flat keys without a dot, and any
`locale.*` entries — they are considered always in use.
- Propagate every key change (add, edit, remove) from `en-US.yaml` to all
other locale files with the corresponding translations so structures stay
aligned.
- Preserve `datetime.locales` in every non-English locale; it pins the
language hint for formatting and must never be dropped.
- If any keys appear **unused**, list them and **ask whether to remove or
keep**.
2. **Check for “ChatWoot” mentions.**
- Any occurrence must be reviewed — the system should not reference
_ChatWoot_ directly.
- Ask:
> “Found ‘ChatWoot’ in key `X.Y.Z`. Should we reword this? If yes, how?”
3. **Validate formatting and structure.**
- Ensure all keys use consistent YAML indentation and ordering.
- Emojis, punctuation, and tags (`{{variable}}`, `**bold**`, etc.) must stay
exactly as in `en-US`.
4. **Synchronize all target languages.**
- For each locale (`es-ES.yaml`, `fr-FR.yaml`, etc.):
- Copy the structure and keys from `en-US.yaml`.
- Translate the values from English → target language.
- **Ignore any manual changes in target files** — always use the English
source.
- Preserve all markdown, emojis, punctuation, and placeholders.
5. **Report summary.**
- Added / updated / removed keys count per language.
---
### 2. `update key.* for i18n`
**Purpose:** Update or add translations for specific keys only.
**Steps:**
1. Match all keys provided in the command (supports wildcard like `key.auth.*`).
2. Update those keys in `en-US.yaml` first.
3. Propagate and translate the updated keys to all other locale files.
4. Do **not** touch unrelated keys or structure.
---
## ⚙️ Translation Rules
| Aspect | Rule |
| -------------- | --------------------------------------------------------------------------------- |
| **Structure** | Must always follow `en-US.yaml`. |
| **Formatting** | Keep emojis, punctuation, capitalization, and markdown exactly as in English. |
| **Tags** | Preserve placeholders (`{{variable}}`) and code blocks. |
| **Priority** | English (`en-US.yaml`) is always the canonical version. |
| **Comments** | If a translation key needs explanation, add a YAML comment above it (not inline). |
---
## 🚫 ChatWoot Mentions
- The word **ChatWoot** must never appear in translations.
- When found, the agent must pause and ask:
> “ChatWoot found in key `X.Y.Z`: `{{string}}`. Should we rephrase it (e.g.,
> ‘Inbox’, ‘Messaging Platform’, or something else)?”
---
## 📘 Terms (reserved)
> This section will define key terminology and translation conventions (e.g.,
> “Contact” vs “Customer”, “Session” vs “Chat”), once finalized.
---
## ⚠️ Exceptions
- Treat `datetime.*` keys as standard infrastructure strings; do not flag them
as unused.
- Always keep `datetime.locales` aligned with the target locale code (e.g.,
`es-ES`); if it is missing, restore it during the sync.
- Keys without a dot (e.g., `UNKNOWN`) and any under `locale.*` are canonical
metadata — skip unused checks for them.
---
## 🧾 Example Workflow
```bash
# Full synchronization
> update all i18n
→ Checking unused keys...
→ Found 3 unused keys: session.old, inbox.archive, legacy.test
Keep or remove? [k/r]
→ Found "ChatWoot" in en-US.yaml: "ChatWoot inbox connected"
Replace? [yes/no]
→ Translating en-US → es-ES, fr-FR, pt-BR...
✅ All i18n files updated and aligned with en-US.yaml
```
---
Would you like me to add an example **YAML structure** and show how the agent
should align keys (e.g., diff between en-US and pt-BR)? It helps clarify exactly
how updates propagate.
+120 -9
View File
@@ -193,9 +193,6 @@ cli.cmd.contacts.pull.option.avatar: |-
cli.cmd.contacts.pull.option.groups: |-
قم بتضمين جهات اتصال مجموعات واتساب في المزامنة.
cli.cmd.contacts.pull.option.no-lids: |-
تخطَّ جهات اتصال واتساب LID (معرّفات الأجهزة المرتبطة JID) في المزامنة.
cli.cmd.contacts.pull.option.no-attributes: |-
لا تسحب سمات جهة الاتصال إذا كانت موجودة بالفعل (هذا يسرّع العملية).
@@ -204,12 +201,6 @@ cli.cmd.contacts.pull.already-running: |-
أرسل `contacts status` للاطلاع على التفاصيل.
cli.cmd.contacts.pull.queued: |-
👥 تمت جدولة مهمة **سحب جهات الاتصال**.
سنشارك تحديث التقدم كل **{{batch}}** جهة اتصال.
قد يستغرق سحب جهات الاتصال بعض الوقت، لذا تحقق من آخر حالة في أي وقت باستخدام `contacts status`.
cli.cmd.options.job.attempts: |-
عدد مرات إعادة محاولة المهمة قبل اعتبارها فاشلة.
@@ -512,3 +503,123 @@ whatsapp.to.chatwoot.message.facebook.ad: |-
---
💬 **رسالة العميل:**
{{{payload.body}}}
whatsapp.history.message.wrapper: |-
{{{content}}}
{{^payload.fromMe}}
{{/payload.fromMe}}
`🗓️ {{{timestamp}}}`
UNKNOWN: غير معروف
ERROR: خطأ
PENDING: جارٍ الإرسال
SERVER: الخادم
DEVICE: الجهاز
READ: مقروء
PLAYED: مُشغَّل
whatsapp.to.chatwoot.message.has.media.no.media: |-
{{#content}}
{{{content}}}
{{/content}}
🖼️⚠️ **تحتوي الرسالة على وسائط ولكن تعذّر تنزيلها**
📱 يرجى فتح **واتساب** للاطلاع عليها.
{{^content}}
التفاصيل: [{{{details.text}}}]({{{details.url}}})
{{/content}}
cli.cmd.root.sub.queue: '🧩 **قائمة الانتظار**:'
cli.cmd.messages.summary: سحب رسائل واتساب.
cli.cmd.messages.description:
💬 نفّذ `messages pull` لبدء مزامنة الرسائل أو `messages status` لمتابعة
التقدم.
cli.cmd.messages.action.description:
'`pull` لبدء سحب الرسائل أو `status` لمراجعة المهمة النشطة.'
cli.cmd.messages.pull.option.chat: حصر السحب على معرّف دردشة واتساب محدد.
cli.cmd.messages.pull.option.force:
إجبار صندوق الوارد على إنشاء الرسائل حتى لو كانت رسالة واتساب موجودة بالفعل في
مخطط المحادثة.
cli.cmd.messages.pull.option.batch: عدد الرسائل التي يتم سحبها في كل دفعة.
cli.cmd.messages.pull.option.progress:
الإبلاغ عن التقدم كل عدد N من الرسائل. القيمة 0 لتعطيل التقارير.
cli.cmd.messages.pull.option.no-dm: تخطي الرسائل الخاصة أثناء سحب السجل.
cli.cmd.messages.pull.option.groups: تضمين مجموعات واتساب أثناء سحب السجل.
cli.cmd.messages.pull.option.channels: تضمين قنوات واتساب أثناء سحب السجل.
cli.cmd.messages.pull.option.status: تضمين حالات واتساب أثناء سحب السجل.
cli.cmd.messages.pull.option.broadcast: تضمين قوائم البث أثناء سحب السجل.
cli.cmd.messages.pull.option.media:
تنزيل المرفقات (صور، فيديوهات، ملفات) أثناء سحب السجل.
cli.cmd.messages.pull.option.pause:
وضع مهمة سحب الرسائل في قائمة الانتظار وهي متوقفة مؤقتًا وإيقاف معالجة رسائل
واتساب الجديدة حتى تكتمل.
cli.cmd.messages.pull.error.pause-no-queue:
⛔ لا يمكن استخدام `--pause` لأن أمر **queue** معطَّل في هذا التكوين.
cli.cmd.queue.description: إدارة قوائم الانتظار.
cli.cmd.queue.summary: تنفيذ إجراءات على قوائم الانتظار.
cli.cmd.queue.action.description: اختر إجراءً.
cli.cmd.queue.status.description: عرض حالة قائمة الانتظار.
cli.cmd.queue.argument.name:
'اسم قائمة الانتظار: `inbox` أو `whatsapp` (اختياري).'
cli.cmd.queue.start.description: بدء قائمة الانتظار بالاسم.
cli.cmd.queue.stop.description: إيقاف قائمة الانتظار بالاسم.
cli.cmd.queue.paused:
⚪🧩 تم إيقاف قوائم الانتظار مؤقتًا. أرسل `queue status` للتحقق من الحالة.
cli.cmd.queue.resumed:
🟢🧩 تم استئناف قوائم الانتظار. أرسل `queue status` للتحقق من الحالة.
cli.cmd.queue.status.result: >-
📊 حالة قائمة الانتظار:
{{#queues}}
- **{{name}}**: {{#locked}}🔒{{/locked}}{{#paused}}⚪ متوقفة
مؤقتًا{{/paused}}{{^paused}}🟢 تعمل{{/paused}}
{{/queues}}
cli.cmd.messages.pull.option.timeout-media:
تحديد مدة محاولة تنزيل الوسائط لكل رسالة.
cli.cmd.messages.pull.argument.end:
تحديد نقطة نهاية نافذة السحب؛ على سبيل المثال، `2d` يعني التوقف قبل يومين.
cli.cmd.messages.pull.argument.start:
تحديد نقطة بداية نافذة السحب؛ على سبيل المثال، `1d` يبدأ قبل يوم واحد (القيمة
الافتراضية `0d` أي الآن).
cli.cmd.messages.pull.already-running: >-
⏳ مهمة **Pull Messages** تعمل بالفعل لـ **{{{chat}}}**. انتظر حتى تنتهي أو
أوقفها قبل بدء مهمة جديدة.
أرسل `messages status` للحصول على التفاصيل.
cli.cmd.messages.status.not-found:
ℹ️ لم يتم العثور على مهمة **Pull Messages** نشطة. ابدأ واحدة باستخدام
`messages pull`.
cli.cmd.messages.pull.no-chats-found:
لم يتم العثور على دردشات واتساب للسحب خلال هذه الفترة.
cli.cmd.contacts.pull.option.progress:
الإبلاغ عن التقدم كل عدد N من جهات الاتصال. القيمة 0 لتعطيل التقارير.
cli.cmd.contacts.pull.option.lids:
تضمين جهات اتصال واتساب LID (مجهولة) في المزامنة.
task.contacts.completed:
👤✅ تم إنهاء جهات الاتصال → 🆕 {{progress.created}}، 🔄 {{progress.updated}}،
⚪ {{progress.skipped}}، 🔴 {{progress.errors}}، 🖼️
{{progress.avatar.updated}}
task.messages.started: ⏳ جارٍ سحب الرسائل 💬 {{{chat}}} ⏱️ {{{period}}}...
task.messages.details:
أرسل "{{{prefix}}}messages status" للاطلاع على المزيد من التفاصيل.
task.messages.progress:
'⏳ رسائل {{{chat}}}: 🆕 {{progress.ok}}، 🟢 {{progress.exists}}، ⚪
{{progress.ignored}}، 🔴 {{progress.errors}}{{#last}} | 📅 {{{last}}}{{/last}}'
task.messages.completed:
✅ رسائل {{{chat}}} خلال {{{period}}} → 🆕 {{progress.ok}}، 🟢
{{progress.exists}}، ⚪ {{progress.ignored}}، 🔴 {{progress.errors}}
task.messages.status: |-
رسائل **{{{chat}}}** خلال الفترة ⏱️ **{{{period}}}**:
- ⚙️ حالة المهمة: **{{state}}**
{{#last}}
- 📅 آخر معالجة: **{{{last}}}**
{{/last}}
- 💬 تم إنشاؤها في: **{{{chats}}}** دردشات
- 🆕 تم إنشاؤها: **{{{progress.ok}}}** رسائل
- 🟢 موجودة مسبقًا: {{{progress.exists}}} رسائل
- ⚪ تم تجاهلها: {{{progress.ignored}}} رسائل
- 🔴 أخطاء: {{{progress.errors}}} رسائل
التفاصيل:
[{{{details.text}}}]({{{details.url}}})
+122 -9
View File
@@ -193,9 +193,6 @@ cli.cmd.contacts.pull.option.avatar: |-
cli.cmd.contacts.pull.option.groups: |-
সিঙ্কে WhatsApp গ্রুপ কনট্যাক্ট অন্তর্ভুক্ত করুন।
cli.cmd.contacts.pull.option.no-lids: |-
সিঙ্কে WhatsApp LID কনট্যাক্ট (লিঙ্কড-ডিভাইস JID) বাদ দিন।
cli.cmd.contacts.pull.option.no-attributes: |-
কনট্যাক্ট আগেই থাকলে তার অ্যাট্রিবিউট টানবেন না (এতে প্রক্রিয়া দ্রুত হয়)।
@@ -204,12 +201,6 @@ cli.cmd.contacts.pull.already-running: |-
বিস্তারিত জানতে `contacts status` পাঠান।
cli.cmd.contacts.pull.queued: |-
👥 **Pull Contacts** কাজটি কিউতে রয়েছে।
আমরা প্রতি **{{batch}}** কনট্যাক্টে অগ্রগতির আপডেট শেয়ার করব।
কনট্যাক্ট টানতে কিছুটা সময় লাগতে পারে - যেকোনো সময় `contacts status` দিয়ে সর্বশেষ অবস্থা দেখুন।
cli.cmd.options.job.attempts: |-
কোনো কাজ ব্যর্থ ঘোষণা করার আগে কয়বার পুনরায় চেষ্টা করা হবে।
@@ -512,3 +503,125 @@ whatsapp.to.chatwoot.message.facebook.ad: |-
---
💬 **গ্রাহকের বার্তা:**
{{{payload.body}}}
whatsapp.history.message.wrapper: |-
{{{content}}}
{{^payload.fromMe}}
{{/payload.fromMe}}
`🗓️ {{{timestamp}}}`
UNKNOWN: অজানা
ERROR: ত্রুটি
PENDING: পাঠানো হচ্ছে
SERVER: সার্ভার
DEVICE: ডিভাইস
READ: পড়া হয়েছে
PLAYED: চালানো হয়েছে
whatsapp.to.chatwoot.message.has.media.no.media: |-
{{#content}}
{{{content}}}
{{/content}}
🖼️⚠️ **বার্তায় মিডিয়া আছে, কিন্তু আমরা এটি ডাউনলোড করতে পারিনি**
📱 দেখার জন্য অনুগ্রহ করে **WhatsApp** খুলুন।
{{^content}}
বিস্তারিত: [{{{details.text}}}]({{{details.url}}})
{{/content}}
cli.cmd.root.sub.queue: '🧩 **কিউ**:'
cli.cmd.messages.summary: WhatsApp বার্তা টানুন।
cli.cmd.messages.description:
💬 বার্তা সিঙ্ক শুরু করতে `messages pull` চালান অথবা অগ্রগতি দেখতে `messages
status` চালান।
cli.cmd.messages.action.description:
বার্তা টানতে `pull` ব্যবহার করুন অথবা সক্রিয় কাজ দেখার জন্য `status`।
cli.cmd.messages.pull.option.chat:
নির্দিষ্ট WhatsApp চ্যাট আইডিতে টান সীমাবদ্ধ করুন।
cli.cmd.messages.pull.option.force:
WhatsApp বার্তা কথোপকথনের ম্যাপিংয়ে থাকলেও ইনবক্সকে বার্তা তৈরি করতে বাধ্য
করুন।
cli.cmd.messages.pull.option.batch: প্রতিটি ব্যাচে কতটি বার্তা টানবেন।
cli.cmd.messages.pull.option.progress:
প্রতি N বার্তায় অগ্রগতি জানায়। রিপোর্ট বন্ধ করতে 0 সেট করুন।
cli.cmd.messages.pull.option.no-dm: ইতিহাস টানার সময় সরাসরি বার্তা উপেক্ষা করুন।
cli.cmd.messages.pull.option.groups:
ইতিহাস টানার সময় WhatsApp গ্রুপ অন্তর্ভুক্ত করুন।
cli.cmd.messages.pull.option.channels:
ইতিহাস টানার সময় WhatsApp চ্যানেল অন্তর্ভুক্ত করুন।
cli.cmd.messages.pull.option.status:
ইতিহাস টানার সময় WhatsApp স্ট্যাটাস আপডেট অন্তর্ভুক্ত করুন।
cli.cmd.messages.pull.option.broadcast:
ইতিহাস টানার সময় ব্রডকাস্ট তালিকা অন্তর্ভুক্ত করুন।
cli.cmd.messages.pull.option.media:
ইতিহাস টানার সময় মিডিয়া (ছবি, ভিডিও, ফাইল) ডাউনলোড করুন।
cli.cmd.messages.pull.option.pause:
বার্তা টানার কাজটিকে বিরতি অবস্থায় কিউতে রাখে এবং শেষ না হওয়া পর্যন্ত নতুন
WhatsApp বার্তার প্রসেসিং বন্ধ রাখে।
cli.cmd.messages.pull.error.pause-no-queue:
⛔ `--pause` ব্যবহার করা যাবে না কারণ এই কনফিগারেশনে **queue** কমান্ড
নিষ্ক্রিয়।
cli.cmd.queue.description: কিউ পরিচালনা করুন।
cli.cmd.queue.summary: কিউ-তে কর্ম সম্পাদন করুন।
cli.cmd.queue.action.description: একটি কর্ম নির্বাচন করুন।
cli.cmd.queue.status.description: কিউ-র অবস্থা দেখুন।
cli.cmd.queue.argument.name: 'কিউ নাম: `inbox` বা `whatsapp` (ঐচ্ছিক)।'
cli.cmd.queue.start.description: নামের ভিত্তিতে কিউ শুরু করুন।
cli.cmd.queue.stop.description: নামের ভিত্তিতে কিউ বন্ধ করুন।
cli.cmd.queue.paused: ⚪🧩 কিউ বিরতিতে আছে। অবস্থা দেখতে `queue status` পাঠান।
cli.cmd.queue.resumed:
🟢🧩 কিউ আবার চালু হয়েছে। অবস্থা দেখতে `queue status` পাঠান।
cli.cmd.queue.status.result: >-
📊 কিউ অবস্থা:
{{#queues}}
- **{{name}}**: {{#locked}}🔒{{/locked}}{{#paused}}⚪
বিরতিতে{{/paused}}{{^paused}}🟢 চলমান{{/paused}}
{{/queues}}
cli.cmd.messages.pull.option.timeout-media:
প্রতিটি বার্তার জন্য মিডিয়া ডাউনলোডের সময়সীমা নির্ধারণ করুন।
cli.cmd.messages.pull.argument.end:
টানার উইন্ডো কোথায় শেষ হবে নির্ধারণ করুন; যেমন `2d` দুই দিন আগে থামে।
cli.cmd.messages.pull.argument.start:
টানার উইন্ডো কোথা থেকে শুরু হবে নির্ধারণ করুন; যেমন `1d` এক দিন আগে শুরু হয়
(ডিফল্ট `0d`, অর্থাৎ এখন)।
cli.cmd.messages.pull.already-running: >-
⏳ **Pull Messages** কাজটি ইতিমধ্যে **{{{chat}}}**-এর জন্য চলছে। শেষ হওয়া
পর্যন্ত অপেক্ষা করুন অথবা নতুন শুরু করার আগে এটি বন্ধ করুন।
বিস্তারিত জানার জন্য `messages status` পাঠান।
cli.cmd.messages.status.not-found:
ℹ️ কোনো সক্রিয় **Pull Messages** কাজ পাওয়া যায়নি। `messages pull` দিয়ে একটি
শুরু করুন।
cli.cmd.messages.pull.no-chats-found:
এই সময়সীমার জন্য কোনো WhatsApp চ্যাট পাওয়া যায়নি।
cli.cmd.contacts.pull.option.progress:
প্রতি N কন্টাক্টে অগ্রগতি জানান। রিপোর্ট বন্ধ করতে 0 সেট করুন।
cli.cmd.contacts.pull.option.lids:
সিঙ্কে WhatsApp LID (অনামা) কন্টাক্ট অন্তর্ভুক্ত করুন।
task.contacts.completed:
👤✅ কন্টাক্ট সম্পন্ন → 🆕 {{progress.created}}, 🔄 {{progress.updated}}, ⚪
{{progress.skipped}}, 🔴 {{progress.errors}}, 🖼️ {{progress.avatar.updated}}
task.messages.started: ⏳ বার্তা টানা হচ্ছে 💬 {{{chat}}} ⏱️ {{{period}}}...
task.messages.details: আরও জানতে "{{{prefix}}}messages status" পাঠান।
task.messages.progress:
'⏳ বার্তা {{{chat}}}: 🆕 {{progress.ok}}, 🟢 {{progress.exists}}, ⚪
{{progress.ignored}}, 🔴 {{progress.errors}}{{#last}} | 📅 {{{last}}}{{/last}}'
task.messages.completed:
✅ বার্তা {{{chat}}} {{{period}}}-এ → 🆕 {{progress.ok}}, 🟢
{{progress.exists}}, ⚪ {{progress.ignored}}, 🔴 {{progress.errors}}
task.messages.status: |-
**{{{chat}}}**-এর বার্তা ⏱️ **{{{period}}}** সময়ে:
- ⚙️ কাজের অবস্থা: **{{state}}**
{{#last}}
- 📅 শেষ প্রসেস করা: **{{{last}}}**
{{/last}}
- 💬 তৈরি হয়েছে: **{{{chats}}}** চ্যাটে
- 🆕 তৈরি: **{{{progress.ok}}}** বার্তা
- 🟢 আগেই ছিল: {{{progress.exists}}} বার্তা
- ⚪ উপেক্ষা: {{{progress.ignored}}} বার্তা
- 🔴 ত্রুটি: {{{progress.errors}}} বার্তা
বিস্তারিত:
[{{{details.text}}}]({{{details.url}}})
+141 -9
View File
@@ -196,9 +196,6 @@ cli.cmd.contacts.pull.option.avatar: |-
cli.cmd.contacts.pull.option.groups: |-
WhatsApp-Gruppenkontakte in die Synchronisierung einbeziehen.
cli.cmd.contacts.pull.option.no-lids: |-
WhatsApp-LID-Kontakte (Linked-Device-JIDs) bei der Synchronisierung überspringen.
cli.cmd.contacts.pull.option.no-attributes: |-
Keine Kontaktattribute laden, wenn der Kontakt bereits existiert (beschleunigt den Vorgang).
@@ -207,12 +204,6 @@ cli.cmd.contacts.pull.already-running: |-
Senden Sie `contacts status` für Details.
cli.cmd.contacts.pull.queued: |-
👥 Auftrag **Pull Contacts** in die Warteschlange gestellt.
Wir teilen nach jeweils **{{batch}}** Kontakten ein Fortschrittsupdate.
Das Abrufen kann etwas dauern – prüfen Sie den aktuellen Stand jederzeit mit `contacts status`.
cli.cmd.options.job.attempts: |-
Anzahl der erneuten Versuche, bevor der Auftrag als fehlgeschlagen markiert wird.
@@ -515,3 +506,144 @@ whatsapp.to.chatwoot.message.facebook.ad: |-
---
💬 **Kundennachricht:**
{{{payload.body}}}
whatsapp.history.message.wrapper: |-
{{{content}}}
{{^payload.fromMe}}
{{/payload.fromMe}}
`🗓️ {{{timestamp}}}`
UNKNOWN: Unbekannt
ERROR: Fehler
PENDING: Wird gesendet
SERVER: Server
DEVICE: Gerät
READ: Gelesen
PLAYED: Abgespielt
whatsapp.to.chatwoot.message.has.media.no.media: >-
{{#content}}
{{{content}}}
{{/content}}
🖼️⚠️ **Diese Nachricht enthält Medien, konnte aber nicht heruntergeladen
werden**
📱 Bitte öffnen Sie **WhatsApp**, um sie anzusehen.
{{^content}}
Details: [{{{details.text}}}]({{{details.url}}})
{{/content}}
cli.cmd.root.sub.queue: '🧩 **Warteschlange**:'
cli.cmd.messages.summary: WhatsApp-Nachrichten abrufen.
cli.cmd.messages.description:
💬 Führen Sie `messages pull` aus, um eine Synchronisierung zu starten, oder
`messages status`, um den Fortschritt zu prüfen.
cli.cmd.messages.action.description:
'`pull`, um das Abrufen zu starten, oder `status`, um den aktuellen Job zu
prüfen.'
cli.cmd.messages.pull.option.chat:
Beschränkt das Abrufen auf eine bestimmte WhatsApp-Chat-ID.
cli.cmd.messages.pull.option.force:
Erzwingt, dass die Inbox Nachrichten erstellt, auch wenn die
WhatsApp-Nachricht bereits im Gesprächs-Mapping vorhanden ist.
cli.cmd.messages.pull.option.batch:
Anzahl der Nachrichten, die pro Paket abgerufen werden.
cli.cmd.messages.pull.option.progress:
Meldet den Fortschritt nach N Nachrichten. 0 deaktiviert die
Fortschrittsmeldungen.
cli.cmd.messages.pull.option.no-dm:
Ignoriert Direktnachrichten beim Abrufen des Verlaufs.
cli.cmd.messages.pull.option.groups:
Bezieht WhatsApp-Gruppen beim Abrufen mit ein.
cli.cmd.messages.pull.option.channels:
Bezieht WhatsApp-Kanäle beim Abrufen mit ein.
cli.cmd.messages.pull.option.status:
Bezieht WhatsApp-Statusmeldungen beim Abrufen mit ein.
cli.cmd.messages.pull.option.broadcast:
Bezieht Broadcast-Listen beim Abrufen mit ein.
cli.cmd.messages.pull.option.media:
Lädt Medienanhänge (Bilder, Videos, Dateien) beim Abrufen herunter.
cli.cmd.messages.pull.option.pause:
Stellt den Nachrichtenabruf in der Warteschlange auf Pause und stoppt neue
WhatsApp-Verarbeitung bis zum Abschluss.
cli.cmd.messages.pull.error.pause-no-queue:
⛔ `--pause` kann nicht verwendet werden, weil der **queue**-Befehl in dieser
Konfiguration deaktiviert ist.
cli.cmd.queue.description: Warteschlangen verwalten.
cli.cmd.queue.summary: Aktionen für Warteschlangen durchführen.
cli.cmd.queue.action.description: Wählen Sie eine Aktion.
cli.cmd.queue.status.description: Zeigt den Status einer Warteschlange an.
cli.cmd.queue.argument.name:
'Name der Warteschlange: `inbox` oder `whatsapp` (optional).'
cli.cmd.queue.start.description: Startet eine Warteschlange anhand des Namens.
cli.cmd.queue.stop.description: Stoppt eine Warteschlange anhand des Namens.
cli.cmd.queue.paused:
⚪🧩 Die Warteschlangen wurden pausiert. Senden Sie `queue status`, um den
Status zu prüfen.
cli.cmd.queue.resumed:
🟢🧩 Die Warteschlangen wurden fortgesetzt. Senden Sie `queue status`, um den
Status zu prüfen.
cli.cmd.queue.status.result: >-
📊 Warteschlangenstatus:
{{#queues}}
- **{{name}}**: {{#locked}}🔒{{/locked}}{{#paused}}⚪
Pausiert{{/paused}}{{^paused}}🟢 Aktiv{{/paused}}
{{/queues}}
cli.cmd.messages.pull.option.timeout-media:
Legt fest, wie lange versucht wird, Medien je Nachricht herunterzuladen.
cli.cmd.messages.pull.argument.end:
Legt fest, wo das Abruffenster endet; `2d` bedeutet vor zwei Tagen.
cli.cmd.messages.pull.argument.start:
Legt fest, wo das Abruffenster beginnt; `1d` bedeutet vor einem Tag (Standard
`0d`, also jetzt).
cli.cmd.messages.pull.already-running: >-
⏳ Der Job **Pull Messages** läuft bereits für **{{{chat}}}**. Warten Sie bis
zum Abschluss oder stoppen Sie ihn, bevor Sie einen neuen starten.
Senden Sie `messages status` für Details.
cli.cmd.messages.status.not-found:
ℹ️ Kein aktiver **Pull Messages**-Job gefunden. Starten Sie einen mit
`messages pull`.
cli.cmd.messages.pull.no-chats-found:
Keine WhatsApp-Chats für diesen Zeitraum gefunden.
cli.cmd.contacts.pull.option.progress:
Meldet den Fortschritt nach N Kontakten. 0 deaktiviert die Meldungen.
cli.cmd.contacts.pull.option.lids:
Bezieht WhatsApp-LID-Kontakte (anonyme Kontakte) in die Synchronisierung ein.
task.contacts.completed:
👤✅ Kontakte abgeschlossen → 🆕 {{progress.created}}, 🔄
{{progress.updated}}, ⚪ {{progress.skipped}}, 🔴 {{progress.errors}}, 🖼️
{{progress.avatar.updated}}
task.messages.started:
⏳ Nachrichten werden abgerufen 💬 {{{chat}}} ⏱️ {{{period}}}...
task.messages.details:
Senden Sie "{{{prefix}}}messages status", um weitere Details zu sehen.
task.messages.progress:
'⏳ Nachrichten {{{chat}}}: 🆕 {{progress.ok}}, 🟢 {{progress.exists}}, ⚪
{{progress.ignored}}, 🔴 {{progress.errors}}{{#last}} | 📅 {{{last}}}{{/last}}'
task.messages.completed:
✅ Nachrichten {{{chat}}} in {{{period}}} → 🆕 {{progress.ok}}, 🟢
{{progress.exists}}, ⚪ {{progress.ignored}}, 🔴 {{progress.errors}}
task.messages.status: |-
Nachrichten **{{{chat}}}** im Zeitraum ⏱️ **{{{period}}}**:
- ⚙️ Jobstatus: **{{state}}**
{{#last}}
- 📅 Zuletzt verarbeitet: **{{{last}}}**
{{/last}}
- 💬 Erstellt in: **{{{chats}}}** Chats
- 🆕 Erstellt: **{{{progress.ok}}}** Nachrichten
- 🟢 Bereits vorhanden: {{{progress.exists}}} Nachrichten
- ⚪ Ignoriert: {{{progress.ignored}}} Nachrichten
- 🔴 Fehler: {{{progress.errors}}} Nachrichten
Details:
[{{{details.text}}}]({{{details.url}}})
+1 -1
View File
@@ -396,7 +396,7 @@ cli.cmd.messages.pull.option.chat: |-
Limit the pull to a specific WhatsApp Chat ID.
cli.cmd.messages.pull.option.force: |-
Force ChatWoot to create messages even when the WhatsApp message is already present in the inbox mapping.
Force the inbox to create messages even when the WhatsApp message already exists in the conversation mapping.
cli.cmd.messages.pull.option.batch: |-
Number of messages to pull in each batch.
+142 -9
View File
@@ -193,9 +193,6 @@ cli.cmd.contacts.pull.option.avatar: |-
cli.cmd.contacts.pull.option.groups: |-
Incluir contactos de grupos de WhatsApp en la sincronización.
cli.cmd.contacts.pull.option.no-lids: |-
Omitir contactos LID de WhatsApp (JID de dispositivo vinculado) en la sincronización.
cli.cmd.contacts.pull.option.no-attributes: |-
No obtengas los atributos del contacto si ya existe (acelera el proceso).
@@ -204,12 +201,6 @@ cli.cmd.contacts.pull.already-running: |-
Envía `contacts status` para más detalles.
cli.cmd.contacts.pull.queued: |-
👥 Trabajo **Pull Contacts** en cola.
Compartiremos una actualización de progreso cada **{{batch}}** contactos.
La importación puede tardar; consulta el estado más reciente en cualquier momento con `contacts status`.
cli.cmd.options.job.attempts: |-
Número de intentos antes de marcar el trabajo como fallido.
@@ -512,3 +503,145 @@ whatsapp.to.chatwoot.message.facebook.ad: |-
---
💬 **Mensaje del cliente:**
{{{payload.body}}}
whatsapp.history.message.wrapper: |-
{{{content}}}
{{^payload.fromMe}}
{{/payload.fromMe}}
`🗓️ {{{timestamp}}}`
UNKNOWN: Desconocido
ERROR: Error
PENDING: Enviando
SERVER: Servidor
DEVICE: Dispositivo
READ: Leído
PLAYED: Reproducido
whatsapp.to.chatwoot.message.has.media.no.media: >-
{{#content}}
{{{content}}}
{{/content}}
🖼️⚠️ **El mensaje contiene contenido multimedia, pero no pudimos descargarlo**
📱 Abre **WhatsApp** para verlo.
{{^content}}
Detalles: [{{{details.text}}}]({{{details.url}}})
{{/content}}
cli.cmd.root.sub.queue: '🧩 **Cola**:'
cli.cmd.messages.summary: Extrae mensajes de WhatsApp.
cli.cmd.messages.description:
💬 Ejecuta `messages pull` para solicitar la sincronización de mensajes o
`messages status` para revisar el progreso.
cli.cmd.messages.action.description:
'`pull` para iniciar la extracción de mensajes o `status` para revisar el
trabajo activo.'
cli.cmd.messages.pull.option.chat:
Limita la extracción a un ID de chat de WhatsApp específico.
cli.cmd.messages.pull.option.force:
Obliga a la bandeja de entrada a crear mensajes incluso cuando el mensaje de
WhatsApp ya existe en el mapeo de la conversación.
cli.cmd.messages.pull.option.batch:
Número de mensajes que se extraen en cada lote.
cli.cmd.messages.pull.option.progress:
Informa el progreso cada N mensajes. Establécelo en 0 para desactivar los
informes de progreso.
cli.cmd.messages.pull.option.no-dm:
Omite los mensajes directos al extraer el historial.
cli.cmd.messages.pull.option.groups:
Incluye chats de grupo de WhatsApp al extraer el historial.
cli.cmd.messages.pull.option.channels:
Incluye canales de WhatsApp al extraer el historial.
cli.cmd.messages.pull.option.status:
Incluye actualizaciones de estado de WhatsApp al extraer el historial.
cli.cmd.messages.pull.option.broadcast:
Incluye listas de difusión al extraer el historial.
cli.cmd.messages.pull.option.media:
Descarga archivos multimedia (imágenes, videos, archivos) al extraer el
historial.
cli.cmd.messages.pull.option.pause:
Encola el trabajo de extracción de mensajes en estado pausado, deteniendo el
procesamiento de nuevos mensajes de WhatsApp hasta que finalice.
cli.cmd.messages.pull.error.pause-no-queue:
⛔ No se puede usar `--pause` porque el comando **queue** está deshabilitado
en esta configuración de la aplicación.
cli.cmd.queue.description: Gestiona las colas.
cli.cmd.queue.summary: Realiza acciones sobre las colas.
cli.cmd.queue.action.description: Elige una acción.
cli.cmd.queue.status.description: Muestra el estado de una cola.
cli.cmd.queue.argument.name:
'Nombre de la cola: `inbox` o `whatsapp` (opcional).'
cli.cmd.queue.start.description: Inicia una cola por nombre.
cli.cmd.queue.stop.description: Detiene una cola por nombre.
cli.cmd.queue.paused:
⚪🧩 Las colas se han pausado. Envía `queue status` para comprobar el estado.
cli.cmd.queue.resumed:
🟢🧩 Las colas se han reanudado. Envía `queue status` para comprobar el
estado.
cli.cmd.queue.status.result: >-
📊 Estado de la cola:
{{#queues}}
- **{{name}}**: {{#locked}}🔒{{/locked}}{{#paused}}⚪ En
pausa{{/paused}}{{^paused}}🟢 En ejecución{{/paused}}
{{/queues}}
cli.cmd.messages.pull.option.timeout-media:
Define cuánto tiempo se intenta descargar los archivos multimedia de cada
mensaje.
cli.cmd.messages.pull.argument.end:
Define dónde termina la ventana de extracción; por ejemplo, `2d` se detiene
hace dos días.
cli.cmd.messages.pull.argument.start:
Define desde dónde comienza la ventana de extracción; por ejemplo, `1d`
empieza hace un día (el valor predeterminado es `0d`, es decir, ahora).
cli.cmd.messages.pull.already-running: >-
⏳ El trabajo **Pull Messages** ya se está ejecutando para **{{{chat}}}**.
Espera a que termine o deténlo antes de iniciar uno nuevo.
Envía `messages status` para obtener detalles.
cli.cmd.messages.status.not-found:
ℹ️ No se encontró ningún trabajo activo de **Pull Messages**. Inicia uno con
`messages pull`.
cli.cmd.messages.pull.no-chats-found:
No se encontraron chats de WhatsApp de los que extraer mensajes en el período.
cli.cmd.contacts.pull.option.progress:
Informa el progreso cada N contactos. Establécelo en 0 para desactivar los
informes de progreso.
cli.cmd.contacts.pull.option.lids:
Incluye contactos LID de WhatsApp (contactos anónimos) en la sincronización.
task.contacts.completed:
👤✅ Contactos completados → 🆕 {{progress.created}}, 🔄 {{progress.updated}},
⚪ {{progress.skipped}}, 🔴 {{progress.errors}}, 🖼️
{{progress.avatar.updated}}
task.messages.started: ⏳ Extrayendo mensajes 💬 {{{chat}}} ⏱️ {{{period}}}...
task.messages.details:
Envía "{{{prefix}}}messages status" para ver más detalles.
task.messages.progress:
'⏳ Mensajes {{{chat}}}: 🆕 {{progress.ok}}, 🟢 {{progress.exists}}, ⚪
{{progress.ignored}}, 🔴 {{progress.errors}}{{#last}} | 📅 {{{last}}}{{/last}}'
task.messages.completed:
✅ Mensajes {{{chat}}} en {{{period}}} → 🆕 {{progress.ok}}, 🟢
{{progress.exists}}, ⚪ {{progress.ignored}}, 🔴 {{progress.errors}}
task.messages.status: |-
Mensajes **{{{chat}}}** en el periodo ⏱️ **{{{period}}}**:
- ⚙️ Estado del trabajo: **{{state}}**
{{#last}}
- 📅 Último procesado: **{{{last}}}**
{{/last}}
- 💬 Creados en: **{{{chats}}}** chats
- 🆕 Creados: **{{{progress.ok}}}** mensajes
- 🟢 Ya existen: {{{progress.exists}}} mensajes
- ⚪ Ignorados: {{{progress.ignored}}} mensajes
- 🔴 Errores: {{{progress.errors}}} mensajes
Detalles:
[{{{details.text}}}]({{{details.url}}})
+128 -9
View File
@@ -193,9 +193,6 @@ cli.cmd.contacts.pull.option.avatar: |-
cli.cmd.contacts.pull.option.groups: |-
مخاطبان گروه‌های واتساپ را در همگام‌سازی قرار دهید.
cli.cmd.contacts.pull.option.no-lids: |-
مخاطبان LID واتساپ (شناسه‌های دستگاه متصل JID) را در همگام‌سازی نادیده بگیرید.
cli.cmd.contacts.pull.option.no-attributes: |-
اگر مخاطب از قبل وجود دارد ویژگی‌های او را دریافت نکنید (فرآیند را سریع‌تر می‌کند).
@@ -204,12 +201,6 @@ cli.cmd.contacts.pull.already-running: |-
برای جزئیات `contacts status` را ارسال کنید.
cli.cmd.contacts.pull.queued: |-
👥 کار **Pull Contacts** در صف قرار گرفت.
پس از هر **{{batch}}** مخاطب یک به‌روزرسانی پیشرفت ارسال می‌کنیم.
دریافت مخاطبان ممکن است زمان‌بر باشد؛ هر زمان با `contacts status` آخرین وضعیت را بررسی کنید.
cli.cmd.options.job.attempts: |-
تعداد دفعات تلاش مجدد پیش از علامت‌گذاری کار به‌عنوان ناموفق.
@@ -512,3 +503,131 @@ whatsapp.to.chatwoot.message.facebook.ad: |-
---
💬 **پیام مشتری:**
{{{payload.body}}}
whatsapp.history.message.wrapper: |-
{{{content}}}
{{^payload.fromMe}}
{{/payload.fromMe}}
`🗓️ {{{timestamp}}}`
UNKNOWN: ناشناخته
ERROR: خطا
PENDING: در حال ارسال
SERVER: سرور
DEVICE: دستگاه
READ: خوانده شد
PLAYED: پخش شد
whatsapp.to.chatwoot.message.has.media.no.media: |-
{{#content}}
{{{content}}}
{{/content}}
🖼️⚠️ **پیام حاوی رسانه است اما نتوانستیم آن را دانلود کنیم**
📱 لطفاً برای مشاهده، **واتساپ** را باز کنید.
{{^content}}
جزئیات: [{{{details.text}}}]({{{details.url}}})
{{/content}}
cli.cmd.root.sub.queue: '🧩 **صف**:'
cli.cmd.messages.summary: دریافت پیام‌های واتساپ.
cli.cmd.messages.description:
💬 برای آغاز همگام‌سازی پیام‌ها `messages pull` را اجرا کنید یا برای مشاهده
پیشرفت `messages status` را اجرا کنید.
cli.cmd.messages.action.description:
'`pull` برای شروع دریافت پیام یا `status` برای بررسی کار فعال.'
cli.cmd.messages.pull.option.chat:
دریافت را به یک شناسه گفت‌وگوی مشخص واتساپ محدود می‌کند.
cli.cmd.messages.pull.option.force:
صندوق ورودی را مجبور می‌کند پیام بسازد حتی اگر پیام واتساپ قبلاً در نگاشت
مکالمه وجود داشته باشد.
cli.cmd.messages.pull.option.batch:
تعداد پیام‌هایی که در هر دسته دریافت می‌شوند.
cli.cmd.messages.pull.option.progress:
پیشرفت را هر N پیام اعلام می‌کند. مقدار 0 گزارش‌ها را غیرفعال می‌کند.
cli.cmd.messages.pull.option.no-dm:
هنگام دریافت تاریخچه، پیام‌های خصوصی را نادیده می‌گیرد.
cli.cmd.messages.pull.option.groups:
گروه‌های واتساپ را هنگام دریافت تاریخچه وارد می‌کند.
cli.cmd.messages.pull.option.channels:
کانال‌های واتساپ را هنگام دریافت تاریخچه وارد می‌کند.
cli.cmd.messages.pull.option.status:
وضعیت‌های واتساپ را هنگام دریافت تاریخچه وارد می‌کند.
cli.cmd.messages.pull.option.broadcast:
لیست‌های پخش را هنگام دریافت تاریخچه وارد می‌کند.
cli.cmd.messages.pull.option.media:
هنگام دریافت تاریخچه، پیوست‌های رسانه‌ای (تصویر، ویدیو، فایل) را دانلود
می‌کند.
cli.cmd.messages.pull.option.pause:
کار دریافت پیام‌ها را در حالت توقف در صف قرار می‌دهد و پردازش پیام‌های جدید
واتساپ را تا پایان متوقف می‌کند.
cli.cmd.messages.pull.error.pause-no-queue:
⛔ امکان استفاده از `--pause` نیست زیرا فرمان **queue** در این پیکربندی
غیرفعال است.
cli.cmd.queue.description: مدیریت صف‌ها.
cli.cmd.queue.summary: اعمال روی صف‌ها را انجام دهید.
cli.cmd.queue.action.description: یک عمل را انتخاب کنید.
cli.cmd.queue.status.description: وضعیت یک صف را نشان می‌دهد.
cli.cmd.queue.argument.name: 'نام صف: `inbox` یا `whatsapp` (اختیاری).'
cli.cmd.queue.start.description: صف را بر اساس نام شروع کنید.
cli.cmd.queue.stop.description: صف را بر اساس نام متوقف کنید.
cli.cmd.queue.paused:
⚪🧩 صف‌ها متوقف شده‌اند. برای بررسی وضعیت `queue status` را ارسال کنید.
cli.cmd.queue.resumed:
🟢🧩 صف‌ها از سر گرفته شدند. برای بررسی وضعیت `queue status` را ارسال کنید.
cli.cmd.queue.status.result: >-
📊 وضعیت صف:
{{#queues}}
- **{{name}}**: {{#locked}}🔒{{/locked}}{{#paused}}⚪
متوقف{{/paused}}{{^paused}}🟢 فعال{{/paused}}
{{/queues}}
cli.cmd.messages.pull.option.timeout-media:
مدت تلاش برای دانلود رسانه هر پیام را مشخص می‌کند.
cli.cmd.messages.pull.argument.end:
پایان بازه دریافت را تعیین می‌کند؛ برای مثال `2d` یعنی دو روز پیش متوقف
می‌شود.
cli.cmd.messages.pull.argument.start:
آغاز بازه دریافت را تعیین می‌کند؛ برای مثال `1d` یعنی یک روز پیش (پیش‌فرض `0d`
یعنی اکنون).
cli.cmd.messages.pull.already-running: >-
⏳ کار **Pull Messages** هم‌اکنون برای **{{{chat}}}** در حال اجراست. منتظر
بمانید تا تمام شود یا قبل از شروع کار جدید، آن را متوقف کنید.
برای جزئیات `messages status` را ارسال کنید.
cli.cmd.messages.status.not-found:
ℹ️ هیچ کار فعال **Pull Messages** پیدا نشد. با `messages pull` یک کار را آغاز
کنید.
cli.cmd.messages.pull.no-chats-found:
هیچ گفت‌وگوی واتساپی برای این بازه زمانی پیدا نشد.
cli.cmd.contacts.pull.option.progress:
پیشرفت را هر N مخاطب اعلام می‌کند. مقدار 0 گزارش‌ها را غیرفعال می‌کند.
cli.cmd.contacts.pull.option.lids:
مخاطبین ناشناس واتساپ (LID) را در همگام‌سازی وارد می‌کند.
task.contacts.completed:
👤✅ مخاطبین تکمیل شدند → 🆕 {{progress.created}}، 🔄 {{progress.updated}}، ⚪
{{progress.skipped}}، 🔴 {{progress.errors}}، 🖼️ {{progress.avatar.updated}}
task.messages.started: ⏳ در حال دریافت پیام‌ها 💬 {{{chat}}} ⏱️ {{{period}}}...
task.messages.details:
برای جزئیات بیشتر "{{{prefix}}}messages status" را ارسال کنید.
task.messages.progress:
'⏳ پیام‌های {{{chat}}}: 🆕 {{progress.ok}}، 🟢 {{progress.exists}}، ⚪
{{progress.ignored}}، 🔴 {{progress.errors}}{{#last}} | 📅 {{{last}}}{{/last}}'
task.messages.completed:
✅ پیام‌های {{{chat}}} در {{{period}}} → 🆕 {{progress.ok}}، 🟢
{{progress.exists}}، ⚪ {{progress.ignored}}، 🔴 {{progress.errors}}
task.messages.status: |-
پیام‌های **{{{chat}}}** در بازه ⏱️ **{{{period}}}**:
- ⚙️ وضعیت کار: **{{state}}**
{{#last}}
- 📅 آخرین پردازش: **{{{last}}}**
{{/last}}
- 💬 ایجاد شده در: **{{{chats}}}** گفت‌وگو
- 🆕 ایجاد شده: **{{{progress.ok}}}** پیام
- 🟢 موجود: {{{progress.exists}}} پیام
- ⚪ نادیده گرفته شده: {{{progress.ignored}}} پیام
- 🔴 خطا: {{{progress.errors}}} پیام
جزئیات:
[{{{details.text}}}]({{{details.url}}})
+141 -9
View File
@@ -193,9 +193,6 @@ cli.cmd.contacts.pull.option.avatar: |-
cli.cmd.contacts.pull.option.groups: |-
Inclure les contacts de groupes WhatsApp dans la synchronisation.
cli.cmd.contacts.pull.option.no-lids: |-
Exclure les contacts LID WhatsApp (JID d'appareil lié) de la synchronisation.
cli.cmd.contacts.pull.option.no-attributes: |-
Ne pas importer les attributs si le contact existe déjà (accélère le processus).
@@ -204,12 +201,6 @@ cli.cmd.contacts.pull.already-running: |-
Envoyez `contacts status` pour plus de détails.
cli.cmd.contacts.pull.queued: |-
👥 Tâche **Pull Contacts** mise en file d'attente.
Nous partagerons une mise à jour toutes les **{{batch}}** contacts.
L'import peut prendre du temps — consultez l'état le plus récent à tout moment avec `contacts status`.
cli.cmd.options.job.attempts: |-
Nombre de tentatives avant de marquer la tâche comme échouée.
@@ -512,3 +503,144 @@ whatsapp.to.chatwoot.message.facebook.ad: |-
---
💬 **Message du client :**
{{{payload.body}}}
whatsapp.history.message.wrapper: |-
{{{content}}}
{{^payload.fromMe}}
{{/payload.fromMe}}
`🗓️ {{{timestamp}}}`
UNKNOWN: Inconnu
ERROR: Erreur
PENDING: Envoi en cours
SERVER: Serveur
DEVICE: Appareil
READ: Lu
PLAYED: Écouté
whatsapp.to.chatwoot.message.has.media.no.media: >-
{{#content}}
{{{content}}}
{{/content}}
🖼️⚠️ **Le message contient un média, mais nous n’avons pas pu le télécharger**
📱 Ouvrez **WhatsApp** pour le consulter.
{{^content}}
Détails : [{{{details.text}}}]({{{details.url}}})
{{/content}}
cli.cmd.root.sub.queue: '🧩 **File** :'
cli.cmd.messages.summary: Récupérer les messages WhatsApp.
cli.cmd.messages.description:
💬 Exécutez `messages pull` pour lancer la synchronisation ou `messages
status` pour suivre l’avancement.
cli.cmd.messages.action.description:
'`pull` pour lancer la récupération ou `status` pour inspecter la tâche en
cours.'
cli.cmd.messages.pull.option.chat:
Limite la récupération à un identifiant de conversation WhatsApp précis.
cli.cmd.messages.pull.option.force:
Force la boîte de réception à créer des messages même si le message WhatsApp
existe déjà dans le mappage de la conversation.
cli.cmd.messages.pull.option.batch: Nombre de messages récupérés à chaque lot.
cli.cmd.messages.pull.option.progress:
Annonce la progression toutes les N messages. Mettre 0 pour désactiver les
rapports.
cli.cmd.messages.pull.option.no-dm:
Ignore les messages directs lors de la récupération de l’historique.
cli.cmd.messages.pull.option.groups:
Inclut les groupes WhatsApp lors de la récupération de l’historique.
cli.cmd.messages.pull.option.channels:
Inclut les canaux WhatsApp lors de la récupération de l’historique.
cli.cmd.messages.pull.option.status:
Inclut les statuts WhatsApp lors de la récupération de l’historique.
cli.cmd.messages.pull.option.broadcast:
Inclut les listes de diffusion lors de la récupération de l’historique.
cli.cmd.messages.pull.option.media:
Télécharge les pièces jointes (images, vidéos, fichiers) lors de la
récupération.
cli.cmd.messages.pull.option.pause:
Met la tâche de récupération en file d’attente à l’arrêt, suspendant les
nouveaux messages WhatsApp jusqu’à la fin.
cli.cmd.messages.pull.error.pause-no-queue:
⛔ Impossible d’utiliser `--pause` car la commande **queue** est désactivée
dans cette configuration.
cli.cmd.queue.description: Gérer les files.
cli.cmd.queue.summary: Effectuer des actions sur les files.
cli.cmd.queue.action.description: Choisissez une action.
cli.cmd.queue.status.description: Affiche l’état d’une file.
cli.cmd.queue.argument.name:
'Nom de la file : `inbox` ou `whatsapp` (facultatif).'
cli.cmd.queue.start.description: Démarre une file par son nom.
cli.cmd.queue.stop.description: Arrête une file par son nom.
cli.cmd.queue.paused:
⚪🧩 Les files ont été mises en pause. Envoyez `queue status` pour vérifier
l’état.
cli.cmd.queue.resumed:
🟢🧩 Les files ont repris. Envoyez `queue status` pour vérifier l’état.
cli.cmd.queue.status.result: >-
📊 État de la file :
{{#queues}}
- **{{name}}** : {{#locked}}🔒{{/locked}}{{#paused}}⚪ En
pause{{/paused}}{{^paused}}🟢 En cours{{/paused}}
{{/queues}}
cli.cmd.messages.pull.option.timeout-media:
Définit la durée d’une tentative de téléchargement des médias de chaque
message.
cli.cmd.messages.pull.argument.end:
Définit la fin de la fenêtre de récupération, par exemple `2d` s’arrête deux
jours en arrière.
cli.cmd.messages.pull.argument.start:
Définit le début de la fenêtre, par exemple `1d` commence un jour en arrière
(par défaut `0d`, maintenant).
cli.cmd.messages.pull.already-running: >-
⏳ La tâche **Pull Messages** est déjà en cours pour **{{{chat}}}**. Patientez
jusqu’à la fin ou arrêtez-la avant d’en lancer une nouvelle.
Envoyez `messages status` pour plus de détails.
cli.cmd.messages.status.not-found:
ℹ️ Aucune tâche **Pull Messages** active trouvée. Lancez-en une avec `messages
pull`.
cli.cmd.messages.pull.no-chats-found:
Aucune conversation WhatsApp trouvée pour cette période.
cli.cmd.contacts.pull.option.progress:
Annonce la progression toutes les N contacts. Mettre 0 pour désactiver les
rapports.
cli.cmd.contacts.pull.option.lids:
Inclut les contacts LID WhatsApp (contacts anonymes) dans la synchronisation.
task.contacts.completed:
👤✅ Contacts terminés → 🆕 {{progress.created}}, 🔄 {{progress.updated}}, ⚪
{{progress.skipped}}, 🔴 {{progress.errors}}, 🖼️ {{progress.avatar.updated}}
task.messages.started:
⏳ Récupération des messages 💬 {{{chat}}} ⏱️ {{{period}}}...
task.messages.details:
Envoyez "{{{prefix}}}messages status" pour plus de détails.
task.messages.progress:
'⏳ Messages {{{chat}}} : 🆕 {{progress.ok}}, 🟢 {{progress.exists}}, ⚪
{{progress.ignored}}, 🔴 {{progress.errors}}{{#last}} | 📅 {{{last}}}{{/last}}'
task.messages.completed:
✅ Messages {{{chat}}} pendant {{{period}}} → 🆕 {{progress.ok}}, 🟢
{{progress.exists}}, ⚪ {{progress.ignored}}, 🔴 {{progress.errors}}
task.messages.status: |-
Messages **{{{chat}}}** sur la période ⏱️ **{{{period}}}** :
- ⚙️ État de la tâche : **{{state}}**
{{#last}}
- 📅 Dernier traité : **{{{last}}}**
{{/last}}
- 💬 Créés dans : **{{{chats}}}** conversations
- 🆕 Créés : **{{{progress.ok}}}** messages
- 🟢 Déjà existants : {{{progress.exists}}} messages
- ⚪ Ignorés : {{{progress.ignored}}} messages
- 🔴 Erreurs : {{{progress.errors}}} messages
Détails :
[{{{details.text}}}]({{{details.url}}})
+113 -9
View File
@@ -193,9 +193,6 @@ cli.cmd.contacts.pull.option.avatar: |-
cli.cmd.contacts.pull.option.groups: |-
כלול בסנכרון אנשי קשר של קבוצות WhatsApp.
cli.cmd.contacts.pull.option.no-lids: |-
דלג בסנכרון על אנשי קשר מסוג LID של WhatsApp (כתובות JID של מכשירים מקושרים).
cli.cmd.contacts.pull.option.no-attributes: |-
אל תמשוך מאפייני איש קשר אם הוא כבר קיים (מאיץ את התהליך).
@@ -204,12 +201,6 @@ cli.cmd.contacts.pull.already-running: |-
שלח `contacts status` לקבלת פרטים.
cli.cmd.contacts.pull.queued: |-
👥 המשימה **Pull Contacts** בתור.
נעדכן בהתקדמות כל **{{batch}}** אנשי קשר.
משיכת אנשי קשר יכולה לקחת זמן – בדוק בכל עת את הסטטוס האחרון עם `contacts status`.
cli.cmd.options.job.attempts: |-
מספר ניסיונות החזרה לפני שסימנים את המשימה ככושלת.
@@ -512,3 +503,116 @@ whatsapp.to.chatwoot.message.facebook.ad: |-
---
💬 **הודעת הלקוח:**
{{{payload.body}}}
whatsapp.history.message.wrapper: |-
{{{content}}}
{{^payload.fromMe}}
{{/payload.fromMe}}
`🗓️ {{{timestamp}}}`
UNKNOWN: לא ידוע
ERROR: שגיאה
PENDING: נשלח
SERVER: שרת
DEVICE: מכשיר
READ: נקרא
PLAYED: הושמע
whatsapp.to.chatwoot.message.has.media.no.media: |-
{{#content}}
{{{content}}}
{{/content}}
🖼️⚠️ **להודעה יש מדיה אך לא הצלחנו להוריד אותה**
📱 פתחו את **WhatsApp** כדי לצפות.
{{^content}}
פרטים: [{{{details.text}}}]({{{details.url}}})
{{/content}}
cli.cmd.root.sub.queue: '🧩 **תור**:'
cli.cmd.messages.summary: משיכת הודעות WhatsApp.
cli.cmd.messages.description:
💬 הפעילו `messages pull` כדי להתחיל סנכרון הודעות או `messages status` למעקב
אחר ההתקדמות.
cli.cmd.messages.action.description:
'`pull` להתחיל משיכה או `status` לבדיקת המשימה הפעילה.'
cli.cmd.messages.pull.option.chat: הגבלת המשיכה למזהה שיחה מסוים ב-WhatsApp.
cli.cmd.messages.pull.option.force:
אילוץ תיבת הדואר הנכנס ליצור הודעות גם אם ההודעה כבר קיימת במיפוי השיחה.
cli.cmd.messages.pull.option.batch: כמות ההודעות הנמשכות בכל אצווה.
cli.cmd.messages.pull.option.progress:
דיווח על ההתקדמות כל N הודעות. ערך 0 מבטל את הדוחות.
cli.cmd.messages.pull.option.no-dm: דילוג על הודעות פרטיות בעת משיכת ההיסטוריה.
cli.cmd.messages.pull.option.groups: הכללת קבוצות WhatsApp בעת משיכת ההיסטוריה.
cli.cmd.messages.pull.option.channels: הכללת ערוצי WhatsApp בעת משיכת ההיסטוריה.
cli.cmd.messages.pull.option.status:
הכללת סטטוסים של WhatsApp בעת משיכת ההיסטוריה.
cli.cmd.messages.pull.option.broadcast: הכללת רשימות שידור בעת משיכת ההיסטוריה.
cli.cmd.messages.pull.option.media:
הורדת קבצי מדיה (תמונות, סרטונים, קבצים) בעת משיכת ההיסטוריה.
cli.cmd.messages.pull.option.pause:
הכנסת משימת המשיכה לתור במצב מושהה ועצירת עיבוד הודעות WhatsApp חדשות עד
לסיום.
cli.cmd.messages.pull.error.pause-no-queue:
⛔ לא ניתן להשתמש ב-`--pause` כי הפקודה **queue** מושבתת בתצורה זו.
cli.cmd.queue.description: ניהול תורים.
cli.cmd.queue.summary: ביצוע פעולות על תורים.
cli.cmd.queue.action.description: בחרו פעולה.
cli.cmd.queue.status.description: הצגת מצב התור.
cli.cmd.queue.argument.name: 'שם התור: `inbox` או `whatsapp` (רשות).'
cli.cmd.queue.start.description: הפעלת תור לפי שם.
cli.cmd.queue.stop.description: עצירת תור לפי שם.
cli.cmd.queue.paused: ⚪🧩 התורים הושהו. שלחו `queue status` כדי לבדוק את המצב.
cli.cmd.queue.resumed: 🟢🧩 התורים חודשו. שלחו `queue status` כדי לבדוק את המצב.
cli.cmd.queue.status.result: >-
📊 מצב התור:
{{#queues}}
- **{{name}}**: {{#locked}}🔒{{/locked}}{{#paused}}⚪
מושהה{{/paused}}{{^paused}}🟢 פעיל{{/paused}}
{{/queues}}
cli.cmd.messages.pull.option.timeout-media:
הגדרת משך הניסיון להוריד מדיה לכל הודעה.
cli.cmd.messages.pull.argument.end:
הגדרת נקודת הסיום של חלון המשיכה; למשל `2d` נעצר יומיים אחורה.
cli.cmd.messages.pull.argument.start:
הגדרת נקודת ההתחלה של החלון; למשל `1d` מתחיל יום אחורה (ברירת המחדל `0d`,
כלומר עכשיו).
cli.cmd.messages.pull.already-running: >-
⏳ המשימה **Pull Messages** כבר פועלת עבור **{{{chat}}}**. המתינו לסיום או
עצרו לפני התחלת משימה חדשה.
שלחו `messages status` לפרטים.
cli.cmd.messages.status.not-found:
ℹ️ לא נמצאה משימת **Pull Messages** פעילה. התחילו אחת עם `messages pull`.
cli.cmd.messages.pull.no-chats-found: לא נמצאו שיחות WhatsApp למשיכה בתקופה זו.
cli.cmd.contacts.pull.option.progress:
דיווח על התקדמות כל N אנשי קשר. ערך 0 מבטל את הדוחות.
cli.cmd.contacts.pull.option.lids:
הכללת אנשי קשר אנונימיים של WhatsApp (LID) בסנכרון.
task.contacts.completed:
👤✅ השלמת אנשי קשר → 🆕 {{progress.created}}, 🔄 {{progress.updated}}, ⚪
{{progress.skipped}}, 🔴 {{progress.errors}}, 🖼️ {{progress.avatar.updated}}
task.messages.started: ⏳ מושכים הודעות 💬 {{{chat}}} ⏱️ {{{period}}}...
task.messages.details: שלחו "{{{prefix}}}messages status" לעוד פרטים.
task.messages.progress:
'⏳ הודעות {{{chat}}}: 🆕 {{progress.ok}}, 🟢 {{progress.exists}}, ⚪
{{progress.ignored}}, 🔴 {{progress.errors}}{{#last}} | 📅 {{{last}}}{{/last}}'
task.messages.completed:
✅ הודעות {{{chat}}} במהלך {{{period}}} → 🆕 {{progress.ok}}, 🟢
{{progress.exists}}, ⚪ {{progress.ignored}}, 🔴 {{progress.errors}}
task.messages.status: |-
הודעות **{{{chat}}}** בתקופה ⏱️ **{{{period}}}**:
- ⚙️ מצב המשימה: **{{state}}**
{{#last}}
- 📅 תאריך עיבוד אחרון: **{{{last}}}**
{{/last}}
- 💬 נוצרו ב-**{{{chats}}}** שיחות
- 🆕 נוצרו: **{{{progress.ok}}}** הודעות
- 🟢 קיימות כבר: {{{progress.exists}}} הודעות
- ⚪ הוזנחו: {{{progress.ignored}}} הודעות
- 🔴 שגיאות: {{{progress.errors}}} הודעות
פרטים:
[{{{details.text}}}]({{{details.url}}})
+126 -9
View File
@@ -193,9 +193,6 @@ cli.cmd.contacts.pull.option.avatar: |-
cli.cmd.contacts.pull.option.groups: |-
सिंक में WhatsApp समूह संपर्क शामिल करें।
cli.cmd.contacts.pull.option.no-lids: |-
सिंक में WhatsApp LID संपर्क (linked-device JID) को छोड़ें।
cli.cmd.contacts.pull.option.no-attributes: |-
यदि संपर्क पहले से मौजूद है तो उसके गुण न खींचें (इससे प्रक्रिया तेज होती है)।
@@ -204,12 +201,6 @@ cli.cmd.contacts.pull.already-running: |-
विवरण के लिए `contacts status` भेजें।
cli.cmd.contacts.pull.queued: |-
👥 **Pull Contacts** कार्य कतार में जोड़ा गया।
हम हर **{{batch}}** संपर्क पर प्रगति अपडेट साझा करेंगे।
संपर्क खींचने में समय लग सकता है — किसी भी समय `contacts status` से नवीनतम स्थिति देखें।
cli.cmd.options.job.attempts: |-
कार्य को विफल मानने से पहले पुनः प्रयासों की संख्या।
@@ -512,3 +503,129 @@ whatsapp.to.chatwoot.message.facebook.ad: |-
---
💬 **ग्राहक संदेश:**
{{{payload.body}}}
whatsapp.history.message.wrapper: |-
{{{content}}}
{{^payload.fromMe}}
{{/payload.fromMe}}
`🗓️ {{{timestamp}}}`
UNKNOWN: अज्ञात
ERROR: त्रुटि
PENDING: भेजा जा रहा है
SERVER: सर्वर
DEVICE: डिवाइस
READ: पढ़ा गया
PLAYED: चलाया गया
whatsapp.to.chatwoot.message.has.media.no.media: |-
{{#content}}
{{{content}}}
{{/content}}
🖼️⚠️ **संदेश में मीडिया है लेकिन हम इसे डाउनलोड नहीं कर सके**
📱 कृपया इसे देखने के लिए **WhatsApp** खोलें।
{{^content}}
विवरण: [{{{details.text}}}]({{{details.url}}})
{{/content}}
cli.cmd.root.sub.queue: '🧩 **क्यू**:'
cli.cmd.messages.summary: WhatsApp संदेश खींचें।
cli.cmd.messages.description:
💬 संदेश सिंक शुरू करने के लिए `messages pull` चलाएँ या प्रगति देखने के लिए
`messages status` चलाएँ।
cli.cmd.messages.action.description:
संदेश खींचने के लिए `pull` या सक्रिय कार्य देखने के लिए `status` का उपयोग
करें।
cli.cmd.messages.pull.option.chat:
खींचने को किसी विशिष्ट WhatsApp चैट आईडी तक सीमित करें।
cli.cmd.messages.pull.option.force:
अगर WhatsApp संदेश बातचीत मैपिंग में पहले से मौजूद है तब भी इनबॉक्स को संदेश
बनाने के लिए बाध्य करें।
cli.cmd.messages.pull.option.batch:
प्रत्येक बैच में खींचे जाने वाले संदेशों की संख्या।
cli.cmd.messages.pull.option.progress:
हर N संदेश पर प्रगति रिपोर्ट करें। रिपोर्ट बंद करने के लिए 0 सेट करें।
cli.cmd.messages.pull.option.no-dm: इतिहास खींचते समय डायरेक्ट संदेश छोड़ें।
cli.cmd.messages.pull.option.groups: इतिहास खींचते समय WhatsApp समूह शामिल करें।
cli.cmd.messages.pull.option.channels:
इतिहास खींचते समय WhatsApp चैनल शामिल करें।
cli.cmd.messages.pull.option.status:
इतिहास खींचते समय WhatsApp स्टेटस अपडेट शामिल करें।
cli.cmd.messages.pull.option.broadcast:
इतिहास खींचते समय प्रसारण सूचियाँ शामिल करें।
cli.cmd.messages.pull.option.media:
इतिहास खींचते समय मीडिया (छवियाँ, वीडियो, फाइलें) डाउनलोड करें।
cli.cmd.messages.pull.option.pause:
संदेश खींचने के कार्य को रोके गए अवस्था में कतार में डालें और पूरा होने तक नए
WhatsApp संदेशों की प्रोसेसिंग रोकें।
cli.cmd.messages.pull.error.pause-no-queue:
⛔ `--pause` का उपयोग नहीं किया जा सकता क्योंकि इस कॉन्फ़िगरेशन में **queue**
कमांड अक्षम है।
cli.cmd.queue.description: क्यू प्रबंधित करें।
cli.cmd.queue.summary: क्यू पर क्रियाएँ चलाएँ।
cli.cmd.queue.action.description: एक क्रिया चुनें।
cli.cmd.queue.status.description: किसी क्यू की स्थिति दिखाएँ।
cli.cmd.queue.argument.name: 'क्यू का नाम: `inbox` या `whatsapp` (वैकल्पिक)।'
cli.cmd.queue.start.description: नाम से क्यू शुरू करें।
cli.cmd.queue.stop.description: नाम से क्यू बंद करें।
cli.cmd.queue.paused:
⚪🧩 क्यू रोक दी गई हैं। स्थिति देखने के लिए `queue status` भेजें।
cli.cmd.queue.resumed:
🟢🧩 क्यू फिर से शुरू हो गई हैं। स्थिति देखने के लिए `queue status` भेजें।
cli.cmd.queue.status.result: >-
📊 क्यू की स्थिति:
{{#queues}}
- **{{name}}**: {{#locked}}🔒{{/locked}}{{#paused}}⚪ रुकी
हुई{{/paused}}{{^paused}}🟢 सक्रिय{{/paused}}
{{/queues}}
cli.cmd.messages.pull.option.timeout-media:
प्रत्येक संदेश के लिए मीडिया डाउनलोड करने की अवधि निर्धारित करें।
cli.cmd.messages.pull.argument.end:
खींचने की विंडो कहाँ समाप्त होगी, तय करें; उदाहरण के लिए `2d` दो दिन पहले
रुकता है।
cli.cmd.messages.pull.argument.start:
खींचने की विंडो कहाँ से शुरू होगी, तय करें; उदाहरण के लिए `1d` एक दिन पहले से
शुरू होता है (डिफ़ॉल्ट `0d`, यानी अभी)।
cli.cmd.messages.pull.already-running: >-
⏳ **Pull Messages** कार्य पहले से ही **{{{chat}}}** के लिए चल रहा है। समाप्त
होने तक प्रतीक्षा करें या नया शुरू करने से पहले इसे रोकें।
विवरण के लिए `messages status` भेजें।
cli.cmd.messages.status.not-found:
ℹ️ कोई सक्रिय **Pull Messages** कार्य नहीं मिला। `messages pull` से एक शुरू
करें।
cli.cmd.messages.pull.no-chats-found:
निर्धारित अवधि के लिए कोई WhatsApp चैट नहीं मिली।
cli.cmd.contacts.pull.option.progress:
हर N संपर्क पर प्रगति रिपोर्ट करें। रिपोर्ट बंद करने के लिए 0 सेट करें।
cli.cmd.contacts.pull.option.lids:
सिंक में WhatsApp LID (अनाम) संपर्क शामिल करें।
task.contacts.completed:
👤✅ संपर्क पूरे → 🆕 {{progress.created}}, 🔄 {{progress.updated}}, ⚪
{{progress.skipped}}, 🔴 {{progress.errors}}, 🖼️ {{progress.avatar.updated}}
task.messages.started:
⏳ संदेश खींचे जा रहे हैं 💬 {{{chat}}} ⏱️ {{{period}}}...
task.messages.details: और जानकारी के लिए "{{{prefix}}}messages status" भेजें।
task.messages.progress:
'⏳ संदेश {{{chat}}}: 🆕 {{progress.ok}}, 🟢 {{progress.exists}}, ⚪
{{progress.ignored}}, 🔴 {{progress.errors}}{{#last}} | 📅 {{{last}}}{{/last}}'
task.messages.completed:
✅ संदेश {{{chat}}} में {{{period}}} → 🆕 {{progress.ok}}, 🟢
{{progress.exists}}, ⚪ {{progress.ignored}}, 🔴 {{progress.errors}}
task.messages.status: |-
**{{{chat}}}** के संदेश ⏱️ **{{{period}}}** अवधि में:
- ⚙️ कार्य की स्थिति: **{{state}}**
{{#last}}
- 📅 अंतिम संसाधित: **{{{last}}}**
{{/last}}
- 💬 बनाए गए चैट: **{{{chats}}}**
- 🆕 बनाए गए: **{{{progress.ok}}}** संदेश
- 🟢 पहले से मौजूद: {{{progress.exists}}} संदेश
- ⚪ अनदेखा: {{{progress.ignored}}} संदेश
- 🔴 त्रुटियाँ: {{{progress.errors}}} संदेश
विवरण:
[{{{details.text}}}]({{{details.url}}})
+126 -9
View File
@@ -193,9 +193,6 @@ cli.cmd.contacts.pull.option.avatar: |-
cli.cmd.contacts.pull.option.groups: |-
Sertakan kontak grup WhatsApp dalam sinkronisasi.
cli.cmd.contacts.pull.option.no-lids: |-
Lewati kontak LID WhatsApp (JID perangkat terhubung) saat sinkronisasi.
cli.cmd.contacts.pull.option.no-attributes: |-
Jangan ambil atribut kontak jika kontak sudah ada (mempercepat proses).
@@ -204,12 +201,6 @@ cli.cmd.contacts.pull.already-running: |-
Kirim `contacts status` untuk detail.
cli.cmd.contacts.pull.queued: |-
👥 Pekerjaan **Pull Contacts** masuk antrean.
Kami akan membagikan pembaruan progres setiap **{{batch}}** kontak.
Penarikan kontak bisa memakan waktu—periksa status terbaru kapan saja dengan `contacts status`.
cli.cmd.options.job.attempts: |-
Jumlah percobaan ulang sebelum pekerjaan dianggap gagal.
@@ -512,3 +503,129 @@ whatsapp.to.chatwoot.message.facebook.ad: |-
---
💬 **Pesan Pelanggan:**
{{{payload.body}}}
whatsapp.history.message.wrapper: |-
{{{content}}}
{{^payload.fromMe}}
{{/payload.fromMe}}
`🗓️ {{{timestamp}}}`
UNKNOWN: Tidak diketahui
ERROR: Kesalahan
PENDING: Mengirim
SERVER: Server
DEVICE: Perangkat
READ: Dibaca
PLAYED: Diputar
whatsapp.to.chatwoot.message.has.media.no.media: |-
{{#content}}
{{{content}}}
{{/content}}
🖼️⚠️ **Pesan memiliki media, tetapi kami tidak dapat mengunduhnya**
📱 Buka **WhatsApp** untuk melihatnya.
{{^content}}
Detail: [{{{details.text}}}]({{{details.url}}})
{{/content}}
cli.cmd.root.sub.queue: '🧩 **Antrian**:'
cli.cmd.messages.summary: Tarik pesan WhatsApp.
cli.cmd.messages.description:
💬 Jalankan `messages pull` untuk memulai sinkronisasi pesan atau `messages
status` untuk memantau progres.
cli.cmd.messages.action.description:
'`pull` untuk memulai penarikan pesan atau `status` untuk memeriksa pekerjaan
yang berjalan.'
cli.cmd.messages.pull.option.chat:
Batasi penarikan pada ID chat WhatsApp tertentu.
cli.cmd.messages.pull.option.force:
Paksa kotak masuk membuat pesan meskipun pesan WhatsApp sudah ada di pemetaan
percakapan.
cli.cmd.messages.pull.option.batch: Jumlah pesan yang ditarik di setiap batch.
cli.cmd.messages.pull.option.progress:
Laporkan progres setiap N pesan. Setel ke 0 untuk menonaktifkan laporan.
cli.cmd.messages.pull.option.no-dm: Lewati pesan langsung saat menarik riwayat.
cli.cmd.messages.pull.option.groups:
Sertakan grup WhatsApp saat menarik riwayat.
cli.cmd.messages.pull.option.channels:
Sertakan Channel WhatsApp saat menarik riwayat.
cli.cmd.messages.pull.option.status:
Sertakan pembaruan status WhatsApp saat menarik riwayat.
cli.cmd.messages.pull.option.broadcast:
Sertakan daftar siaran saat menarik riwayat.
cli.cmd.messages.pull.option.media:
Unduh lampiran media (gambar, video, file) saat menarik riwayat.
cli.cmd.messages.pull.option.pause:
Masukkan pekerjaan penarikan pesan ke antrian dalam keadaan jeda dan hentikan
pemrosesan pesan WhatsApp baru sampai selesai.
cli.cmd.messages.pull.error.pause-no-queue:
⛔ Tidak dapat menggunakan `--pause` karena perintah **queue** dinonaktifkan
pada konfigurasi ini.
cli.cmd.queue.description: Kelola antrian.
cli.cmd.queue.summary: Jalankan tindakan pada antrian.
cli.cmd.queue.action.description: Pilih sebuah tindakan.
cli.cmd.queue.status.description: Tampilkan status sebuah antrian.
cli.cmd.queue.argument.name: 'Nama antrian: `inbox` atau `whatsapp` (opsional).'
cli.cmd.queue.start.description: Mulai antrian berdasarkan nama.
cli.cmd.queue.stop.description: Hentikan antrian berdasarkan nama.
cli.cmd.queue.paused:
⚪🧩 Antrian dijeda. Kirim `queue status` untuk memeriksa status.
cli.cmd.queue.resumed:
🟢🧩 Antrian dilanjutkan. Kirim `queue status` untuk memeriksa status.
cli.cmd.queue.status.result: >-
📊 Status antrian:
{{#queues}}
- **{{name}}**: {{#locked}}🔒{{/locked}}{{#paused}}⚪
Dijeda{{/paused}}{{^paused}}🟢 Berjalan{{/paused}}
{{/queues}}
cli.cmd.messages.pull.option.timeout-media:
Tetapkan berapa lama mencoba mengunduh media untuk setiap pesan.
cli.cmd.messages.pull.argument.end:
Tetapkan titik akhir jendela penarikan; misalnya `2d` berhenti dua hari yang
lalu.
cli.cmd.messages.pull.argument.start:
Tetapkan titik awal jendela penarikan; misalnya `1d` dimulai satu hari yang
lalu (default `0d`, yaitu sekarang).
cli.cmd.messages.pull.already-running: >-
⏳ Pekerjaan **Pull Messages** sudah berjalan untuk **{{{chat}}}**. Tunggu
hingga selesai atau hentikan sebelum memulai yang baru.
Kirim `messages status` untuk detail.
cli.cmd.messages.status.not-found:
ℹ️ Tidak ada pekerjaan **Pull Messages** aktif yang ditemukan. Mulai dengan
`messages pull`.
cli.cmd.messages.pull.no-chats-found:
Tidak ada chat WhatsApp yang ditemukan untuk periode tersebut.
cli.cmd.contacts.pull.option.progress:
Laporkan progres setiap N kontak. Setel ke 0 untuk menonaktifkan laporan.
cli.cmd.contacts.pull.option.lids:
Sertakan kontak WhatsApp LID (kontak anonim) dalam sinkronisasi.
task.contacts.completed:
👤✅ Kontak selesai → 🆕 {{progress.created}}, 🔄 {{progress.updated}}, ⚪
{{progress.skipped}}, 🔴 {{progress.errors}}, 🖼️ {{progress.avatar.updated}}
task.messages.started: ⏳ Menarik pesan 💬 {{{chat}}} ⏱️ {{{period}}}...
task.messages.details:
Kirim "{{{prefix}}}messages status" untuk melihat rincian.
task.messages.progress:
'⏳ Pesan {{{chat}}}: 🆕 {{progress.ok}}, 🟢 {{progress.exists}}, ⚪
{{progress.ignored}}, 🔴 {{progress.errors}}{{#last}} | 📅 {{{last}}}{{/last}}'
task.messages.completed:
✅ Pesan {{{chat}}} selama {{{period}}} → 🆕 {{progress.ok}}, 🟢
{{progress.exists}}, ⚪ {{progress.ignored}}, 🔴 {{progress.errors}}
task.messages.status: |-
Pesan **{{{chat}}}** dalam periode ⏱️ **{{{period}}}**:
- ⚙️ Status pekerjaan: **{{state}}**
{{#last}}
- 📅 Terakhir diproses: **{{{last}}}**
{{/last}}
- 💬 Dibuat di: **{{{chats}}}** percakapan
- 🆕 Dibuat: **{{{progress.ok}}}** pesan
- 🟢 Sudah ada: {{{progress.exists}}} pesan
- ⚪ Diabaikan: {{{progress.ignored}}} pesan
- 🔴 Kesalahan: {{{progress.errors}}} pesan
Detail:
[{{{details.text}}}]({{{details.url}}})
+124 -9
View File
@@ -193,9 +193,6 @@ cli.cmd.contacts.pull.option.avatar: |-
cli.cmd.contacts.pull.option.groups: |-
ਸਿੰਕ ਵਿੱਚ WhatsApp ਗਰੁੱਪ ਸੰਪਰਕ ਸ਼ਾਮਲ ਕਰੋ।
cli.cmd.contacts.pull.option.no-lids: |-
ਸਿੰਕ ਵਿੱਚ WhatsApp LID ਸੰਪਰਕ (ਲਿੰਕਡ-ਡਿਵਾਈਸ JID) ਨੂੰ ਛੱਡੋ।
cli.cmd.contacts.pull.option.no-attributes: |-
ਜੇ ਸੰਪਰਕ ਪਹਿਲਾਂ ਹੀ ਮੌਜੂਦ ਹੈ ਤਾਂ ਉਸਦੇ ਗੁਣ ਨਾ ਖਿੱਚੋ (ਇਸ ਨਾਲ ਪ੍ਰਕਿਰਿਆ ਤੇਜ਼ ਹੁੰਦੀ ਹੈ)।
@@ -204,12 +201,6 @@ cli.cmd.contacts.pull.already-running: |-
ਵੇਰਵਿਆਂ ਲਈ `contacts status` ਭੇਜੋ।
cli.cmd.contacts.pull.queued: |-
👥 **Pull Contacts** ਕੰਮ ਕਤਾਰ ਵਿੱਚ ਲਗਾਇਆ ਗਿਆ ਹੈ।
ਅਸੀਂ ਹਰ **{{batch}}** ਸੰਪਰਕ ਤੋਂ ਬਾਅਦ ਤਰੱਕੀ ਅਪਡੇਟ ਸਾਂਝੇ ਕਰਾਂਗੇ।
ਸੰਪਰਕ ਖਿੱਚਣ ਵਿੱਚ ਸਮਾਂ ਲੱਗ ਸਕਦਾ ਹੈ — ਕਿਸੇ ਵੀ ਵੇਲੇ `contacts status` ਨਾਲ ਤਾਜ਼ਾ ਸਥਿਤੀ ਜਾਂਚੋ।
cli.cmd.options.job.attempts: |-
ਕੰਮ ਨੂੰ ਅਸਫਲ ਘੋਸ਼ਿਤ ਕਰਨ ਤੋਂ ਪਹਿਲਾਂ ਦੁਬਾਰਾ ਕੋਸ਼ਿਸ਼ਾਂ ਦੀ ਗਿਣਤੀ।
@@ -512,3 +503,127 @@ whatsapp.to.chatwoot.message.facebook.ad: |-
---
💬 **ਗਾਹਕ ਦਾ ਸੁਨੇਹਾ:**
{{{payload.body}}}
whatsapp.history.message.wrapper: |-
{{{content}}}
{{^payload.fromMe}}
{{/payload.fromMe}}
`🗓️ {{{timestamp}}}`
UNKNOWN: ਅਣਜਾਣ
ERROR: ਗਲਤੀ
PENDING: ਭੇਜਿਆ ਜਾ ਰਿਹਾ ਹੈ
SERVER: ਸਰਵਰ
DEVICE: ਜੰਤਰ
READ: ਪੜ੍ਹਿਆ ਗਿਆ
PLAYED: ਚਲਾਇਆ ਗਿਆ
whatsapp.to.chatwoot.message.has.media.no.media: |-
{{#content}}
{{{content}}}
{{/content}}
🖼️⚠️ **ਸੁਨੇਹੇ ਵਿੱਚ ਮੀਡੀਆ ਹੈ ਪਰ ਅਸੀਂ ਇਸਨੂੰ ਡਾਊਨਲੋਡ ਨਹੀਂ ਕਰ ਸਕੇ**
📱 ਕਿਰਪਾ ਕਰਕੇ ਵੇਖਣ ਲਈ **WhatsApp** ਖੋਲ੍ਹੋ।
{{^content}}
ਵੇਰਵੇ: [{{{details.text}}}]({{{details.url}}})
{{/content}}
cli.cmd.root.sub.queue: '🧩 **ਕਤਾਰ**:'
cli.cmd.messages.summary: WhatsApp ਸੁਨੇਹੇ ਖਿੱਚੋ।
cli.cmd.messages.description:
💬 ਸੁਨੇਹੇ ਸਿੰਕ ਕਰਨ ਲਈ `messages pull` ਚਲਾਓ ਜਾਂ ਪ੍ਰਗਤੀ ਦੇਖਣ ਲਈ `messages
status` ਚਲਾਓ।
cli.cmd.messages.action.description:
ਸੁਨੇਹੇ ਖਿੱਚਣ ਲਈ `pull` ਜਾਂ ਸਕ੍ਰਿਆ ਕੰਮ ਦੇਖਣ ਲਈ `status` ਵਰਤੋਂ।
cli.cmd.messages.pull.option.chat:
ਖਿੱਚਣ ਨੂੰ ਕਿਸੇ ਖਾਸ WhatsApp ਚੈਟ ID ਤੱਕ ਸੀਮਿਤ ਕਰੋ।
cli.cmd.messages.pull.option.force:
ਜੇ WhatsApp ਸੁਨੇਹਾ ਪਹਿਲਾਂ ਹੀ ਗੱਲਬਾਤ ਦੇ ਮੈਪ ਵਿੱਚ ਹੈ ਤਾਂ ਵੀ ਇਨਬਾਕਸ ਨੂੰ ਸੁਨੇਹੇ
ਬਣਾਉਣ ਲਈ ਮਜਬੂਰ ਕਰੋ।
cli.cmd.messages.pull.option.batch:
ਹਰ ਬੈਚ ਵਿੱਚ ਖਿੱਚੇ ਜਾਣ ਵਾਲੇ ਸੁਨੇਹਿਆਂ ਦੀ ਗਿਣਤੀ।
cli.cmd.messages.pull.option.progress:
ਹਰ N ਸੁਨੇਹਿਆਂ ’ਤੇ ਪ੍ਰਗਤੀ ਦੀ ਰਿਪੋਰਟ ਕਰੋ। ਰਿਪੋਰਟਾਂ ਬੰਦ ਕਰਨ ਲਈ 0 ਸੈੱਟ ਕਰੋ।
cli.cmd.messages.pull.option.no-dm: ਇਤਿਹਾਸ ਖਿੱਚਦੇ ਸਮੇਂ ਡਾਇਰੈਕਟ ਸੁਨੇਹੇ ਛੱਡੋ।
cli.cmd.messages.pull.option.groups:
ਇਤਿਹਾਸ ਖਿੱਚਦੇ ਸਮੇਂ WhatsApp ਗਰੁੱਪ ਸ਼ਾਮਲ ਕਰੋ।
cli.cmd.messages.pull.option.channels:
ਇਤਿਹਾਸ ਖਿੱਚਦੇ ਸਮੇਂ WhatsApp ਚੈਨਲ ਸ਼ਾਮਲ ਕਰੋ।
cli.cmd.messages.pull.option.status:
ਇਤਿਹਾਸ ਖਿੱਚਦੇ ਸਮੇਂ WhatsApp ਸਟੇਟਸ ਅੱਪਡੇਟ ਸ਼ਾਮਲ ਕਰੋ।
cli.cmd.messages.pull.option.broadcast:
ਇਤਿਹਾਸ ਖਿੱਚਦੇ ਸਮੇਂ ਪ੍ਰਸਾਰਣ ਸੂਚੀਆਂ ਸ਼ਾਮਲ ਕਰੋ।
cli.cmd.messages.pull.option.media:
ਇਤਿਹਾਸ ਖਿੱਚਦੇ ਸਮੇਂ ਮੀਡੀਆ (ਤਸਵੀਰਾਂ, ਵੀਡੀਓ, ਫਾਈਲਾਂ) ਡਾਊਨਲੋਡ ਕਰੋ।
cli.cmd.messages.pull.option.pause:
ਸੁਨੇਹੇ ਖਿੱਚਣ ਦਾ ਕੰਮ ਠਹਿਰੇ ਹੋਏ ਹਾਲਤ ਵਿੱਚ ਕਤਾਰ ਵਿੱਚ ਪਾਓ ਅਤੇ ਮੁਕੰਮਲ ਹੋਣ ਤੱਕ ਨਵੇਂ
WhatsApp ਸੁਨੇਹਿਆਂ ਦੀ ਪ੍ਰਕਿਰਿਆ ਰੋਕੋ।
cli.cmd.messages.pull.error.pause-no-queue:
⛔ `--pause` ਵਰਤ ਨਹੀਂ ਸਕਦੇ ਕਿਉਂਕਿ ਇਸ ਸੰਰਚਨਾ ਵਿੱਚ **queue** ਹੁਕਮ ਅਸਮਰੱਥ ਹੈ।
cli.cmd.queue.description: ਕਤਾਰਾਂ ਦਾ ਪ੍ਰਬੰਧਨ ਕਰੋ।
cli.cmd.queue.summary: ਕਤਾਰਾਂ ’ਤੇ ਕਾਰਵਾਈਆਂ ਕਰੋ।
cli.cmd.queue.action.description: ਇੱਕ ਕਾਰਵਾਈ ਚੁਣੋ।
cli.cmd.queue.status.description: ਕਤਾਰ ਦੀ ਸਥਿਤੀ ਦਿਖਾਓ।
cli.cmd.queue.argument.name: 'ਕਤਾਰ ਦਾ ਨਾਮ: `inbox` ਜਾਂ `whatsapp` (ਵਿਕਲਪਿਕ)।'
cli.cmd.queue.start.description: ਨਾਂ ਦੁਆਰਾ ਕਤਾਰ ਸ਼ੁਰੂ ਕਰੋ।
cli.cmd.queue.stop.description: ਨਾਂ ਦੁਆਰਾ ਕਤਾਰ ਰੋਕੋ।
cli.cmd.queue.paused:
⚪🧩 ਕਤਾਰਾਂ ਨੂੰ ਰੋਕ ਦਿੱਤਾ ਗਿਆ ਹੈ। ਸਥਿਤੀ ਜਾਂਚਣ ਲਈ `queue status` ਭੇਜੋ।
cli.cmd.queue.resumed:
🟢🧩 ਕਤਾਰਾਂ ਮੁੜ ਚਾਲੂ ਹੋ ਚੁੱਕੀਆਂ ਹਨ। ਸਥਿਤੀ ਜਾਂਚਣ ਲਈ `queue status` ਭੇਜੋ।
cli.cmd.queue.status.result: >-
📊 ਕਤਾਰ ਦੀ ਸਥਿਤੀ:
{{#queues}}
- **{{name}}**: {{#locked}}🔒{{/locked}}{{#paused}}⚪ ਰੋਕੀ
ਗਈ{{/paused}}{{^paused}}🟢 ਚੱਲ ਰਹੀ{{/paused}}
{{/queues}}
cli.cmd.messages.pull.option.timeout-media:
ਹਰ ਸੁਨੇਹੇ ਲਈ ਮੀਡੀਆ ਡਾਊਨਲੋਡ ਕਰਨ ਦਾ ਸਮਾਂ ਨਿਰਧਾਰਤ ਕਰੋ।
cli.cmd.messages.pull.argument.end:
ਖਿੱਚਣ ਦੀ ਵਿੰਡੋ ਕਿੱਥੇ ਖਤਮ ਹੁੰਦੀ ਹੈ ਨਿਰਧਾਰਤ ਕਰੋ; ਜਿਵੇਂ `2d` ਦੋ ਦਿਨ ਪਹਿਲਾਂ ਰੁਕਦਾ
ਹੈ।
cli.cmd.messages.pull.argument.start:
ਖਿੱਚਣ ਦੀ ਵਿੰਡੋ ਕਿੱਥੋਂ ਸ਼ੁਰੂ ਹੁੰਦੀ ਹੈ ਨਿਰਧਾਰਤ ਕਰੋ; ਜਿਵੇਂ `1d` ਇੱਕ ਦਿਨ ਪਹਿਲਾਂ
ਤੋਂ ਸ਼ੁਰੂ ਹੁੰਦਾ ਹੈ (ਡਿਫ਼ਾਲਟ `0d`, ਅਰਥਾਤ ਹੁਣ)।
cli.cmd.messages.pull.already-running: >-
⏳ **Pull Messages** ਕੰਮ ਪਹਿਲਾਂ ਹੀ **{{{chat}}}** ਲਈ ਚੱਲ ਰਿਹਾ ਹੈ। ਨਵਾਂ ਸ਼ੁਰੂ
ਕਰਨ ਤੋਂ ਪਹਿਲਾਂ ਇਸਦੇ ਮੁਕੰਮਲ ਹੋਣ ਦੀ ਉਡੀਕ ਕਰੋ ਜਾਂ ਇਸਨੂੰ ਰੋਕੋ।
ਵੇਰਵੇ ਲਈ `messages status` ਭੇਜੋ।
cli.cmd.messages.status.not-found:
ℹ️ ਕੋਈ ਸਰਗਰਮ **Pull Messages** ਕੰਮ ਨਹੀਂ ਮਿਲਿਆ। `messages pull` ਨਾਲ ਇੱਕ ਸ਼ੁਰੂ
ਕਰੋ।
cli.cmd.messages.pull.no-chats-found: ਇਸ ਅਵਧੀ ਲਈ ਕੋਈ WhatsApp ਚੈਟ ਨਹੀਂ ਮਿਲੀ।
cli.cmd.contacts.pull.option.progress:
ਹਰ N ਸੰਪਰਕ ’ਤੇ ਪ੍ਰਗਤੀ ਦੱਸੋ। ਰਿਪੋਰਟਾਂ ਬੰਦ ਕਰਨ ਲਈ 0 ਸੈੱਟ ਕਰੋ।
cli.cmd.contacts.pull.option.lids:
ਸਿੰਕ ਵਿੱਚ WhatsApp LID (ਅਣਪਛਾਤੇ) ਸੰਪਰਕ ਸ਼ਾਮਲ ਕਰੋ।
task.contacts.completed:
👤✅ ਸੰਪਰਕ ਮੁਕੰਮਲ → 🆕 {{progress.created}}, 🔄 {{progress.updated}}, ⚪
{{progress.skipped}}, 🔴 {{progress.errors}}, 🖼️ {{progress.avatar.updated}}
task.messages.started:
⏳ ਸੁਨੇਹੇ ਖਿੱਚੇ ਜਾ ਰਹੇ ਹਨ 💬 {{{chat}}} ⏱️ {{{period}}}...
task.messages.details: ਵਧੇਰੇ ਵੇਰਵਿਆਂ ਲਈ "{{{prefix}}}messages status" ਭੇਜੋ।
task.messages.progress:
'⏳ ਸੁਨੇਹੇ {{{chat}}}: 🆕 {{progress.ok}}, 🟢 {{progress.exists}}, ⚪
{{progress.ignored}}, 🔴 {{progress.errors}}{{#last}} | 📅 {{{last}}}{{/last}}'
task.messages.completed:
✅ ਸੁਨੇਹੇ {{{chat}}} ਵਿਚ {{{period}}} → 🆕 {{progress.ok}}, 🟢
{{progress.exists}}, ⚪ {{progress.ignored}}, 🔴 {{progress.errors}}
task.messages.status: |-
**{{{chat}}}** ਦੇ ਸੁਨੇਹੇ ⏱️ **{{{period}}}** ਸਮੇਂ ਵਿੱਚ:
- ⚙️ ਕੰਮ ਦੀ ਸਥਿਤੀ: **{{state}}**
{{#last}}
- 📅 ਆਖ਼ਰੀ ਪ੍ਰਕਿਰਿਆ: **{{{last}}}**
{{/last}}
- 💬 ਬਣਾਇਆ ਗਿਆ: **{{{chats}}}** ਚੈਟਾਂ ਵਿੱਚ
- 🆕 ਬਣਾਇਆ: **{{{progress.ok}}}** ਸੁਨੇਹੇ
- 🟢 ਪਹਿਲਾਂ ਤੋਂ ਮੌਜੂਦ: {{{progress.exists}}} ਸੁਨੇਹੇ
- ⚪ ਅਣਦੇਖੇ: {{{progress.ignored}}} ਸੁਨੇਹੇ
- 🔴 ਗਲਤੀਆਂ: {{{progress.errors}}} ਸੁਨੇਹੇ
ਵੇਰਵੇ:
[{{{details.text}}}]({{{details.url}}})
+131 -11
View File
@@ -21,8 +21,6 @@ datetime:
minute: 2-digit
# https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat#timezonename
timeZoneName: short
# https://en.wikipedia.org/wiki/List_of_tz_database_time_zones
timeZone: 'America/Sao_Paulo'
job.report.error: |-
⚠️ **{{{header}}}**
@@ -196,9 +194,6 @@ cli.cmd.contacts.pull.option.avatar: |-
cli.cmd.contacts.pull.option.groups: |-
Incluir contatos de grupo do WhatsApp na sincronização.
cli.cmd.contacts.pull.option.no-lids: |-
Ignorar contatos LID do WhatsApp (JID de dispositivo vinculado) na sincronização.
cli.cmd.contacts.pull.option.no-attributes: |-
Não busque atributos do contato se ele já existir (acelera o processo).
@@ -207,12 +202,6 @@ cli.cmd.contacts.pull.already-running: |-
Envie `contacts status` para obter detalhes.
cli.cmd.contacts.pull.queued: |-
👥 Trabalho **Pull Contacts** enfileirado.
Compartilharemos atualizações a cada **{{batch}}** contatos.
Buscar contatos pode levar algum tempo — verifique o status mais recente a qualquer momento com `contacts status`.
cli.cmd.options.job.attempts: |-
Número de tentativas antes de marcar o trabalho como falho.
@@ -519,3 +508,134 @@ whatsapp.to.chatwoot.message.facebook.ad: |-
---
💬 **MENSAGEM DO CLIENTE:**
{{{payload.body}}}
whatsapp.history.message.wrapper: |-
{{{content}}}
{{^payload.fromMe}}
{{/payload.fromMe}}
`🗓️ {{{timestamp}}}`
UNKNOWN: Desconhecido
ERROR: Erro
PENDING: Enviando
SERVER: Servidor
DEVICE: Dispositivo
READ: Lido
PLAYED: Reproduzido
whatsapp.to.chatwoot.message.has.media.no.media: |-
{{#content}}
{{{content}}}
{{/content}}
🖼️⚠️ **A mensagem tem mídia, mas não conseguimos fazer o download**
📱 Abra o **WhatsApp** para visualizá-la.
{{^content}}
Detalhes: [{{{details.text}}}]({{{details.url}}})
{{/content}}
cli.cmd.root.sub.queue: '🧩 **Fila**:'
cli.cmd.messages.summary: Buscar mensagens do WhatsApp.
cli.cmd.messages.description:
💬 Execute `messages pull` para solicitar a sincronização de mensagens ou
`messages status` para acompanhar o progresso.
cli.cmd.messages.action.description:
'`pull` para iniciar a busca de mensagens ou `status` para inspecionar o
trabalho em andamento.'
cli.cmd.messages.pull.option.chat:
Limita a busca a um ID de conversa do WhatsApp específico.
cli.cmd.messages.pull.option.force:
Força a caixa de entrada a criar mensagens mesmo quando a mensagem do WhatsApp
já existe no mapeamento da conversa.
cli.cmd.messages.pull.option.batch:
Quantidade de mensagens buscadas em cada lote.
cli.cmd.messages.pull.option.progress:
Relata o progresso a cada N mensagens. Defina 0 para desativar os relatórios
de progresso.
cli.cmd.messages.pull.option.no-dm:
Ignora mensagens diretas ao buscar o histórico.
cli.cmd.messages.pull.option.groups:
Inclui conversas em grupo do WhatsApp ao buscar o histórico.
cli.cmd.messages.pull.option.channels:
Inclui canais do WhatsApp ao buscar o histórico.
cli.cmd.messages.pull.option.status:
Inclui atualizações de status do WhatsApp ao buscar o histórico.
cli.cmd.messages.pull.option.broadcast:
Inclui listas de transmissão ao buscar o histórico.
cli.cmd.messages.pull.option.media:
Baixa anexos de mídia (imagens, vídeos, arquivos) ao buscar o histórico.
cli.cmd.messages.pull.option.pause:
Enfileira o trabalho de busca de mensagens em estado pausado, interrompendo o
processamento de novos WhatsApp até finalizar.
cli.cmd.messages.pull.error.pause-no-queue:
⛔ Não é possível usar `--pause` porque o comando **queue** está desabilitado
nesta configuração.
cli.cmd.queue.description: Gerencie filas.
cli.cmd.queue.summary: Execute ações nas filas.
cli.cmd.queue.action.description: Escolha uma ação.
cli.cmd.queue.status.description: Mostra o status de uma fila.
cli.cmd.queue.argument.name: 'Nome da fila: `inbox` ou `whatsapp` (opcional).'
cli.cmd.queue.start.description: Inicia uma fila pelo nome.
cli.cmd.queue.stop.description: Para uma fila pelo nome.
cli.cmd.queue.paused:
⚪🧩 As filas foram pausadas. Envie `queue status` para verificar o status.
cli.cmd.queue.resumed:
🟢🧩 As filas foram retomadas. Envie `queue status` para verificar o status.
cli.cmd.queue.status.result: >-
📊 Status da fila:
{{#queues}}
- **{{name}}**: {{#locked}}🔒{{/locked}}{{#paused}}⚪ Em
pausa{{/paused}}{{^paused}}🟢 Em execução{{/paused}}
{{/queues}}
cli.cmd.messages.pull.option.timeout-media:
Define por quanto tempo tentar baixar a mídia de cada mensagem.
cli.cmd.messages.pull.argument.end:
Define até onde a janela de busca termina; por exemplo, `2d` encerra há dois
dias.
cli.cmd.messages.pull.argument.start:
Define onde a janela de busca começa; por exemplo, `1d` inicia há um dia
(padrão `0d`, ou seja, agora).
cli.cmd.messages.pull.already-running: >-
⏳ O trabalho **Pull Messages** já está em execução para **{{{chat}}}**.
Aguarde terminar ou pare antes de iniciar outro.
Envie `messages status` para mais detalhes.
cli.cmd.messages.status.not-found:
ℹ️ Nenhum trabalho ativo de **Pull Messages** foi encontrado. Inicie um com
`messages pull`.
cli.cmd.messages.pull.no-chats-found:
Nenhuma conversa do WhatsApp encontrada para buscar mensagens nesse período.
cli.cmd.contacts.pull.option.progress:
Informa o progresso a cada N contatos. Defina 0 para desativar os relatórios
de progresso.
cli.cmd.contacts.pull.option.lids:
Inclui contatos LID do WhatsApp (contatos anônimos) na sincronização.
task.contacts.completed:
👤✅ Contatos concluídos → 🆕 {{progress.created}}, 🔄 {{progress.updated}},
⚪ {{progress.skipped}}, 🔴 {{progress.errors}}, 🖼️
{{progress.avatar.updated}}
task.messages.started: ⏳ Buscando mensagens 💬 {{{chat}}} ⏱️ {{{period}}}...
task.messages.details:
Envie "{{{prefix}}}messages status" para ver mais detalhes.
task.messages.progress:
'⏳ Mensagens {{{chat}}}: 🆕 {{progress.ok}}, 🟢 {{progress.exists}}, ⚪
{{progress.ignored}}, 🔴 {{progress.errors}}{{#last}} | 📅 {{{last}}}{{/last}}'
task.messages.completed:
✅ Mensagens {{{chat}}} em {{{period}}} → 🆕 {{progress.ok}}, 🟢
{{progress.exists}}, ⚪ {{progress.ignored}}, 🔴 {{progress.errors}}
task.messages.status: |-
Mensagens **{{{chat}}}** no período ⏱️ **{{{period}}}**:
- ⚙️ Estado do trabalho: **{{state}}**
{{#last}}
- 📅 Último processado: **{{{last}}}**
{{/last}}
- 💬 Criadas em: **{{{chats}}}** conversas
- 🆕 Criadas: **{{{progress.ok}}}** mensagens
- 🟢 Já existem: {{{progress.exists}}} mensagens
- ⚪ Ignoradas: {{{progress.ignored}}} mensagens
- 🔴 Erros: {{{progress.errors}}} mensagens
Detalhes:
[{{{details.text}}}]({{{details.url}}})
+128 -9
View File
@@ -193,9 +193,6 @@ cli.cmd.contacts.pull.option.avatar: |-
cli.cmd.contacts.pull.option.groups: |-
Включить контакты групп WhatsApp в синхронизацию.
cli.cmd.contacts.pull.option.no-lids: |-
Пропускать контакты LID WhatsApp (JID привязанного устройства) при синхронизации.
cli.cmd.contacts.pull.option.no-attributes: |-
Не загружать атрибуты контакта, если он уже существует (ускоряет процесс).
@@ -204,12 +201,6 @@ cli.cmd.contacts.pull.already-running: |-
Отправьте `contacts status` для подробностей.
cli.cmd.contacts.pull.queued: |-
👥 Задание **Pull Contacts** поставлено в очередь.
Мы будем отправлять обновления прогресса каждые **{{batch}}** контактов.
Загрузка контактов может занять время — проверяйте актуальный статус в любое время командой `contacts status`.
cli.cmd.options.job.attempts: |-
Число повторных попыток до пометки задания как неуспешного.
@@ -512,3 +503,131 @@ whatsapp.to.chatwoot.message.facebook.ad: |-
---
💬 **Сообщение клиента:**
{{{payload.body}}}
whatsapp.history.message.wrapper: |-
{{{content}}}
{{^payload.fromMe}}
{{/payload.fromMe}}
`🗓️ {{{timestamp}}}`
UNKNOWN: Неизвестно
ERROR: Ошибка
PENDING: Отправляется
SERVER: Сервер
DEVICE: Устройство
READ: Прочитано
PLAYED: Прослушано
whatsapp.to.chatwoot.message.has.media.no.media: |-
{{#content}}
{{{content}}}
{{/content}}
🖼️⚠️ **В сообщении есть медиа, но нам не удалось его скачать**
📱 Откройте **WhatsApp**, чтобы посмотреть.
{{^content}}
Подробности: [{{{details.text}}}]({{{details.url}}})
{{/content}}
cli.cmd.root.sub.queue: '🧩 **Очередь**:'
cli.cmd.messages.summary: Загрузить сообщения WhatsApp.
cli.cmd.messages.description:
💬 Выполните `messages pull`, чтобы запустить синхронизацию, или `messages
status`, чтобы проверить прогресс.
cli.cmd.messages.action.description:
'`pull` — начать загрузку, `status` — посмотреть текущую задачу.'
cli.cmd.messages.pull.option.chat:
Ограничить загрузку конкретным идентификатором чата WhatsApp.
cli.cmd.messages.pull.option.force:
Принудительно создавать сообщения в ящике, даже если сообщение WhatsApp уже
есть в сопоставлении беседы.
cli.cmd.messages.pull.option.batch: Количество сообщений в каждом пакете.
cli.cmd.messages.pull.option.progress:
Сообщать о прогрессе каждые N сообщений. Значение 0 отключает отчёты.
cli.cmd.messages.pull.option.no-dm:
Пропускать личные сообщения при загрузке истории.
cli.cmd.messages.pull.option.groups:
Включать группы WhatsApp при загрузке истории.
cli.cmd.messages.pull.option.channels:
Включать каналы WhatsApp при загрузке истории.
cli.cmd.messages.pull.option.status:
Включать статусы WhatsApp при загрузке истории.
cli.cmd.messages.pull.option.broadcast:
Включать списки рассылок при загрузке истории.
cli.cmd.messages.pull.option.media:
Скачивать медиафайлы (изображения, видео, документы) при загрузке истории.
cli.cmd.messages.pull.option.pause:
Поставить задачу загрузки сообщений в очередь на паузу и остановить обработку
новых сообщений WhatsApp до завершения.
cli.cmd.messages.pull.error.pause-no-queue:
⛔ Невозможно использовать `--pause`, потому что команда **queue** отключена в
этой конфигурации.
cli.cmd.queue.description: Управление очередями.
cli.cmd.queue.summary: Действия с очередями.
cli.cmd.queue.action.description: Выберите действие.
cli.cmd.queue.status.description: Показать состояние очереди.
cli.cmd.queue.argument.name:
'Название очереди: `inbox` или `whatsapp` (необязательно).'
cli.cmd.queue.start.description: Запустить очередь по имени.
cli.cmd.queue.stop.description: Остановить очередь по имени.
cli.cmd.queue.paused:
⚪🧩 Очереди поставлены на паузу. Отправьте `queue status`, чтобы проверить
состояние.
cli.cmd.queue.resumed:
🟢🧩 Очереди возобновлены. Отправьте `queue status`, чтобы проверить
состояние.
cli.cmd.queue.status.result: >-
📊 Состояние очередей:
{{#queues}}
- **{{name}}**: {{#locked}}🔒{{/locked}}{{#paused}}⚪ На
паузе{{/paused}}{{^paused}}🟢 Активна{{/paused}}
{{/queues}}
cli.cmd.messages.pull.option.timeout-media:
Указывает, как долго пытаться скачать медиа для каждого сообщения.
cli.cmd.messages.pull.argument.end:
Задаёт конец окна загрузки, например `2d` — до двух дней назад.
cli.cmd.messages.pull.argument.start:
Задаёт начало окна загрузки, например `1d` — с одного дня назад (по умолчанию
`0d`, то есть сейчас).
cli.cmd.messages.pull.already-running: >-
⏳ Задача **Pull Messages** уже выполняется для **{{{chat}}}**. Дождитесь
завершения или остановите её перед запуском новой.
Отправьте `messages status` для деталей.
cli.cmd.messages.status.not-found:
ℹ️ Активная задача **Pull Messages** не найдена. Запустите её командой
`messages pull`.
cli.cmd.messages.pull.no-chats-found:
Чаты WhatsApp для выбранного периода не найдены.
cli.cmd.contacts.pull.option.progress:
Сообщать о прогрессе каждые N контактов. Значение 0 отключает отчёты.
cli.cmd.contacts.pull.option.lids:
Включать контакты WhatsApp LID (анонимные контакты) в синхронизацию.
task.contacts.completed:
👤✅ Контакты завершены → 🆕 {{progress.created}}, 🔄 {{progress.updated}}, ⚪
{{progress.skipped}}, 🔴 {{progress.errors}}, 🖼️ {{progress.avatar.updated}}
task.messages.started: ⏳ Загружаем сообщения 💬 {{{chat}}} ⏱️ {{{period}}}...
task.messages.details:
Отправьте "{{{prefix}}}messages status", чтобы увидеть подробности.
task.messages.progress:
'⏳ Сообщения {{{chat}}}: 🆕 {{progress.ok}}, 🟢 {{progress.exists}}, ⚪
{{progress.ignored}}, 🔴 {{progress.errors}}{{#last}} | 📅 {{{last}}}{{/last}}'
task.messages.completed:
✅ Сообщения {{{chat}}} за {{{period}}} → 🆕 {{progress.ok}}, 🟢
{{progress.exists}}, ⚪ {{progress.ignored}}, 🔴 {{progress.errors}}
task.messages.status: |-
Сообщения **{{{chat}}}** за период ⏱️ **{{{period}}}**:
- ⚙️ Статус задачи: **{{state}}**
{{#last}}
- 📅 Последняя обработка: **{{{last}}}**
{{/last}}
- 💬 Создано в: **{{{chats}}}** чатах
- 🆕 Создано: **{{{progress.ok}}}** сообщений
- 🟢 Уже есть: {{{progress.exists}}} сообщений
- ⚪ Пропущено: {{{progress.ignored}}} сообщений
- 🔴 Ошибки: {{{progress.errors}}} сообщений
Подробности:
[{{{details.text}}}]({{{details.url}}})
+127 -9
View File
@@ -193,9 +193,6 @@ cli.cmd.contacts.pull.option.avatar: |-
cli.cmd.contacts.pull.option.groups: |-
WhatsApp grup kişilerini senkronizasyona dahil et.
cli.cmd.contacts.pull.option.no-lids: |-
WhatsApp LID kişilerini (bağlı cihaz JID'leri) senkronizasyonda atla.
cli.cmd.contacts.pull.option.no-attributes: |-
Kişi zaten varsa özelliklerini çekmeyin (süreci hızlandırır).
@@ -204,12 +201,6 @@ cli.cmd.contacts.pull.already-running: |-
Ayrıntılar için `contacts status` gönderin.
cli.cmd.contacts.pull.queued: |-
👥 **Pull Contacts** görevi sıraya alındı.
Her **{{batch}}** kişide bir ilerleme güncellemesi paylaşacağız.
Kişileri çekmek zaman alabilir — en güncel durumu istediğiniz zaman `contacts status` ile kontrol edin.
cli.cmd.options.job.attempts: |-
Görevi başarısız saymadan önce yapılacak yeniden deneme sayısı.
@@ -512,3 +503,130 @@ whatsapp.to.chatwoot.message.facebook.ad: |-
---
💬 **Müşteri Mesajı:**
{{{payload.body}}}
whatsapp.history.message.wrapper: |-
{{{content}}}
{{^payload.fromMe}}
{{/payload.fromMe}}
`🗓️ {{{timestamp}}}`
UNKNOWN: Bilinmiyor
ERROR: Hata
PENDING: Gönderiliyor
SERVER: Sunucu
DEVICE: Cihaz
READ: Okundu
PLAYED: Oynatıldı
whatsapp.to.chatwoot.message.has.media.no.media: |-
{{#content}}
{{{content}}}
{{/content}}
🖼️⚠️ **Mesajda medya var ancak indirilemedi**
📱 Görüntülemek için lütfen **WhatsApp** uygulamasını açın.
{{^content}}
Detaylar: [{{{details.text}}}]({{{details.url}}})
{{/content}}
cli.cmd.root.sub.queue: '🧩 **Kuyruk**:'
cli.cmd.messages.summary: WhatsApp mesajlarını çek.
cli.cmd.messages.description:
💬 Mesaj senkronizasyonu başlatmak için `messages pull`, ilerlemeyi görmek
için `messages status` komutunu çalıştırın.
cli.cmd.messages.action.description:
'`pull` ile mesaj çekmeyi başlatın, `status` ile çalışan işi inceleyin.'
cli.cmd.messages.pull.option.chat:
Çekimi belirli bir WhatsApp sohbet kimliğiyle sınırlandırır.
cli.cmd.messages.pull.option.force:
WhatsApp mesajı konuşma eşlemesinde olsa bile gelen kutusunun mesaj
oluşturmasını zorlar.
cli.cmd.messages.pull.option.batch: Her partide çekilecek mesaj sayısı.
cli.cmd.messages.pull.option.progress:
Her N mesajda ilerlemeyi bildirir. 0 değeri raporları kapatır.
cli.cmd.messages.pull.option.no-dm: Geçmişi çekerken direkt mesajları atlar.
cli.cmd.messages.pull.option.groups:
Geçmişi çekerken WhatsApp grup sohbetlerini dahil eder.
cli.cmd.messages.pull.option.channels:
Geçmişi çekerken WhatsApp Kanallarını dahil eder.
cli.cmd.messages.pull.option.status:
Geçmişi çekerken WhatsApp durum güncellemelerini dahil eder.
cli.cmd.messages.pull.option.broadcast:
Geçmişi çekerken yayın listelerini dahil eder.
cli.cmd.messages.pull.option.media:
Geçmişi çekerken medya eklerini (görseller, videolar, dosyalar) indirir.
cli.cmd.messages.pull.option.pause:
Mesaj çekme işini duraklatılmış olarak kuyruklar ve tamamlanana kadar yeni
WhatsApp mesajlarının işlenmesini durdurur.
cli.cmd.messages.pull.error.pause-no-queue:
⛔ `--pause` kullanılamaz çünkü **queue** komutu bu yapılandırmada devre dışı.
cli.cmd.queue.description: Kuyrukları yönetin.
cli.cmd.queue.summary: Kuyruklarda işlemler gerçekleştirin.
cli.cmd.queue.action.description: Bir eylem seçin.
cli.cmd.queue.status.description: Bir kuyruğun durumunu gösterir.
cli.cmd.queue.argument.name:
'Kuyruk adı: `inbox` veya `whatsapp` (isteğe bağlı).'
cli.cmd.queue.start.description: Adı verilen kuyruğu başlatın.
cli.cmd.queue.stop.description: Adı verilen kuyruğu durdurun.
cli.cmd.queue.paused:
⚪🧩 Kuyruklar duraklatıldı. Durumu kontrol etmek için `queue status`
gönderin.
cli.cmd.queue.resumed:
🟢🧩 Kuyruklar devam ettirildi. Durumu kontrol etmek için `queue status`
gönderin.
cli.cmd.queue.status.result: >-
📊 Kuyruk durumu:
{{#queues}}
- **{{name}}**: {{#locked}}🔒{{/locked}}{{#paused}}⚪
Duraklatıldı{{/paused}}{{^paused}}🟢 Çalışıyor{{/paused}}
{{/queues}}
cli.cmd.messages.pull.option.timeout-media:
Her mesaj için medya indirme süresini belirler.
cli.cmd.messages.pull.argument.end:
Çekim penceresinin nerede biteceğini belirler; örneğin `2d` iki gün öncesinde
durur.
cli.cmd.messages.pull.argument.start:
Çekim penceresinin nerede başlayacağını belirler; örneğin `1d` bir gün
öncesinden başlar (varsayılan `0d`, yani şimdi).
cli.cmd.messages.pull.already-running: >-
⏳ **Pull Messages** işi zaten **{{{chat}}}** için çalışıyor. Bitmesini
bekleyin veya yenisini başlatmadan önce durdurun.
Ayrıntılar için `messages status` gönderin.
cli.cmd.messages.status.not-found:
ℹ️ Aktif **Pull Messages** işi bulunamadı. `messages pull` ile bir tane
başlatın.
cli.cmd.messages.pull.no-chats-found:
Belirtilen dönemde çekilecek WhatsApp sohbeti bulunamadı.
cli.cmd.contacts.pull.option.progress:
Her N kişide ilerlemeyi bildirir. 0 değeri raporları kapatır.
cli.cmd.contacts.pull.option.lids:
Senkronizasyona WhatsApp LID (anonim) kişilerini dahil eder.
task.contacts.completed:
👤✅ Kişiler tamamlandı → 🆕 {{progress.created}}, 🔄 {{progress.updated}}, ⚪
{{progress.skipped}}, 🔴 {{progress.errors}}, 🖼️ {{progress.avatar.updated}}
task.messages.started: ⏳ Mesajlar çekiliyor 💬 {{{chat}}} ⏱️ {{{period}}}...
task.messages.details:
Daha fazla ayrıntı için "{{{prefix}}}messages status" gönderin.
task.messages.progress:
'⏳ Mesajlar {{{chat}}}: 🆕 {{progress.ok}}, 🟢 {{progress.exists}}, ⚪
{{progress.ignored}}, 🔴 {{progress.errors}}{{#last}} | 📅 {{{last}}}{{/last}}'
task.messages.completed:
✅ Mesajlar {{{chat}}} {{{period}}} içinde → 🆕 {{progress.ok}}, 🟢
{{progress.exists}}, ⚪ {{progress.ignored}}, 🔴 {{progress.errors}}
task.messages.status: |-
**{{{chat}}}** sohbetinin mesajları ⏱️ **{{{period}}}** döneminde:
- ⚙️ İş durumu: **{{state}}**
{{#last}}
- 📅 Son işlenen: **{{{last}}}**
{{/last}}
- 💬 Şu sohbetlerde oluşturuldu: **{{{chats}}}**
- 🆕 Oluşturulan: **{{{progress.ok}}}** mesaj
- 🟢 Zaten mevcut: {{{progress.exists}}} mesaj
- ⚪ Yok sayılan: {{{progress.ignored}}} mesaj
- 🔴 Hatalar: {{{progress.errors}}} mesaj
Detaylar:
[{{{details.text}}}]({{{details.url}}})
+127 -9
View File
@@ -193,9 +193,6 @@ cli.cmd.contacts.pull.option.avatar: |-
cli.cmd.contacts.pull.option.groups: |-
Додати контакти груп WhatsApp до синхронізації.
cli.cmd.contacts.pull.option.no-lids: |-
Пропускати контакти LID WhatsApp (JID підключеного пристрою) під час синхронізації.
cli.cmd.contacts.pull.option.no-attributes: |-
Не завантажуйте атрибути контакту, якщо він уже існує (це пришвидшує процес).
@@ -204,12 +201,6 @@ cli.cmd.contacts.pull.already-running: |-
Надішліть `contacts status`, щоб отримати деталі.
cli.cmd.contacts.pull.queued: |-
👥 Завдання **Pull Contacts** поставлено в чергу.
Ми надішлемо оновлення прогресу після кожних **{{batch}}** контактів.
Отримання контактів може зайняти час — перевіряйте актуальний статус будь-коли за допомогою `contacts status`.
cli.cmd.options.job.attempts: |-
Кількість повторних спроб перед позначенням завдання як невдалого.
@@ -512,3 +503,130 @@ whatsapp.to.chatwoot.message.facebook.ad: |-
---
💬 **Повідомлення клієнта:**
{{{payload.body}}}
whatsapp.history.message.wrapper: |-
{{{content}}}
{{^payload.fromMe}}
{{/payload.fromMe}}
`🗓️ {{{timestamp}}}`
UNKNOWN: Невідомо
ERROR: Помилка
PENDING: Надсилається
SERVER: Сервер
DEVICE: Пристрій
READ: Прочитано
PLAYED: Прослухано
whatsapp.to.chatwoot.message.has.media.no.media: |-
{{#content}}
{{{content}}}
{{/content}}
🖼️⚠️ **У повідомленні є медіа, але не вдалося його завантажити**
📱 Відкрийте **WhatsApp**, щоб переглянути.
{{^content}}
Деталі: [{{{details.text}}}]({{{details.url}}})
{{/content}}
cli.cmd.root.sub.queue: '🧩 **Черга**:'
cli.cmd.messages.summary: Отримати повідомлення WhatsApp.
cli.cmd.messages.description:
💬 Виконайте `messages pull`, щоб запустити синхронізацію, або `messages
status`, щоб переглянути прогрес.
cli.cmd.messages.action.description:
'`pull` — щоб почати отримання, `status` — щоб переглянути активне завдання.'
cli.cmd.messages.pull.option.chat:
Обмежити отримання конкретним ідентифікатором чату WhatsApp.
cli.cmd.messages.pull.option.force:
Примусити скриньку створювати повідомлення, навіть якщо повідомлення WhatsApp
уже є у відповідності розмови.
cli.cmd.messages.pull.option.batch: Кількість повідомлень у кожній партії.
cli.cmd.messages.pull.option.progress:
Повідомляти про прогрес кожні N повідомлень. Значення 0 вимикає звіти.
cli.cmd.messages.pull.option.no-dm:
Пропускати приватні повідомлення під час отримання історії.
cli.cmd.messages.pull.option.groups:
Включати групи WhatsApp під час отримання історії.
cli.cmd.messages.pull.option.channels:
Включати канали WhatsApp під час отримання історії.
cli.cmd.messages.pull.option.status:
Включати статуси WhatsApp під час отримання історії.
cli.cmd.messages.pull.option.broadcast:
Включати списки розсилки під час отримання історії.
cli.cmd.messages.pull.option.media:
Завантажувати медіафайли (зображення, відео, файли) під час отримання історії.
cli.cmd.messages.pull.option.pause:
Поставити завдання отримання повідомлень у чергу на паузі й зупинити обробку
нових WhatsApp до завершення.
cli.cmd.messages.pull.error.pause-no-queue:
⛔ Неможливо використати `--pause`, оскільки команда **queue** вимкнена для
цієї конфігурації.
cli.cmd.queue.description: Керування чергами.
cli.cmd.queue.summary: Дії з чергами.
cli.cmd.queue.action.description: Оберіть дію.
cli.cmd.queue.status.description: Показати стан черги.
cli.cmd.queue.argument.name:
'Назва черги: `inbox` або `whatsapp` (необов’язково).'
cli.cmd.queue.start.description: Запустити чергу за назвою.
cli.cmd.queue.stop.description: Зупинити чергу за назвою.
cli.cmd.queue.paused:
⚪🧩 Черги призупинені. Надішліть `queue status`, щоб перевірити стан.
cli.cmd.queue.resumed:
🟢🧩 Черги поновлено. Надішліть `queue status`, щоб перевірити стан.
cli.cmd.queue.status.result: >-
📊 Стан черг:
{{#queues}}
- **{{name}}**: {{#locked}}🔒{{/locked}}{{#paused}}⚪ На
паузі{{/paused}}{{^paused}}🟢 Активна{{/paused}}
{{/queues}}
cli.cmd.messages.pull.option.timeout-media:
Визначає, як довго намагатися завантажувати медіа для кожного повідомлення.
cli.cmd.messages.pull.argument.end:
Вказує, де закінчується вікно отримання; наприклад, `2d` — два дні тому.
cli.cmd.messages.pull.argument.start:
Вказує, де починається вікно; наприклад, `1d` — один день тому (за
замовчуванням `0d`, тобто зараз).
cli.cmd.messages.pull.already-running: >-
⏳ Завдання **Pull Messages** уже виконується для **{{{chat}}}**. Дочекайтеся
завершення або зупиніть його перед запуском нового.
Надішліть `messages status`, щоб отримати деталі.
cli.cmd.messages.status.not-found:
ℹ️ Активне завдання **Pull Messages** не знайдено. Запустіть його командою
`messages pull`.
cli.cmd.messages.pull.no-chats-found:
Не знайдено чатів WhatsApp для вибраного періоду.
cli.cmd.contacts.pull.option.progress:
Повідомляти про прогрес кожні N контактів. Значення 0 вимикає звіти.
cli.cmd.contacts.pull.option.lids:
Включати анонімні контакти WhatsApp LID у синхронізацію.
task.contacts.completed:
👤✅ Контакти завершено → 🆕 {{progress.created}}, 🔄 {{progress.updated}}, ⚪
{{progress.skipped}}, 🔴 {{progress.errors}}, 🖼️ {{progress.avatar.updated}}
task.messages.started:
⏳ Отримуємо повідомлення 💬 {{{chat}}} ⏱️ {{{period}}}...
task.messages.details:
Надішліть "{{{prefix}}}messages status", щоб побачити деталі.
task.messages.progress:
'⏳ Повідомлення {{{chat}}}: 🆕 {{progress.ok}}, 🟢 {{progress.exists}}, ⚪
{{progress.ignored}}, 🔴 {{progress.errors}}{{#last}} | 📅 {{{last}}}{{/last}}'
task.messages.completed:
✅ Повідомлення {{{chat}}} за {{{period}}} → 🆕 {{progress.ok}}, 🟢
{{progress.exists}}, ⚪ {{progress.ignored}}, 🔴 {{progress.errors}}
task.messages.status: |-
Повідомлення **{{{chat}}}** у період ⏱️ **{{{period}}}**:
- ⚙️ Стан завдання: **{{state}}**
{{#last}}
- 📅 Остання обробка: **{{{last}}}**
{{/last}}
- 💬 Створено в: **{{{chats}}}** чатах
- 🆕 Створено: **{{{progress.ok}}}** повідомлень
- 🟢 Уже є: {{{progress.exists}}} повідомлень
- ⚪ Пропущено: {{{progress.ignored}}} повідомлень
- 🔴 Помилки: {{{progress.errors}}} повідомлень
Деталі:
[{{{details.text}}}]({{{details.url}}})
+124 -9
View File
@@ -193,9 +193,6 @@ cli.cmd.contacts.pull.option.avatar: |-
cli.cmd.contacts.pull.option.groups: |-
واٹس ایپ گروپ روابط کو ہم وقت سازی میں شامل کریں۔
cli.cmd.contacts.pull.option.no-lids: |-
واٹس ایپ LID روابط (لنک شدہ ڈیوائس JID) کو ہم وقت سازی کے دوران چھوڑ دیں۔
cli.cmd.contacts.pull.option.no-attributes: |-
اگر رابطہ پہلے سے موجود ہو تو اس کے خواص نہ نکالیں (اس سے عمل تیز ہوتا ہے)۔
@@ -204,12 +201,6 @@ cli.cmd.contacts.pull.already-running: |-
تفصیلات کے لیے `contacts status` بھیجیں۔
cli.cmd.contacts.pull.queued: |-
👥 **Pull Contacts** کام قطار میں لگا دیا گیا ہے۔
ہم ہر **{{batch}}** رابطوں کے بعد پیش رفت کی تازہ کاری شیئر کریں گے۔
روابط نکالنے میں وقت لگ سکتا ہے — کسی بھی وقت `contacts status` کے ذریعے تازہ ترین حالت دیکھیں۔
cli.cmd.options.job.attempts: |-
کام کو ناکام قرار دینے سے پہلے دوبارہ کوششوں کی تعداد۔
@@ -512,3 +503,127 @@ whatsapp.to.chatwoot.message.facebook.ad: |-
---
💬 **گاہک کا پیغام:**
{{{payload.body}}}
whatsapp.history.message.wrapper: |-
{{{content}}}
{{^payload.fromMe}}
{{/payload.fromMe}}
`🗓️ {{{timestamp}}}`
UNKNOWN: نامعلوم
ERROR: خرابی
PENDING: بھجوایا جا رہا ہے
SERVER: سرور
DEVICE: ڈیوائس
READ: پڑھا گیا
PLAYED: چلایا گیا
whatsapp.to.chatwoot.message.has.media.no.media: |-
{{#content}}
{{{content}}}
{{/content}}
🖼️⚠️ **پیغام میں میڈیا موجود ہے لیکن ہم اسے ڈاؤن لوڈ نہیں کر سکے**
📱 براہ کرم دیکھنے کے لیے **WhatsApp** کھولیں۔
{{^content}}
تفصیلات: [{{{details.text}}}]({{{details.url}}})
{{/content}}
cli.cmd.root.sub.queue: '🧩 **قطار**:'
cli.cmd.messages.summary: WhatsApp پیغامات کھینچیں۔
cli.cmd.messages.description:
💬 پیغامات کی ہم آہنگی شروع کرنے کے لیے `messages pull` چلائیں یا پیش رفت
دیکھنے کے لیے `messages status` چلائیں۔
cli.cmd.messages.action.description:
پیغامات کھینچنے کے لیے `pull` یا فعال کام دیکھنے کے لیے `status` استعمال کریں۔
cli.cmd.messages.pull.option.chat:
کھینچنے کو مخصوص WhatsApp چیٹ آئی ڈی تک محدود کریں۔
cli.cmd.messages.pull.option.force:
اگر WhatsApp پیغام پہلے سے گفتگو کے میپ میں موجود ہو تب بھی ان باکس کو پیغامات
بنانے پر مجبور کریں۔
cli.cmd.messages.pull.option.batch:
ہر بیچ میں کھینچے جانے والے پیغامات کی تعداد۔
cli.cmd.messages.pull.option.progress:
ہر N پیغامات کے بعد پیش رفت بتائیں۔ رپورٹ بند کرنے کے لیے 0 مقرر کریں۔
cli.cmd.messages.pull.option.no-dm: تاریخ کھینچتے وقت ڈائریکٹ پیغامات چھوڑ دیں۔
cli.cmd.messages.pull.option.groups: تاریخ کھینچتے وقت WhatsApp گروپس شامل کریں۔
cli.cmd.messages.pull.option.channels:
تاریخ کھینچتے وقت WhatsApp چینلز شامل کریں۔
cli.cmd.messages.pull.option.status:
تاریخ کھینچتے وقت WhatsApp اسٹیٹس اپ ڈیٹس شامل کریں۔
cli.cmd.messages.pull.option.broadcast:
تاریخ کھینچتے وقت نشریاتی فہرستیں شامل کریں۔
cli.cmd.messages.pull.option.media:
تاریخ کھینچتے وقت میڈیا (تصاویر، ویڈیوز، فائلیں) ڈاؤن لوڈ کریں۔
cli.cmd.messages.pull.option.pause:
پیغامات کھینچنے کے کام کو معطل حالت میں قطار میں ڈالیں اور مکمل ہونے تک نئے
WhatsApp پیغامات کی پروسیسنگ روک دیں۔
cli.cmd.messages.pull.error.pause-no-queue:
⛔ `--pause` استعمال نہیں کیا جا سکتا کیونکہ اس ترتیب میں **queue** کمانڈ غیر
فعال ہے۔
cli.cmd.queue.description: قطاروں کا انتظام کریں۔
cli.cmd.queue.summary: قطاروں پر کارروائیاں انجام دیں۔
cli.cmd.queue.action.description: کوئی کارروائی منتخب کریں۔
cli.cmd.queue.status.description: قطار کی حالت دکھائیں۔
cli.cmd.queue.argument.name: 'قطار کا نام: `inbox` یا `whatsapp` (اختیاری)।'
cli.cmd.queue.start.description: نام کے ذریعے قطار شروع کریں۔
cli.cmd.queue.stop.description: نام کے ذریعے قطار روکیں۔
cli.cmd.queue.paused:
⚪🧩 قطاریں معطل کر دی گئی ہیں۔ حالت جاننے کے لیے `queue status` بھیجیں۔
cli.cmd.queue.resumed:
🟢🧩 قطاریں دوبارہ شروع ہو گئی ہیں۔ حالت جاننے کے لیے `queue status` بھیجیں۔
cli.cmd.queue.status.result: >-
📊 قطار کی حالت:
{{#queues}}
- **{{name}}**: {{#locked}}🔒{{/locked}}{{#paused}}⚪
معطل{{/paused}}{{^paused}}🟢 فعال{{/paused}}
{{/queues}}
cli.cmd.messages.pull.option.timeout-media:
ہر پیغام کے لیے میڈیا ڈاؤن لوڈ کرنے کی مدت مقرر کریں۔
cli.cmd.messages.pull.argument.end:
کھینچنے کی ونڈو کہاں ختم ہو گی طے کریں؛ مثال کے طور پر `2d` دو دن پہلے رک جاتی
ہے۔
cli.cmd.messages.pull.argument.start:
کھینچنے کی ونڈو کہاں سے شروع ہو گی طے کریں؛ مثال کے طور پر `1d` ایک دن پہلے سے
شروع ہوتی ہے (طے شدہ `0d` یعنی ابھی)۔
cli.cmd.messages.pull.already-running: >-
⏳ **Pull Messages** کام پہلے سے ہی **{{{chat}}}** کے لیے چل رہا ہے۔ نیا شروع
کرنے سے پہلے اس کے مکمل ہونے کا انتظار کریں یا اسے روک دیں۔
تفصیلات کے لیے `messages status` بھیجیں۔
cli.cmd.messages.status.not-found:
ℹ️ کوئی فعال **Pull Messages** کام نہیں ملا۔ `messages pull` کے ساتھ ایک شروع
کریں۔
cli.cmd.messages.pull.no-chats-found: اس مدت کے لیے کوئی WhatsApp چیٹ نہیں ملی۔
cli.cmd.contacts.pull.option.progress:
ہر N رابطوں پر پیش رفت بتائیں۔ رپورٹ بند کرنے کے لیے 0 مقرر کریں۔
cli.cmd.contacts.pull.option.lids:
WhatsApp LID (گمنام) رابطوں کو ہم آہنگی میں شامل کریں۔
task.contacts.completed:
👤✅ رابطے مکمل → 🆕 {{progress.created}}, 🔄 {{progress.updated}}, ⚪
{{progress.skipped}}, 🔴 {{progress.errors}}, 🖼️ {{progress.avatar.updated}}
task.messages.started:
⏳ پیغامات کھینچے جا رہے ہیں 💬 {{{chat}}} ⏱️ {{{period}}}...
task.messages.details: مزید تفصیلات کے لیے "{{{prefix}}}messages status" بھیجیں۔
task.messages.progress:
'⏳ پیغامات {{{chat}}}: 🆕 {{progress.ok}}, 🟢 {{progress.exists}}, ⚪
{{progress.ignored}}, 🔴 {{progress.errors}}{{#last}} | 📅 {{{last}}}{{/last}}'
task.messages.completed:
✅ پیغامات {{{chat}}} میں {{{period}}} → 🆕 {{progress.ok}}, 🟢
{{progress.exists}}, ⚪ {{progress.ignored}}, 🔴 {{progress.errors}}
task.messages.status: |-
**{{{chat}}}** کے پیغامات ⏱️ **{{{period}}}** کے دوران:
- ⚙️ کام کی حالت: **{{state}}**
{{#last}}
- 📅 آخری پراسیسنگ: **{{{last}}}**
{{/last}}
- 💬 بنائے گئے چیٹس: **{{{chats}}}**
- 🆕 بنے: **{{{progress.ok}}}** پیغامات
- 🟢 پہلے سے موجود: {{{progress.exists}}} پیغامات
- ⚪ نظر انداز: {{{progress.ignored}}} پیغامات
- 🔴 خامیاں: {{{progress.errors}}} پیغامات
تفصیلات:
[{{{details.text}}}]({{{details.url}}})
+104 -9
View File
@@ -193,9 +193,6 @@ cli.cmd.contacts.pull.option.avatar: |-
cli.cmd.contacts.pull.option.groups: |-
在同步中包含 WhatsApp 群组联系人。
cli.cmd.contacts.pull.option.no-lids: |-
在同步中跳过 WhatsApp LID 联系人(关联设备 JID)。
cli.cmd.contacts.pull.option.no-attributes: |-
如果联系人已存在,则不要拉取其属性(可加快流程)。
@@ -204,12 +201,6 @@ cli.cmd.contacts.pull.already-running: |-
发送 `contacts status` 获取详情。
cli.cmd.contacts.pull.queued: |-
👥 **Pull Contacts** 任务已排队。
我们会每 **{{batch}}** 个联系人更新一次进度。
拉取联系人可能需要一些时间——随时使用 `contacts status` 查看最新状态。
cli.cmd.options.job.attempts: |-
任务标记为失败前的最大重试次数。
@@ -512,3 +503,107 @@ whatsapp.to.chatwoot.message.facebook.ad: |-
---
💬 **客户消息:**
{{{payload.body}}}
whatsapp.history.message.wrapper: |-
{{{content}}}
{{^payload.fromMe}}
{{/payload.fromMe}}
`🗓️ {{{timestamp}}}`
UNKNOWN: 未知
ERROR: 错误
PENDING: 正在发送
SERVER: 服务器
DEVICE: 设备
READ: 已读
PLAYED: 已播放
whatsapp.to.chatwoot.message.has.media.no.media: |-
{{#content}}
{{{content}}}
{{/content}}
🖼️⚠️ **该消息包含媒体,但我们无法下载**
📱 请打开 **WhatsApp** 查看。
{{^content}}
详情:[{{{details.text}}}]({{{details.url}}})
{{/content}}
cli.cmd.root.sub.queue: 🧩 **队列**:
cli.cmd.messages.summary: 拉取 WhatsApp 消息。
cli.cmd.messages.description:
💬 运行 `messages pull` 开始同步,或运行 `messages status` 查看进度。
cli.cmd.messages.action.description:
使用 `pull` 开始拉取或 `status` 查看正在执行的任务。
cli.cmd.messages.pull.option.chat: 将拉取限制为特定 WhatsApp 聊天 ID。
cli.cmd.messages.pull.option.force:
即使该 WhatsApp 消息已存在于会话映射中,也强制收件箱创建消息。
cli.cmd.messages.pull.option.batch: 每个批次要拉取的消息数量。
cli.cmd.messages.pull.option.progress:
每隔 N 条消息报告进度。设置为 0 可关闭报告。
cli.cmd.messages.pull.option.no-dm: 拉取历史时跳过私聊消息。
cli.cmd.messages.pull.option.groups: 拉取历史时包含 WhatsApp 群聊。
cli.cmd.messages.pull.option.channels: 拉取历史时包含 WhatsApp 频道。
cli.cmd.messages.pull.option.status: 拉取历史时包含 WhatsApp 状态更新。
cli.cmd.messages.pull.option.broadcast: 拉取历史时包含群发列表。
cli.cmd.messages.pull.option.media: 拉取历史时下载媒体附件(图片、视频、文件)。
cli.cmd.messages.pull.option.pause:
将拉取任务以暂停状态加入队列,并在完成前暂停新的 WhatsApp 消息处理。
cli.cmd.messages.pull.error.pause-no-queue:
⛔ 无法使用 `--pause`,因为此配置中 **queue** 命令已禁用。
cli.cmd.queue.description: 管理队列。
cli.cmd.queue.summary: 对队列执行操作。
cli.cmd.queue.action.description: 选择一个操作。
cli.cmd.queue.status.description: 显示队列状态。
cli.cmd.queue.argument.name: 队列名称:`inbox` 或 `whatsapp`(可选)。
cli.cmd.queue.start.description: 按名称启动队列。
cli.cmd.queue.stop.description: 按名称停止队列。
cli.cmd.queue.paused: ⚪🧩 队列已暂停。发送 `queue status` 查看状态。
cli.cmd.queue.resumed: 🟢🧩 队列已恢复。发送 `queue status` 查看状态。
cli.cmd.queue.status.result: >-
📊 队列状态:
{{#queues}}
- **{{name}}**:{{#locked}}🔒{{/locked}}{{#paused}}⚪
暂停{{/paused}}{{^paused}}🟢 运行中{{/paused}}
{{/queues}}
cli.cmd.messages.pull.option.timeout-media: 设置每条消息尝试下载媒体的时长。
cli.cmd.messages.pull.argument.end:
设置拉取窗口结束时间,例如 `2d` 表示截至两天前。
cli.cmd.messages.pull.argument.start:
设置拉取窗口开始时间,例如 `1d` 表示从一天前开始(默认 `0d`,即现在)。
cli.cmd.messages.pull.already-running: |-
⏳ **Pull Messages** 任务已在 **{{{chat}}}** 上运行。请等待完成或先停止后再启动新的任务。
发送 `messages status` 获取详情。
cli.cmd.messages.status.not-found:
ℹ️ 未找到活动的 **Pull Messages** 任务。请使用 `messages pull` 启动。
cli.cmd.messages.pull.no-chats-found: 在该时间段内未找到可拉取的 WhatsApp 聊天。
cli.cmd.contacts.pull.option.progress:
每隔 N 个联系人报告进度。设置为 0 关闭报告。
cli.cmd.contacts.pull.option.lids: 在同步中包含 WhatsApp LID(匿名)联系人。
task.contacts.completed:
👤✅ 联系人同步完成 → 🆕 {{progress.created}},🔄 {{progress.updated}},⚪
{{progress.skipped}},🔴 {{progress.errors}},🖼️ {{progress.avatar.updated}}
task.messages.started: ⏳ 正在拉取消息 💬 {{{chat}}} ⏱️ {{{period}}}...
task.messages.details: 发送 "{{{prefix}}}messages status" 查看更多详情。
task.messages.progress:
⏳ 消息 {{{chat}}}:🆕 {{progress.ok}},🟢 {{progress.exists}},⚪
{{progress.ignored}},🔴 {{progress.errors}}{{#last}} | 📅 {{{last}}}{{/last}}
task.messages.completed:
✅ 消息 {{{chat}}} 于 {{{period}}} → 🆕 {{progress.ok}},🟢
{{progress.exists}},⚪ {{progress.ignored}},🔴 {{progress.errors}}
task.messages.status: |-
**{{{chat}}}** 的消息在 ⏱️ **{{{period}}}** 内:
- ⚙️ 任务状态:**{{state}}**
{{#last}}
- 📅 上次处理:**{{{last}}}**
{{/last}}
- 💬 创建于:**{{{chats}}}** 个会话
- 🆕 新建:**{{{progress.ok}}}** 条消息
- 🟢 已存在:{{{progress.exists}}} 条消息
- ⚪ 忽略:{{{progress.ignored}}} 条消息
- 🔴 错误:{{{progress.errors}}} 条消息
详情:
[{{{details.text}}}]({{{details.url}}})