bettybop68 / android-rcs-ims-stack

Automatically exported from code.google.com/p/android-rcs-ims-stack
0 stars 1 forks source link

FT HTTP capabilities of remote not reflected correctly #188

Closed GoogleCodeExporter closed 8 years ago

GoogleCodeExporter commented 8 years ago
Contactsmanager.setContactInfo() uses 
RcsSettings.getInstance().isFileTransferStoreForwardSupported() 
(==ftStAndFwEnabled provisioning setting) for HTTP based file transfer key 
KEY_CAPABILITY_FILE_TRANSFER_HTTP. For our understanding ftStAndFwEnabled is 
only relevant for MSRP based file transfer to indicate that FT S&F based on 
MSRP is supported on terminating side.

The following change proposal should refelct the above:
final boolean isFileTransferHttpAllowed = (isRegistered || 
(RcsSettings.getInstance().isImAlwaysOn() && newInfo.isRcsContact()));
  values.put(RichAddressBookData.KEY_CAPABILITY_FILE_TRANSFER_HTTP, Boolean.toString(newCapabilities.isFileTransferHttpSupported() && isFileTransferHttpAllowed));

Original issue reported on code.google.com by RCSe...@googlemail.com on 18 Dec 2013 at 12:30

GoogleCodeExporter commented 8 years ago
You're right, FT S&F capability is only relevant for FToMSRP.
But why add isImAlwaysOn ? Even if FToHTTP is technically based on a chat 
message, for me, capabilities are independent ? 
I would just keep:
values.put(RichAddressBookData.KEY_CAPABILITY_FILE_TRANSFER_HTTP, 
Boolean.toString((newCapabilities.isFileTransferHttpSupported() && 
isRegistered))

Original comment by benoit.j...@gmail.com on 20 Dec 2013 at 2:57

GoogleCodeExporter commented 8 years ago
After read again the Blackbird guidelines, I found: 
ID_4_11 Clarification on FT feature tags
File Transfer Store and Forward 
+g.3gpp.iari-ref="urn%3Aurn-7%3A3gpp-application.ims.iari.rcs.ftstandfw"
This tag is only relevant in scope of File Transfer via MSRP service as File 
Transfer via HTTP always provides store and forward functionality

So if I apply this directly, I should just keep
values.put(RichAddressBookData.KEY_CAPABILITY_FILE_TRANSFER_HTTP, 
Boolean.toString(newCapabilities.isFileTransferHttpSupported()))
is that it makes sense ?

Original comment by benoit.j...@gmail.com on 20 Dec 2013 at 4:20

GoogleCodeExporter commented 8 years ago
Our thinking was that RichAddressBookData.KEY_CAPABILITY_FILE_TRANSFER_HTTP 
reflects whether a file could be send to the according remote contact via HTTP. 
This depends on the capability of the remote contact 
(newCapabilities.isFileTransferHttpSupported()) and on the local feature 
set/local capabilities (isFileTransferHttpAllowed). That's why I think both 
criteria are needed.

Original comment by RCSe...@googlemail.com on 8 Jan 2014 at 7:00

GoogleCodeExporter commented 8 years ago

Original comment by benoit.j...@gmail.com on 27 Jan 2014 at 4:33

GoogleCodeExporter commented 8 years ago
Fixed with revision r490

Original comment by lemordan...@gmail.com on 18 Mar 2014 at 7:25