# Migration

Our script includes a built-in migration tool that helps you transfer data from the phone system previously used on your server.

Due to structural differences between various phone scripts, not all data types can be migrated from every resource.

The table below shows which data can be successfully transferred from each supported phone script:

<table><thead><tr><th width="167" align="center">DATA</th><th width="116" align="center">LB-Phone</th><th width="125" align="center">High-Phone</th><th width="142" align="center">QS-Phone-Pro</th><th width="97" align="center">YSeries</th><th align="center">QB-Phone</th></tr></thead><tbody><tr><td align="center">Phone Numbers</td><td align="center">✅</td><td align="center">✅</td><td align="center">✅</td><td align="center">✅</td><td align="center">✅</td></tr><tr><td align="center">Settings</td><td align="center">✅</td><td align="center">✅</td><td align="center">✅</td><td align="center">✅</td><td align="center">❌</td></tr><tr><td align="center">Contacts</td><td align="center">✅</td><td align="center">✅</td><td align="center">✅</td><td align="center">✅</td><td align="center">✅</td></tr><tr><td align="center">Gallery</td><td align="center">✅</td><td align="center">✅</td><td align="center">✅</td><td align="center">✅</td><td align="center">✅</td></tr><tr><td align="center">SMS</td><td align="center">✅</td><td align="center">✅</td><td align="center">✅</td><td align="center">✅</td><td align="center">✅</td></tr><tr><td align="center">Voice Recordings</td><td align="center">✅</td><td align="center">❌</td><td align="center">❌</td><td align="center">❌</td><td align="center">❌</td></tr><tr><td align="center">Recent Calls</td><td align="center">✅</td><td align="center">✅</td><td align="center">✅</td><td align="center">✅</td><td align="center">❌</td></tr><tr><td align="center">Qwuaker</td><td align="center">✅</td><td align="center">✅</td><td align="center">✅</td><td align="center">❌</td><td align="center">❌</td></tr><tr><td align="center">Notes</td><td align="center">✅</td><td align="center">✅</td><td align="center">✅</td><td align="center">✅</td><td align="center">❌</td></tr><tr><td align="center">Mail</td><td align="center">✅</td><td align="center">✅</td><td align="center">✅</td><td align="center">❌</td><td align="center">❌</td></tr><tr><td align="center">DarkChat</td><td align="center">✅</td><td align="center">❌</td><td align="center">✅</td><td align="center">❌</td><td align="center">❌</td></tr><tr><td align="center">Peargram</td><td align="center">✅</td><td align="center">❌</td><td align="center">✅</td><td align="center">❌</td><td align="center">❌</td></tr><tr><td align="center">Alarms</td><td align="center">✅</td><td align="center">❌</td><td align="center">✅</td><td align="center">✅</td><td align="center">❌</td></tr><tr><td align="center">Map Waypoints</td><td align="center">✅</td><td align="center">❌</td><td align="center">✅</td><td align="center">✅</td><td align="center">❌</td></tr><tr><td align="center">Swiply</td><td align="center">❌</td><td align="center">❌</td><td align="center">✅</td><td align="center">❌</td><td align="center">❌</td></tr></tbody></table>

{% hint style="danger" %}
**Why can’t we migrate all data?**

We have made every effort to migrate as much data as technically possible. However, in several cases a full migration is not feasible due to structural differences between systems.

#### High-Phone

Most applications in High-Phone do not support user account creation, while our system requires each app to operate under a user account. Because of this fundamental difference, applications without an account system cannot be migrated.

#### QS-Phone-Pro

We successfully migrate the majority of QS-Phone-Pro data.\
However, certain individual phones may not be transferred. This is due to the way Quasar stores its data: many values are saved inside the item’s metadata. Phones stored inside gloveboxes, vehicles, stashes, or any container other than the player’s inventory may not be detected by the migration script, and therefore cannot be processed.

#### YSeries

YSeries contains a critical issue that prevents us from transferring passwords.\
There is a flaw in the password-encryption mechanism where a single encrypted value corresponds to multiple valid password combinations.\
For example: if you create an account with the password VWZt1234, you can also log into the same account with: VWtt1234, VWZZ1234, or VWtZ1234.\
Because of this behavior, securely migrating passwords without compromising account integrity is not possible.
{% endhint %}

## How to run the migration?

{% stepper %}
{% step %}

### Create a backup of your database

Please do not skip this step. The migration performs many operations on your database, and if any error occurs, you may need to restore your backup.
{% endstep %}

{% step %}

### Start Migrate

In your server console, use the command `migrate` and provide the name of your previous phone script as the first argument.

Supported options:

\- lb-phone&#x20;

\- high-phone&#x20;

\- qs-smartphone-pro&#x20;

\- qb-phone&#x20;

\- yseries-phone

Example: `migrate lb-phone` or `migrate high-phone`&#x20;

This command will begin migrating data from lb-phone into 17mov\_Phone.
{% endstep %}

{% step %}

### Confirm Migrate

This action is irreversible. For safety, the system requires a second confirmation step.&#x20;

To confirm the migration, run: `migrateconfirm`&#x20;

After confirmation, the console will show detailed logs of the entire process. When the migration is complete, all transferred data will be available inside 17mov\_Phone.
{% endstep %}

{% step %}

### Restart the 17mov\_Phone

Run `ensure 17mov_Phone` in your server console.
{% endstep %}
{% endstepper %}
