Age | Commit message (Collapse) | Author |
|
|
|
|
|
|
|
When entering a group chat, skypeweb would explicity specify the user role
which could lead to a users role being downgraded from admin to user.
Removes explicit specifying the role so that what ever role we are given
is preserved.
|
|
|
|
|
|
|
|
That error is basically a 404 that you get when you set Accept to json
in the api.skype.com server.
The fix is to grab a new rps URL from skypeweb, it lives in the 'rps'
server (edge.skype.com) and has a slightly different path.
This also removes the 'skyper' md5-based login. It's still referenced in
the javascript of skypeweb, but probably unused because the endpoint is
the same we're hitting here and it's dead.
SOAP login still works with no issues, for both skype usernames and
microsoft accounts (it didn't work with skype usernames when i first
wrote this, but i remember at some point later throwing skype usernames
at the SOAP login and having it work)
|
|
|
|
|
|
|
|
Fix printf warnings
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
The skype web client is seems like sensitive to the quotes used in the xml content
if the single quotes are used the file transfer appears as an ordinal link with text around it.
|
|
Switched the file transfer from ssl to purple_http_request_set_contents_reader
|
|
initialization
|
|
|
|
|
|
|
|
|
|
|
|
this call)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
See https://github.com/EionRobb/skype4pidgin/pull/567#issuecomment-327419161
|
|
Remove the empty option from account settings
|
|
If "greeting" is not available in the invite notification that's received from
the server, use the "message" field from the object found in the "invites"
array.
|
|
Use the correct timestamp for image messages
|
|
Store the last message timestamp of group chats
|
|
|
|
Don't implement purple_conversation_write_system_message_ts in purplecompat.
|
|
When re-joining a previously joined chat, skypeweb requests the full message
history from the Skype server. This leads to re-displaying messages that are
already present in the conversation logs stored on the disk, if logging is
enabled.
This commit stores the last message timestamp of all group chats for which a
message has been received. Using the "global" last message timestamp is not
possible, since messages in a given group chat might have appeared between
leaving and re-joining.
|
|
The current implementation completely disregards the "composetime" member of
the received message if its type is RichText/UriObject or
RichText/Media_FlikMsg.
This results in the system messages with links to the images, as well as the
images themselves having the timestamp of the message's reception by the
client instead of the time when the message was actually sent.
|
|
|
|
|
|
These methods return better error messages, should be better at handling
reconnections (because only obvious auth errors are marked as such), and
will probably work with 2FA when combined with app passwords.
This adds two closely related methods that return skypetokens in a
fairly straightforward way.
- For skype usernames: api.skype.com/login/skypetoken
Takes an old style skype md5 hash.
- For microsoft accounts: api.skype.com/rps/skypetoken
Takes a ticket token (magic T) for "wl.skype.com"
The only complicated part is getting that token. One way could be to use
oauth with the code that is already implemented, but that's no fun.
Instead, this uses SOAP login (login.live.com/RST.srf) from the MSN era.
A little verbose but very reliable and simpler than scraping HTML.
And it gets decent error messages.
This is disabled by default, can be enabled with the "Use alternative
login method" setting.
Things left to be explored:
- It's technically possible to use SOAP login for skype usernames too,
but I got "Profile accrual is required" when I tried to request the
wl.skype.com scope. It works for other scopes.
- wl.skype.com and lw.skype.com are not the same thing, apparently.
- I'm not doing anything regarding the 24 hour expiration. I'm not sure
the term "refresh token" makes sense.
- This could be combined with oauth too, for fun.
|
|
to help with issue #553
|
|
... so that we can use the plugin on versions of Pidgin/libpurple that are older than the version of libpurple it was compiled against
|
|
|
|
Should be the last piece of the puzzle needed for purple3 support
See issue #538
|