41
README.md
@ -1,38 +1,11 @@
|
|||||||
## Установка
|
# Phone number migration
|
||||||
|
|
||||||
### 1. Настраиваем OAuth авторизацию Google
|
## Использование
|
||||||
|
|
||||||
#### 1.1 Создаем или выбираем проект в Google Console
|
Проект доступен в нескольких вариантах:
|
||||||
|
|
||||||
https://console.cloud.google.com/
|
1. Как [блокнот в Google Colab](https://colab.research.google.com/drive/1xQZpEFf2b7Mr1z2uSdkHQoZq5cxUG2ME?usp=sharing) (для работы с самой актуальной версией лучше самостоятельно импортировать Phone_number_migration.ipynb).
|
||||||
|
2. Как Jupyter Notebook (Phone_number_migration.ipynb).
|
||||||
|
3. Как простой скрипт на Python (main.py).
|
||||||
|
|
||||||
#### 1.2 Включаем People API
|
Во всех вариантах использования необходимо получить файл с OAuth Credentials [следуя данной инструкции](docs/Настройка-Google-Cloud-проекта.md).
|
||||||
|
|
||||||
API and Services → Library → Search and Enable the service
|
|
||||||
|
|
||||||
People API
|
|
||||||
|
|
||||||
#### 1.3 Создаем OAuth2 Screen Consent
|
|
||||||
|
|
||||||
API and Services → OAuth Consent Screen
|
|
||||||
|
|
||||||
В разделе Scopes выбираем People API
|
|
||||||
|
|
||||||
В разделе Test users добавляем наш адрес электронной почты
|
|
||||||
|
|
||||||
#### 1.4 Создаем Oauth2 Credentials
|
|
||||||
|
|
||||||
API and Services → Credentials → Create credentials → OAuth client ID
|
|
||||||
|
|
||||||
Application type: `Web application`
|
|
||||||
|
|
||||||
Authorized redirect URI: `http://localhost:42047/`
|
|
||||||
|
|
||||||
Сохраняем OAuth2 Credentials как json в рабочую папку с названием `credentials.json`.
|
|
||||||
|
|
||||||
### 2. Устанавливаем зависимости и запускаем скрипт
|
|
||||||
|
|
||||||
```shell
|
|
||||||
pip install -r requirements.txt
|
|
||||||
python main.py
|
|
||||||
```
|
|
BIN
docs/images/apis-and-services-library.png
Normal file
After Width: | Height: | Size: 28 KiB |
BIN
docs/images/create-credentials-credential-type.png
Normal file
After Width: | Height: | Size: 61 KiB |
BIN
docs/images/create-credentials-oauth-consent-screen.png
Normal file
After Width: | Height: | Size: 66 KiB |
BIN
docs/images/create-credentials-sensitive-scopes.png
Normal file
After Width: | Height: | Size: 63 KiB |
BIN
docs/images/enable-google-people-api.png
Normal file
After Width: | Height: | Size: 23 KiB |
BIN
docs/images/new-project.png
Normal file
After Width: | Height: | Size: 35 KiB |
BIN
docs/images/notifications-create-project.png
Normal file
After Width: | Height: | Size: 57 KiB |
BIN
docs/images/people-api-page.png
Normal file
After Width: | Height: | Size: 101 KiB |
BIN
docs/images/search-people-api.png
Normal file
After Width: | Height: | Size: 22 KiB |
BIN
docs/images/select-a-project.png
Normal file
After Width: | Height: | Size: 24 KiB |
BIN
docs/images/update-selected-scopes.png
Normal file
After Width: | Height: | Size: 101 KiB |
BIN
docs/images/welcome-google-cloud-platform.png
Normal file
After Width: | Height: | Size: 47 KiB |
111
docs/Настройка-Google-Cloud-проекта.md
Normal file
@ -0,0 +1,111 @@
|
|||||||
|
# Настройка Google Cloud проекта
|
||||||
|
|
||||||
|
В данном разделе мы рассмотрим как создать проект в Google Cloud Platform, подключим People API для взаимодействия с Google Контактами, а также настроим OAuth авторизацию.
|
||||||
|
|
||||||
|
## Этап 0. Первоначальная настройка аккаунта Google Cloud Platform
|
||||||
|
|
||||||
|
Если вы уже заходили в Google Cloud Platform, то можете просто пропустить этот этап и перейти по ссылке https://console.cloud.google.com/getting-started
|
||||||
|
|
||||||
|
Для того, чтобы получить доступ к аккаунту Google Cloud Platform, необходимо пройти по ссылке: https://console.cloud.google.com/
|
||||||
|
|
||||||
|
Если вы впервые заходите на данную платформу, необходимо выбрать страну и согласиться с Google Cloud Platform Terms of Service. Нажмите кнопку "Agree and Continue".
|
||||||
|
|
||||||
|
![Окно первоначальной настройки Google Cloud Platform. Содержит поля Country, Terms of Service, Email updates и кнопкой Agree and Continue.](images/welcome-google-cloud-platform.png)
|
||||||
|
|
||||||
|
После данного действия вы попадете на страницу Get Started with Google Cloud Platform.
|
||||||
|
|
||||||
|
## Этап 1. Создание проекта в Google Cloud Platform
|
||||||
|
|
||||||
|
1. Нажмите кнопку "Select a project".
|
||||||
|
|
||||||
|
После данного действия появится окно с заголовком "Select a project".
|
||||||
|
|
||||||
|
![Окно с заголовком "Select a project". Внизу отображены существующие проекты, справа вверху находится кнопка "New project".](images/select-a-project.png)
|
||||||
|
|
||||||
|
2. Нажмите кнопку "New project" в правом верхнем углу.
|
||||||
|
|
||||||
|
После этого действия откроется страница "New project".
|
||||||
|
|
||||||
|
![Страница с заголовком "New project". Ниже заголовка отображены поля для ввода "Project name", "Location", кнопки "Create" и "Cancel".](images/new-project.png)
|
||||||
|
|
||||||
|
3. Введите желаемое название проекта или оставьте значение по умолчанию.
|
||||||
|
|
||||||
|
4. Нажмите кнопку "Create" внизу формы.
|
||||||
|
|
||||||
|
После данного действия откроется страница Get Started with Google Cloud Platform, а справа вверху в разделе Notifications отобразится новый проект. Через какое-то время проект будет успешно создан.
|
||||||
|
|
||||||
|
![Окно с заголовком Notifications. Отображаются два уведомления. Одно из них - "Create Project: My Project 63695". В нем есть кнопка Select project.](images/notifications-create-project.png)
|
||||||
|
|
||||||
|
5. Нажмите "Select Project" в "Notifications".
|
||||||
|
|
||||||
|
После этого действия вы попадете на страницу Dashboard.
|
||||||
|
|
||||||
|
## Этап 2. Подкючение People API к проекту
|
||||||
|
|
||||||
|
1. Нажмите кнопку ☰ (Navigarion menu) в левом верхнем углу.
|
||||||
|
|
||||||
|
2. Выберите в меню "APIs & Services" → "Library".
|
||||||
|
|
||||||
|
![Боковое меню, в котором выбран пункт "APIs & Services" и подпункт "Library".](images/apis-and-services-library.png)
|
||||||
|
|
||||||
|
После данного действия вы попадете на страницу "API Library".
|
||||||
|
|
||||||
|
3. В поиске введите "People API" и нажмите клавишу Enter в поле ввода для поиска.
|
||||||
|
|
||||||
|
4. Выберите "Google People API".
|
||||||
|
|
||||||
|
![Результаты по поиску "People API". Первым в списке находится "Google People API".](images/search-people-api.png)
|
||||||
|
|
||||||
|
5. Нажмите кнопку "Enable".
|
||||||
|
|
||||||
|
![Заголовок "Google People API". Внизу отображаются кнопки "Enable" и "Try this api".](images/enable-google-people-api.png)
|
||||||
|
|
||||||
|
Через некоторое время вас перенаправит на страницу c заголовком "People API".
|
||||||
|
|
||||||
|
![API/Service Details, в которой отображаются данные о People API.](images/people-api-page.png)
|
||||||
|
|
||||||
|
## Этап 3. Создание OAuth Credentials
|
||||||
|
|
||||||
|
1. Нажмите кнопку Create credentials в правом верхнем углу.
|
||||||
|
|
||||||
|
После этого действия откроется страница "Create credentials".
|
||||||
|
|
||||||
|
![Страница с заголовком "Create credentials". Ниже заголовка отображена форма на этапе Credential Type".](images/create-credentials-credential-type.png)
|
||||||
|
|
||||||
|
2. Выберите "User data" в поле "What data will you be accessing?".
|
||||||
|
|
||||||
|
3. Нажмите кнопку "Next".
|
||||||
|
|
||||||
|
4. Введите данные в поля "App name" и "User support email", "Email addresses" в форме.
|
||||||
|
|
||||||
|
![Страница с заголовком "Create credentials". Ниже заголовка отображена форма на этапе "OAuth Consent Screen".](images/create-credentials-oauth-consent-screen.png)
|
||||||
|
|
||||||
|
5. Нажмите кнопку "Save and continue".
|
||||||
|
|
||||||
|
6. Нажмите кнопку "Add or remove scopes".
|
||||||
|
|
||||||
|
После данного действия откроется правое боковое меню с заголовком "Update selected scopes".
|
||||||
|
|
||||||
|
7. Введите в поле "Filters" значение "People API" и выберите строчку со значением "Scope" ".../auth/contacts".
|
||||||
|
|
||||||
|
![Боковое меню с заголовком "Update selected scopes". В фильтре добавлено значение "People API", в списке выбран первая строчка с "Scope" ".../auth/contacts/".](images/update-selected-scopes.png)
|
||||||
|
|
||||||
|
8. Нажмите кнопку "Update" внизу правого бокового меню.
|
||||||
|
|
||||||
|
После этого действия на странице в разделе "Your sensitive scopes" появится выбранный scope.
|
||||||
|
|
||||||
|
![Страница с заголовком "Create credentials". Ниже заголовка отображены разделы "Your non-sensitive scopes", "Your sensitive scopes", "Your restricted scopes". "Your sensitive scopes" содержит scope ".../auth/contacts/"](images/create-credentials-sensitive-scopes.png)
|
||||||
|
|
||||||
|
9. Нажмите кнопку "Save and continue".
|
||||||
|
|
||||||
|
10. Выберите "Desktop app" в "Application type".
|
||||||
|
|
||||||
|
11. Нажмите кнопку "Create".
|
||||||
|
|
||||||
|
12. Нажмите кнопку "Download", чтобы скачать файл.
|
||||||
|
|
||||||
|
13. Нажмите кнопку "Done".
|
||||||
|
|
||||||
|
## Этап 4. Использование OAuth Credentials в приложении
|
||||||
|
|
||||||
|
Переименуйте файл в "credentials.json" и поместите его в папку с приложением.
|