No description
Find a file
2023-09-26 22:31:17 -05:00
emulated Add licensing information 2023-08-02 11:42:06 -04:00
ids make publishing client_data optional 2023-08-28 08:01:41 -04:00
proxy Iterate over references instead of indexes for identities 2023-08-20 17:15:45 -06:00
.gitignore incorporate most of June's changes 2023-08-19 15:25:21 -04:00
albert.py incorporate most of June's changes 2023-08-19 15:25:21 -04:00
apns.py incorporate most of June's changes 2023-08-19 15:25:21 -04:00
bags.py more refactoring 2023-07-27 17:34:38 -04:00
demo.py Fix manual PDU method for SMS registration 2023-09-16 21:11:02 -05:00
gateway_fetch.py Add gateway_fetch code 2023-09-22 15:44:25 -04:00
imessage.py refactoring and cleanup 2023-08-25 22:26:37 -04:00
LICENSE Add licensing information 2023-08-02 11:42:06 -04:00
README.md Update README.md 2023-09-26 22:31:17 -05:00
requirements.txt Add trio to requirements.txt 2023-09-01 13:54:00 +01:00
sms_registration.py Update sms_registration.py 2023-09-23 22:42:37 -05:00

Overview

This is the Pypush sms-registration branch. This branch allows you to register your phone number to your Apple account as an iMessage alias.

Info

sms-registration is not fully developed yet, and still contains bugs! If you encounter any sort of bug, please join our Discord, however please note we cannot get to everyone, so try to figure out any errors yourself before asking.

Installation

You will first install Pypush onto your machine. Please keep in mind that you will have to have a script running on a home server or PC 24/7 to keep your number active!

PNRgateway

In order for Apple to verify your number, a specialized message has to be sent from your phone to Apple's "gateway number" and have the response captured. This number is different for each carrier, however the newest app version should automatically find your gateway number.

  1. Enable USB debugging/ADB on your phone. There are multiple online guides that guide you through this based on your phone.
  2. Install the APK. The message link containing the APK is located here, and the GitHub repository is here.
  3. Connect your phone to the same WiFi network as your host PC, and open the app.

Pypush

Make sure you have git and Python installed.

  1. git clone -b sms-registration https://github.com/beeper/pypush
  2. cd pypush && python3 -m pip install -r requirements.txt

Number Registration

  1. python3 demo.py --phone [ip]. Replace ip with your phone's local IP.
  2. If the previous ran successfully, you can now run python3 demo.py --reregister

Please note: This last script is the script you will be running continuously. We recommend every 30 minutes. There should also be a file called reregister.py, if you run this it should reregister you every 30 minutes.

Good to Know

You will have to reregister your number every so often. This can last anywhere between 10 minutes to 48 hours, and usually the longer you run the script, the longer it takes to deregister. We may implement a feature to automatically detect deregistration in the future.

If you ever have any type of error, delete the config.json file and run steps 3-4 again. This is really important.

Issues

This is still in the development stage, so expect issues and bugs. Here is a list of possible errors:

Timeout waiting for response from gateway

This means it took too long for Apple to respond from the gateway number, PNRgateway is not sending the message to the correct gateway, or the response is in an incorrect encoding. This is common, please reach out for help.

Connection Closed

This means the app crashed or could not parse the response data from the gateway. This is also common, and a recent bug has caused this error to happen excessively with non-Verizon carriers.

Failed to resolve host

This error occurs when you are not connected to the same network, the all is closed, or you are not using the correct IP.

If you encounter any other errors, please try to find answers online for help.

Resources