(07-12-2020 06:32 PM)Yisroel_MongoTEL Wrote: [ -> ]I'm attaching the guide that I got from Yealink Support
Thank you, Yisroel_MongoTEL. I appreciate it.
(07-07-2020 05:03 PM)CharlieX Wrote: [ -> ]Would be useful if you could provide the details for this. I've created OAuth credentials and added them to the config but I still can't sync.
In case you have not figured it out, or for anyone in that position, here are the steps after successfully creating the credentials:
1. While you are still in Google API Console, in the main menu (left-hand side column) you click "Library"
https://console.developers.google.com/apis/library
2. Use the search field and look for "Contacts API" and click on it.
3. When in the Contacts API page, you click "ENABLE".
(07-07-2020 05:03 PM)CharlieX Wrote: [ -> ]Would be useful if you could provide the details for this. I've created OAuth credentials and added them to the config but I still can't sync.
In case you have not figured it out, or for anyone in that position, here are the steps after successfully creating the credentials:
1. While you are still in Google API Console, in the main menu (left-hand side column) you click "Library"
https://console.developers.google.com/apis/library
2. Use the search field and look for "Contacts API" and click on it.
3. When in the Contacts API page, you click "ENABLE".
[/quote]
How have you configured the consent? This is missing from the docs provided by Yealink and without it you can't even create the credentials. Even with them created, I'm still having problems because the project isn't verified.
(07-22-2020 12:26 PM)CharlieX Wrote: [ -> ]How have you configured the consent? This is missing from the docs provided by Yealink and without it you can't even create the credentials. Even with them created, I'm still having problems because the project isn't verified.
The credentials are separate from the consent.
You can create whatever credentials you want. You don't need to interface with the actual device to create the credentials.
Then, you need to import the credentials to the Yealink device manually i.e. hard-code them in the exported configuration XML file and then import it to the device via the web interface. Then, you click
Directory > Google Contacts > "Sign In"
at the web interface and you go through the related consent process without a hitch. Google Contacts API is happy to let you in because the device carries the credentials you created for that same API.
Hope this helps.
(07-22-2020 12:51 PM)watergate Wrote: [ -> ]The credentials are separate from the consent.
You can create whatever credentials you want. You don't need to interface with the actual device to create the credentials.
Then, you need to import the credentials to the Yealink device manually i.e. hard-code them in the exported configuration XML file and then import it to the device via the web interface. Then, you click
Directory > Google Contacts > "Sign In"
at the web interface and you go through the related consent process without a hitch. Google Contacts API is happy to let you in because the device carries the credentials you created for that same API.
Hope this helps.
Google will not let me create any credentials unless I sort out the consent stuff. I have already tried credentials from another "project" but this didn't work because that project hasn't been verified.
(07-24-2020 09:24 AM)CharlieX Wrote: [ -> ]Google will not let me create any credentials unless I sort out the consent stuff. I have already tried credentials from another "project" but this didn't work because that project hasn't been verified.
I see what you mean. Please try this:
While you are at the credentials page - the one from your screen shot - the left hand side menu reads "OAuth consent screen" right below the "Credentials" menu option. You go there and, I'm guessing, you see that your app has a user type of "Public"; if that's the case, you click "EDIT APP" at the top, and change the type into "Internal" and, then, you will be able to go ahead.
(07-24-2020 10:09 AM)watergate Wrote: [ -> ]I see what you mean. Please try this:
While you are at the credentials page - the one from your screen shot - the left hand side menu reads "OAuth consent screen" right below the "Credentials" menu option. You go there and, I'm guessing, you see that your app has a user type of "Public"; if that's the case, you click "EDIT APP" at the top, and change the type into "Internal" and, then, you will be able to go ahead.
I've tried that but it wants a domain, which means it's restricted to G-Suite customers :-(
(08-06-2020 11:58 AM)CharlieX Wrote: [ -> ] (07-24-2020 10:09 AM)watergate Wrote: [ -> ]I see what you mean. Please try this:
While you are at the credentials page - the one from your screen shot - the left hand side menu reads "OAuth consent screen" right below the "Credentials" menu option. You go there and, I'm guessing, you see that your app has a user type of "Public"; if that's the case, you click "EDIT APP" at the top, and change the type into "Internal" and, then, you will be able to go ahead.
I've tried that but it wants a domain, which means it's restricted to G-Suite customers :-(
Hi there !
I can confirm
it is not restricted to G-Suite users.
Even with a basic Gmail account I've been able to
* create the project
* create a basic Oauth screen (without supplying a domain)
* create the credentials
* add to the project the Contact API
* add these credentials to a T46S though a CFG file (+ 1st line added)
* Sync my Google Contacts
The Oauth screen is not validated by Google (so you will get a warning while signing in) but it works.
It's OK as I am a techy guy but I confirm it's a pain...
Summary for newbies like me....
1. Go to the Google APIs Dashboard
https://console.developers.google.com/apis/dashboard and create a project (OAuth consent screen)
Selecting internal, and adding the scopes you need.
2. Go to the Google APIs Dashboard
https://console.developers.google.com/apis/dashboard and create your OAuth credentials. (These are needed soon)
3. Go to the Google API Console and enable the "Contacts API" for your account
https://console.developers.google.com/ap...leapis.com
I included the "https://www.googleapis.com/auth/contacts" which is for People API too. I used the Contacts APIO though I'm guessing you could use the People one too.
4. Download and check the config file on your phone, make sure you have the version bit (#!version:1.0.0.1 as line one) in the config file. This appears to be there by default on the latest firmware (T46S v66.85.0.5).
5. Modify the config file to include:
google_contact_server.enable = 1
google_contact_server.client_id = <Your Client ID from OAuth>
google_contact_server.client_secret = <Your Secrect Key From OAuth>
6. Upload the config file to your phone
7. On the phone portal sign in and work through the google authentication screen
8. On the phone select directory and Google Contacts, then sync. And it should bugger off for a bit downloading them.
At this point, it should be working!
Good luck!
(12-03-2020 07:00 AM)jhale716 Wrote: [ -> ]Summary for newbies like me....
1. Go to the Google APIs Dashboard https://console.developers.google.com/apis/dashboard and create a project (OAuth consent screen)
Selecting internal, and adding the scopes you need.
2. Go to the Google APIs Dashboard https://console.developers.google.com/apis/dashboard and create your OAuth credentials. (These are needed soon)
3. Go to the Google API Console and enable the "Contacts API" for your account https://console.developers.google.com/ap...leapis.com
I included the "https://www.googleapis.com/auth/contacts" which is for People API too. I used the Contacts APIO though I'm guessing you could use the People one too.
4. Download and check the config file on your phone, make sure you have the version bit (#!version:1.0.0.1 as line one) in the config file. This appears to be there by default on the latest firmware (T46S v66.85.0.5).
5. Modify the config file to include:
google_contact_server.enable = 1
google_contact_server.client_id = <Your Client ID from OAuth>
google_contact_server.client_secret = <Your Secrect Key From OAuth>
6. Upload the config file to your phone
7. On the phone portal sign in and work through the google authentication screen
8. On the phone select directory and Google Contacts, then sync. And it should bugger off for a bit downloading them.
At this point, it should be working!
Good luck!
Hi @jhale716,
Thank you for your feedback and tuto for this.
Whereas the Google contacts sync work fine for me, I still have an issue with this phonebook. It looks like the phone (T46S) is not performing any lookup in this directory for incoming or outgoing (history) calls... Concretely if a contact calls me, it's name is not displayed even if its number is in the directory.
Do you face the same behaviour ?
Anyone found a fix for this ?
Even tried without success to add in the config file a setting like "google_contact_server.call_in_lookup = 1"
Thanks!
(12-03-2020 07:42 AM)Maxence Wrote: [ -> ] (12-03-2020 07:00 AM)jhale716 Wrote: [ -> ]Summary for newbies like me....
1. Go to the Google APIs Dashboard https://console.developers.google.com/apis/dashboard and create a project (OAuth consent screen)
Selecting internal, and adding the scopes you need.
2. Go to the Google APIs Dashboard https://console.developers.google.com/apis/dashboard and create your OAuth credentials. (These are needed soon)
3. Go to the Google API Console and enable the "Contacts API" for your account https://console.developers.google.com/ap...leapis.com
I included the "https://www.googleapis.com/auth/contacts" which is for People API too. I used the Contacts APIO though I'm guessing you could use the People one too.
4. Download and check the config file on your phone, make sure you have the version bit (#!version:1.0.0.1 as line one) in the config file. This appears to be there by default on the latest firmware (T46S v66.85.0.5).
5. Modify the config file to include:
google_contact_server.enable = 1
google_contact_server.client_id = <Your Client ID from OAuth>
google_contact_server.client_secret = <Your Secrect Key From OAuth>
6. Upload the config file to your phone
7. On the phone portal sign in and work through the google authentication screen
8. On the phone select directory and Google Contacts, then sync. And it should bugger off for a bit downloading them.
At this point, it should be working!
Good luck!
Hi @jhale716,
Thank you for your feedback and tuto for this.
Whereas the Google contacts sync work fine for me, I still have an issue with this phonebook. It looks like the phone (T46S) is not performing any lookup in this directory for incoming or outgoing (history) calls... Concretely if a contact calls me, it's name is not displayed even if its number is in the directory.
Do you face the same behaviour ?
Anyone found a fix for this ?
Even tried without success to add in the config file a setting like "google_contact_server.call_in_lookup = 1"
Thanks!
We had the same issue but found it was due to the phone numbers in Google Contacts containing spaces (which are added automatically as you add the contact into Google, but you can backspace these out afterwards).
As our client had almost 4000 contacts, we:
- Exported them to CSV.
- Used Excel to find/replace all spaces from the mobile number columns.
- Re-imported all contacts.
- Used "Merge & Fix" option in Google Contacts.
Give that a try. You may also need to change the format of the phone number columns in Excel so the leading '0' in phone numbers isn't removed. To do that:
- Select the phone number columns.
- CTRL+Click the headers to de-select those, leaving only the numbers selected.
- Press CTRL+1 to bring up the Format Cells window.
- On the first tab ("Number") select the Custom category.
- In the "type" field, we just entered "0000000000" (without quotes) as a format mask. We weren't too sure about this step but it seemed to work.
Hope that helps. We did this on a T41S on latest firmware.