Spaces:
Paused
Paused
File size: 1,849 Bytes
799d9f1 094d07e 799d9f1 094d07e 799d9f1 094d07e 799d9f1 094d07e 799d9f1 094d07e 799d9f1 094d07e | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 | # Session Context
## Current State
- Telegram connected via MTProto (DC 1) — working
- WhatsApp Connection — using whatsapp-web.js (Puppeteer + Chrome)
- Bot forwards WhatsApp messages to Telegram admin (when connected)
- Bot responds to `/start`, `/toggle`, button presses from Telegram
## Key Fixes Applied
1. **`messages.getDialogs` → `updates.getDifference`**: Bots can't use `getDialogs` (BOT_METHOD_INVALID). Replaced with `getState` + `getDifference` polling every 15s.
2. **`defaultDcId` string bug**: Storage saves `defaultDcId` as string `"1"` but library expects number `1`. All `mtproto.call()` calls now pass `{ dcId: 1 }` explicitly.
3. **Keyboard format**: `replyKeyboardMarkup` requires `{ _: 'keyboardButtonRow', buttons: [...] }` format. Using `one_time` instead of `single_use` causes errors.
4. **Migrated from `@whiskeysockets/baileys` to `whatsapp-web.js`**: Uses Puppeteer + Chrome instead of raw WebSocket. Requires Chromium installed in Docker.
5. **Markdown parsing**: Custom `parseMarkdown()` converts `*bold*`, `_italic_`, `` `code` `` to Telegram message entities.
6. **QR auto-send**: QR image sent to Telegram via `upload.saveFilePart` + `messages.sendMedia` when generated.
## Pending Issues
- wwebjs requires Chrome — Chrome must be installed in Docker (added to Dockerfile)
- `/data/` storage for session persistence
## API Credentials
- API_ID: 1344311
- API_HASH: 95778042101cb549a4ca6235d7cf87e1
- BOT_TOKEN: 903567266:AAFS-juBV5QYL_kKNkc7ovqp-i6eVwTOX-U
- Fallback from env vars if set
## User Preferences
- Arabic language
- No automatic startup messages (removed "✅ البوت جاهز" and "✅ واتساب متصل وجاهز")
- QR code sent to Telegram automatically when generated
- Keyboard buttons preferred over text commands
- No emojis in code
- No comments in code unless asked |