Topic-icon Any way to 'log' or otherwise work out why some methods are failing?

Active Subscriptions:

None
Hi,

Is there any way to work out why an oauth provider is failing. Google, Facebook, Twitter, Github, Instagram all working fine.

Yahoo fails after it gets to an approval window, you click agree, it fails and gives a message "Uh-oh! Looks as if something went wrong. Please try again later."

Live fails without getting to any approval window with "We're unable to complete your request. Microsoft account is experiencing technical problems. Please try again later."

There doesn't appear to be any failure log in the sites ... how do you diagnose where the problem is; my config, the app or the site?

Thanks.


Andrew
The topic has been locked.
Support Specialist
I thought I responded to this earlier, but I don't see my reply anymore. Perhaps I didn't submit it...

Usually the problem is with how the application has been configured. Go through the application setup guides found here to double check the WindowsLive and Yahoo settings.

For WindowsLive, can you set the JFBConnect backend > Configuration > General > 'Disable SSL Certificate Validation' setting to Yes and see if this has any effect? I'd also try keeping this on for Yahoo to see if there's any change as well.

After that, for Yahoo, could you let me know:
* What permissions for the Social Directory do you have set in your application?
* How old is the application? Is it one created when Yahoo was still using OAuth1 or is it a newer one with OAuth2?

Let me know and we'll go from there.

-Melissa
The topic has been locked.
Active Subscriptions:

None
Hi Melissa,

I tried that. I also created a new app for Yahoo ... still not luck.

The application is brand new (today).

The Social Directory permission in the app is set to Read Public.

Thanks.

Andrew
The topic has been locked.
Support Specialist
Could you try 'Read/Write Public and Private' and 'Read/Write Public' permissions to see if there's any change? What do you have the JFBConnect 'Enable Automatic Registration' setting set to?
The topic has been locked.
Active Subscriptions:

None
Melissa,

Yahoo:

I setup a yahoo app in at auth0.com to test it and it threw an error about the server name.

After a few tries, I worked out that it needs the full return domain, not just the domain name. That is, scarpar.com does not work, but www.scarpar.com does work if that's your default home. In our case everything is redirected to www. This wasn't clear from the setup documentation. Maybe this worked before, but it doesn't now.

My next issue is that Yahoo seems to not give much information back so the workflow asks to confirm Name User name (Login name) and email address. Because it doesn't know the email address, it can't do a match on and existing user name and login name so it auto-generates both as it should.

This only works if they put in an email address that's not already in the system. If it's in the system, it can't recognise it and won't associate it even if you put in the correct name and username/login name on the form with the email address.

Is this just a limitation (or maybe by design because there's no way to verify the email address belongs to the social media account? If it's known, it'd be worth having this noted ... that is, if you have registered your email address previously under another account please contact us to delete this so you can re-register' ... or something.

Anyway, not obvious.

Windows Live

I worked this out. Only works if the server URL is the page the request is coming from. In our case, the login box is not on the homepage.

In your document it says:
In the Web 'API Settings' and fill out the Redirect URI's for your website. This should be your full Homepage URL with index.php at the end. Add the following URL (replacing yourdomain.com with your actual domain name). Redirect URIs are restricted to https and if you have other ways to access your domain (like www and non-www), add them all here, like
yourdomain.com/index.php
www.yourdomain.com/index.php

It's not clear that other ways also means other embed pages, so maybe adding an example of /index.php/SomeOtherPage would help here for what it's worth :)

Thanks.


Andrew
The topic has been locked.
Support Specialist
For Yahoo, with an existing account, there should be a "Login" side to the registration page as well. If not, you can enable that in the JFBConnect -> Configuration area. When enabled, then there will be a registration form for new users and a login form for existing users to connect their account.

Regarding Windows Live, that sounds like a change in how their app setup works. Generally, they just need the home page because JFBConnect's login / authentication works from /index.php?option=com_jfbconnect.....

My guess is that it's failing for you because of some sort of SEF on your site, but I could be wrong. You really shouldn't need to enter all the possible pages a user can login *from* it's really only for the pages that they go to after login, which is the authentication url above. Either way, I'm glad you got it going, but still a bit curious :)

Thanks,
Alex
The topic has been locked.
Active Subscriptions:

None
HI Alex,

Let me explain again: Firstly Yahoo.

This works:

Login with facebook (or other method that give an email address), while you are logged in associate yahoo with that account. Next time you login, yahoo works on it own.

OR

Login with Yahoo where you haven't previously created an account and therefore the account does not exist in the system. You get thrown back to the Name / Username / Email Address / Confirm Email Address screen but it will let you create the account and associates the Yahoo account with it. Next time Yahoo sign in will work fine.

However, this does not work:

Login using one method and create an account either automatically or manually through the workflow if no email is passed to the system by the provider. Then log out. Next time try to login with Yahoo instead (same email address) and you get the Name / Username / Email Address / Confirm Email Address. Even if you use the same Name / Username / Email Address it will not associate the Yahoo account with an existing Joomla account.

Maybe this is by design because you cannot be sure the person with the Yahoo account really owns the email address already registered and since they aren't logged in you have not way to guarantee it. Or maybe this is a new thing Yahoo not passing the email address across. Anyway, it definitely doesn't work if Yahoo is used AND an existing account exists in the system AND they are not already logged in.

As for Microsoft Live, I'm not sure ... it's seems a bit clumsy to have to specify every URL the calls will be made from but this is certainly the thing that made it work. We do have search engine friendly URLs turned on in Joomla ... seems to be a default setting as I haven't changed it as far as I can recall.

Thanks.

Cheers,


Andrew
The topic has been locked.
Support Specialist
Sorry for being dense.. to make sure:

1) User logs in with Facebook or username/password (Joomla creds)
2) User is logged in and clicks the Sign in with Yahoo button
3) Their Yahoo account is now connected to the existing account from step 1
4) User logs out
5) User clicks Sing in with Yahoo button again
6) User is brought to the registration page as if they don't have an account.

If so, that's definitely incorrect. The linking step of #3 should associate the Yahoo account ID (even without email address) to the Joomla user ID and that should be used going forward.

However, if doing:
1) User logs in with Facebook or username/password (Joomla creds)
2) User logs out
3) User clicks Sing in with Yahoo button again
4) User is brought to the registration page as if they don't have an account.
That is correct. On this page, the user must use the "Login" side of the registration page (must be enabled in the JFBConnect -> Configuration area). If they try to register a new account with an existing email, JFBConnect will prevent that because yes, we have no way to guarantee its the real user and would be an easy way to hijack accounts.

I hope that helps explain further!
The topic has been locked.
Active Subscriptions:

None
If you associate the Yahoo account while you are still logged in, next time you click Yahoo it will log you in.

If you try to assign the Yahoo account while logged out, you get the second workflow you outline where you can't associate to the existing email address and account which is as intended.

If you've never logged in with anything else, and you use Yahoo, it will let you create an account as your email address doesn't yet exist.

This all seems to be as intended, but it's not obvious ...

Thanks for clarifying.

Cheers,


Andrew
The topic has been locked.
Support Specialist
I understand how that can be confusing. Again though, if you have the Login and Register view setup, it should show both a registration and login section allowing the user to associate to an existing account. If only the registration area is shown, then you can use the language strings of JFBConnect to make it clear that if they already have an account, they should login with that first to associate to a new account.

I hope that helps clarify things further and hopefully you're all set now.

Thanks,
Alex
The topic has been locked.