Simple script to download OTA packages from Realme's endpoint.

Overview

Realme OTA Downloader

License GitHub release (latest by date including pre-releases) GitHub Issues

CLI tool (based on this C# program) to create requests to the Realme's endpoint.

Requirements

  • Python 3.9.
  • pycryptodome.

Installation

sudo apt install python3-pip
sudo pip3 install --upgrade pycryptodome git+https://github.com/R0rt1z2/realme-ota

Usage

usage: main.py [-h] [-c SERVER] [-i IMEI] [-t TIMEOUT] [-a ANDROID] [-r ROOT] [-d DUMP] [-o ONLY] [-s] [-v {0,1}]
               [-z {Query_Update,Result_Feedback,Query_Description,Reback_Abandon,Find_Rights,Appointment,Query_New_Model,Query_Ext_Content,Down_Feedback,CheckDown}]
               product_model ota_version

positional arguments:
  product_model         Product Model (ro.product.name).
  ota_version           OTA Version (ro.build.version.ota).

optional arguments:
  -h, --help            show this help message and exit
  -c SERVER, --server SERVER
                        Use specific server for the request (GL = 0, CN = 1, IN = 2, EU = 3).
  -i IMEI, --imei IMEI  Use custom IMEI for the request.
  -t TIMEOUT, --timeout TIMEOUT
                        Use custom timeout for the request.
  -a ANDROID, --android ANDROID
                        Use custom android version for the request.
  -r ROOT, --root ROOT  Use custom root status for the request.
  -d DUMP, --dump DUMP  Save request response into file.
  -o ONLY, --only ONLY  Only show the desired value from the request.
  -s, --silent          Enable silent output (purge logging).
  -v {0,1}, --verbosity {0,1}
                        Increase or decrease verbosity.
  -z {Query_Update,Result_Feedback,Query_Description,Reback_Abandon,Find_Rights,Appointment,Query_New_Model,Query_Ext_Content,Down_Feedback,CheckDown}, --command {Query_Update,Result_Feedback,Query_Description,Reback_Abandon,Find_Rights,Appointment,Query_New_Model,Query_Ext_Content,Down_Feedback,CheckDown}
                        Use custom CMD for the request.

Usage example

# Normal usage - print the entire request
[email protected]: $ realme-ota RMX2020 RMX2020_11.A.59_0590_202102181155
[2021-09-23 20:26:38.037321] I: Requesting for RMX2020 - RMX2020_11.A.59...
[2021-09-23 20:26:38.764134] I: {'parent': 'ota', 'otaVersion': 'RMX2020_11.A.65_0650_202108211659', 'down_url': 'https://ota-manual-sg.allawnofs.com/ota/21/08/24/5a398f51-8900-4178-8153-60b98bf4bf7e.ozip', 'newAndroidVersion': 'Android 10', 'description': 'http://ota-manual-sg.allawnofs.com/ota/21/08/30/69f5202e26b14b789054d9b9ac4cc9d8.html', 'recommend': '100', 'language': 'en-IN', 'versionName': 'RMX2020_11_A.65', 'rid': '96d9b7df-092a-4ac1-b810-b8a5664e7745', 'type': '1', 'newColorOSVersion': 'ColorOS 7.0', 'patch_size': '3287752078', 'patchFilePath': '/patch/amazone2/GLO/RMX2020/RMX2020_11.A.65_0650_202108211659/RMX2020_11_OTA_0650_all_xokQsbsYqeC2.ozip', 'osVersion': 'ColorOS 7.0', 'share': '.', 'id': '61330f13f69bc3c9e42fd3a3', 'googlePatchLevel': '0', 'patch_name': 'RMX2020_11_OTA_0650_all_xokQsbsYqeC2.ozip', 'paramFlag': 1, 'needDataSpace': '0', 'noticeType': 0, 'new_version': 'RMX2020_11.A.65_0650_202108211659', 'patch_md5': 'd99b0ea8069f9bd3b7c00296b01dc372', 'versionCode': 650, 'silenceUpdate': 0, 'active_url': 'https://ota-manual-sg.allawnofs.com/ota/21/08/24/5a398f51-8900-4178-8153-60b98bf4bf7e.ozip', 'wipe': '0', 'questionnaireEnable': False, 'extract': 'This release updated Android security patch and improved system stability.', 'version_name': 'RMX2020_11_A.65', 'aid': 'RMX2020_11.A', 'status': 'published', 'msg': 'SUCCEED', 'resultCode': 1}
[email protected]: $
# Custom usage - only print the download URL
[email protected]: $ realme-ota RMX2020 RMX2020_11.A.59_0590_202102181155 -o down_url -s -v 0
https://ota-manual-sg.allawnofs.com/ota/21/08/24/5a398f51-8900-4178-8153-60b98bf4bf7e.ozip
[email protected]: $

License

  • This tool is licensed under the GNU (v3) General Public License. See LICENSE for more details.
Owner
Roger Ortiz
Roger Ortiz
A useful and easy to use Terminal Timer made with Python.

Terminal SpeedCubeTimer Installation ¡No requirements! Just Download and play Usage Starts timer.py and you will see this. python timer.py Scramble

Achalogy 5 Dec 22, 2022
Library and command-line utility for rendering projects templates.

A library for rendering project templates. Works with local paths and git URLs. Your project can include any file and Copier can dynamically replace v

808 Jan 04, 2023
A web shell client written in python.

Webshell client A webshell client written in python. Only works well for linux for the time being. Why? Because there are too many heavy webshells. So

tchar 1 Dec 07, 2021
Command line tool for interacting and testing warehouse components

Warehouse debug CLI Example usage for Zumo debugging See all messages queued and handled. Enable by compiling the zumo-controller with -DDEBUG_MODE_EN

1 Jan 03, 2022
A selfbot made with DPY, doesn't have much commands but there's some useful commands to use.

Phantom Selfbot A selfbot made in DPY, made by Zenith. How to use Add your token in token = 'YOUR-MOMS-TOKEN-HERE' Change the prefix in prefix = If

[Ͼ⁴] Ƶephyr 2 Dec 02, 2021
Get COVID-19 vaccination schedules from booking.moh.gov.ge in the CLI

vaccination.py Get COVID-19 vaccination schedules from booking.moh.gov.ge in the CLI. Installation $ pip install vaccination Usage Make sure the Pytho

Temuri Takalandze 11 Dec 08, 2021
A Multipurpose bot with many Commands made using Pycord

This repo has all of the commands you will ever need in a discord bot. a Multipurpose discord bot

Pogrammar 42 Dec 18, 2022
A **CLI** folder organizer written in Python.

Fsorter Introduction A CLI folder organizer written in Python. Dependencies Before installing, install the following dependencies: Ubuntu/Debain Based

1 Nov 17, 2021
Tablicate - Python library for easy table creation and output to terminal

Tablicate Tablicate - Python library for easy table creation and output to terminal Features Column-wise justification alignment (left, right, center)

3 Dec 14, 2022
Professor Wordlist is a free open source command line tool written in python

Professor Wordlist is a free open source command line tool written in python, With the aim of generating custom wordlists with a variety of unique parameters and functions providing many possibilitie

オークO A K Z E H オーク 1 Oct 28, 2021
Shellcode runner to execute malicious payload and bypass AV

buffshark-shellcode-runner Python Shellcode Runner to execute malicious payload and bypass AV This script utilizes mmap(for linux) and win api wrapper

Momo Lenard 9 Dec 29, 2022
A super simple terminal command shortener 🐟

pcmd A super simple terminal command shortener 🐟 Source code : https://github.com/j0fiN/pcmd Documentation : https://j0fin.github.io/pcmd About Durin

9 Mar 02, 2022
Container images for portable development environments

Docker Dev Spin up a container to develop from anywhere! To run, just: docker run -ti aghost7/nodejs-dev:boron tmux new Alternatively, if on Linux: p

Jonathan Boudreau 163 Dec 22, 2022
CLI client for RFC 4226's HOTP and RFC 6238's TOTP.

One Time Password (OTP, TOTP/HOTP) OTP serves as additional protection in case of password leaks. onetimepass allows you to manage OTP codes and gener

Apptension 4 Jan 05, 2022
Create animated ASCII-art for the command line almost instantly!

clippy Create and play colored 🟥 🟩 🟦 or colorless ⬛️ ⬜️ animated, or static, ASCII-art in the command line! clippy can help if you are wanting to;

Connor 10 Jun 26, 2022
🎈 A Mini CLI-based Operating System simulator

Mini OS Simulator Summary 🎈 A Mini CLI-based Operating System simulator, well, not really. It simulates a file system with songs and movies and stuff

Jaiyank S. 3 Feb 14, 2022
Color preview command-line tool written in python

Color preview command-line tool written in python

Arnau 1 Dec 27, 2021
vimBrain is a brainfuck-based vim-inspired esoteric programming language.

vimBrain vimBrain is a brainfuck-based vim-inspired esoteric programming language. vimBrainPy Currently, the only interpreter available is written in

SalahDin Ahmed 3 May 08, 2022
Ideas on how to quickly learn to build command-line tools

CLI-Bootcamp Ideas on how to quickly learn to build command-line tools Part 1-Bash Week1: Using Linux Lesson 1: Using Linux Shell Lab Lesson 2: How sh

Noah Gift 10 Apr 18, 2022
[WIP]An ani-cli like cli tool for movies and webseries

mov-cli A cli to browse and watch movies. Installation This project is a work in progress. However, you can try it out python git clone https://github

166 Dec 30, 2022