Telegram bot to download, decrypt and manage iOS IPA files via SSH/SFTP.
- Download IPA: Download apps from App Store using
ipatool - Decrypt: Decrypt installed apps using
TrollDecryptJB - Install/Uninstall: Install and uninstall apps using
ideviceinstaller - Manage: List installed applications
- Automation: Download and decrypt automatically in one command
- Node.js >= 18.0.0
- npm
ipatool- Install from ipatool orbrew install ipatoolideviceinstaller- Install from libimobiledevice- macOS:
brew install libimobiledevice - currently not support Windows, Linux mayable to run, idk, haven't test on Linux yet... :/
- macOS:
- PHP 7.4+ with extensions:
curlextension (usually included)redisextension (optional)- macOS:
brew install php-redis
- macOS:
- Redis server (optional)
- macOS:
brew install redis
- macOS:
- Python 3.6+ with dependencies:
pip install -r requirements.txt
- iOS 14 (jailbroken with checkra1n or unc0ver, not support Taurine/Odysseyra1n atm)
- OpenSSH with root access
TrollDecryptJB- Get the deb from TrollDecryptJB iOS 14 branch and install it.
- Clone repository:
git clone https://github.com/34306/tele-bot-ipa
cd tele-bot-ipa- Install dependencies:
npm install- Create
.envfile from.env.example:
cp .env.example .env- Config
.env:
TELEGRAM_BOT_TOKEN=your_bot_token_here
ADMIN_IDS=your_telegram_user_id
SSH_HOST=192.168.x.x
SSH_PORT=22
SSH_USER=root
SSH_PASSWORD=alpine
# Optional: ipatool path (default: ipatool)
IPATOOL_PATH=ipatool
# Optional: Arcade check service URL (default: http://localhost:8080/check-arcade.php)
ARCADE_CHECK_URL=http://localhost:8080/check-arcade.php
# Optional: Redis configuration (if using Redis for caching)
REDIS_HOST=127.0.0.1
REDIS_PORT=6379
REDIS_PASSWORD=
REDIS_DB=0
REDIS_TIMEOUT=0.8- For the
USER_SESSION_STRING, you may need to use thesetup_telegram.pyto get the token - For the BOT token just chat with
@BotFatherin Telegram - For the Telegram API Hash thing just go to https://my.telegram.org/apps
- You need to create a file backup channel and fill the channel ID into
BACKUP_CHANNEL_IDfor file saving and forwarding (file size larger than 2GB)
- Build project:
npm run build- Run both services:
Run both check-arcade and bot
./start-all.sh/start- Start bot and show menu/help- Show help guide/request <app-store-url>- Download and decrypt app from App Store URL
- Check if SSH is enabled on iPhone
- Verify IP address and password
- Makesure iPhone and your Mac are on the same network
- Makesure
ipatoolis installed - You need to login into your Appstore account first by using:
ipatool auth login -e <your_email>
- Makesure app is installed on iPhone
- Check if
TrollDecryptJBis installed (see TrollDecryptJB) - Some apps may not be decryptable (ServiceConnectionInterrupted, idk how to fix it yet, maybe in the future, for eg: Line app, you need decrypt in TrollDecryptJB UI)
- Makesure libmobiledevice is installed on your Mac
- Check if IPA file exists
- Verify trolldecryptjb cli on iPhone (you may use default path: /usr/local/bin/trolldecryptjb)
Warning:
- DONOT upload your
.envfile (contain ALL of your Telegram TOKEN, added in.gitignorefile but just double check) - Telegram is allow botuser but be careful with it, just in case...
- ipatool - Tool to download IPA from App Store
- TrollDecryptJB - Tool to decrypt iOS apps (CLI available at
/usr/local/bin/trolldecryptjb) - ideviceinstaller
- ipa-bot