Ура... нашел нужный запрос для facebook!!!
вот корректный, в настройках по умолчанию старый, который дает access_token не
json как все, а в виде параметра url.
https://graph.facebook.com/v2.3/oauth/access_token; - это вернет access_token
в json
Ok. сейчас этим и занимаюсь. :)
инфы готовой много, нужно проверять и хочу собрать в короткий формат.
но в целом вот сложности:
vk.com возвращает данные в виде:
response: [ { uid: 205387401 , first_name: 'Tom' , last_name:
'Cruise' } ]
! нужно из ответа убрать убрать первых 11 символов и последний.
возможно найду вариант в другом формате получить, например xls.
mail.ru и (одноклассники) для запроса данных просит sing
который нужно ГЕНЕРИРОВАТЬ
sign=hex_md5('app_id={client_id}method=users.getInfosecure=1session_key={access_token}{secret_key}')
1. Чуть позже скину свои настройки для сетей (facebook, yandex, google).
2. С vk.com и mail.ru скорее всего через костыль, вряд ли есть смысл под них
что-то делать в OM.
возможно эти системы когда-нибудь сделают нормальный ответ и их можно будет
прописать.
3. Доп. параметры, пол, день рождение, телефон и прочее, что возвращают сети
прошу добавить их в бушующих версиях.
+ или какая-нибудь копка в профиле заполнить данные из соц.сети (если вход
через сеть).
---
С уважением, Алексей Терехов.
+7 926 076 15 20
Среда, 8 апреля 2015, 16:38 +06:00 от Maxim Solodovnik solomax...@gmail.com:
ну Вы напишите какие поля какой провайдер предоставляет и как они
называются (если это возможно) и я поправлю чтобы нормально работало
2015-04-08 15:05 GMT+06:00 Alexey Terekhov deadl...@mail.ru :
Спасибо за ответы!!!
Получается так:
1. OAutch - в целом работает хорошо, однако желательно в будущем улучшить
обработчик ошибок.
internal error поменять, на что-нибудь более понятное.
2. Для кривых соц.сетей использовать внешний обработчик который вернет
системе поля: login,email,fist_name,last_name.
* было бы неплохо расширить список полей обрабатываемых от OAuth2 (тел для
sms,дата рождения и т.п.)
3. Думаю для входа через OAutch 3.0.4 сегодня можно и нужно! прописать
префиксы сети к login
так как два одинаковых логин приведут к internal error.
а поле email делать пустым, это должно решить вопрос с входом из соц.сетей
но мы теряем связь с этими пользователями, нет возможности им написать на
email.
или попробовать добавить к email префикс - но такой адрес может не пройти
валидацию и привести к новым ошибкам.
! в 3.0.2 пользователь может менять в профиле emal адрес на любой
свободный.
+ думаю необходим flag в config разрешающий использовать одинаковые email
для разных типов входов
и идентифицировать их как разных пользователей в системе.
сопоставлять при авторизации e-mail с типом входа.
то есть, может быть N одинаковых e-mail для N разных типов входов - каждый
тип входа + email уникальный аккаунт.
+ в последствии реализовать в профиле управление входами, объединение
аккаунтов с различных входов.
Ушел дописывать свой костыль, думаю добавить вход через mail.ru.
если кому-нибудь интересе вход, еще через что-нибудь кроме:
yandex,google,facebook,vk.com,mail.ru - пишите.
так как мне этих 5 систем хватит.
По результату, думаю завтра, опишу свои настройки OAuth2 для нормальных
сетей и входы/обработка/выводы костыля для кривых
может кому-нибудь пригодится.
---
С уважением, Алексей Терехов.
+7 926 076 15 20
Среда, 8 апреля 2015, 11:52 +06:00 от Maxim Solodovnik
solomax...@gmail.com :
1) по поводу ошибки я думаю что вот это
https://issues.apache.org/jira/browse/OPENMEETINGS-1196 она
2) логин с одним мылом и разными провайдерами - хороший вопрос, надо
подумать
3) request_method может быть 0 == post и 1 == get. тут недоглядели, надо
было сохранять этот енум по именам
4) доп поля, сейчас не достаются, но это можно, patches are welcome :)
ну я так думаю что internal error надо починить к релизу 3.0.5 (будет
через
неделю примерно) а остальное подумать и сделать к следующей версии
помощь в тестировании будет очень кстати :)
2015-04-08 7:13 GMT+06:00 Alexey Terekhov deadl...@mail.ru :
Доброй ночи.
в OM 3.0.4
google работает прописал ключи и в путь...
yandex нужно изменить 'email_param_name' и 'login_param_name' с
'default_email' на 'login'. (так как в ответе от яндекса нет
default_email).
facebook, vk.com решил через костыль. :)
в admin/oauth2
request_key_url=http://localhost/crutch.php
request_token_attributes=code={$code}client_id={$client_id}client_secret={$client_secret}redirect_uri={$redirect_uri}
request_token_url=
http://localhost/crutch.php?access_token={$access_token }
OM обращается к моему скрипту php, скрипт
на запрос 1 POST. возвращает access_token в JSON формате
на запрос 2 GET. возвращает login,email,firs_name,last_name в JSON
формате
задача скрипта получить данные от соц. сетей и вернуть их в нужном
формате в OpenMeeting.
Думаю это важный BUG или ВОПРОС:
по Русски:
если я зарегистрировался