Bug 32718 - Calling without number returns org.freedesktop.Telepathy.Error.NotImplemented
Summary: Calling without number returns org.freedesktop.Telepathy.Error.NotImplemented
Status: VERIFIED FIXED
Alias: None
Product: Telepathy
Classification: Unclassified
Component: ring (show other bugs)
Version: git master
Hardware: Other All
: medium minor
Assignee: Pekka Pessi
QA Contact: Telepathy bugs list
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2010-12-29 04:48 UTC by Andres Wigell
Modified: 2011-01-17 02:48 UTC (History)
0 users

See Also:
i915 platform:
i915 features:


Attachments

Description Andres Wigell 2010-12-29 04:48:00 UTC
Calling without number should return 

org.freedesktop.Telepathy.Error.InvalidHandle

currently it returns 

org.freedesktop.Telepathy.Error.NotImplemented
Comment 1 Simon McVittie 2011-01-03 04:23:55 UTC
When you say "without number", what exact channel request are you making? In particular, what values (if any) do you provide for TargetID, TargetHandle, TargetHandleType?

I think it's reasonable for some combinations to raise NotImplemented: for instance, it'd be reasonable to believe that TargetHandleType=None (or omitted) is an attempt to "call nobody", which is an unimplemented class of channel (we only support calling contacts), hence NotImplemented is right.

InvalidHandle would be right for a request for { ChannelType=StreamedMedia, TargetHandleType=CONTACT, TargetID="" }, though.
Comment 2 Andres Wigell 2011-01-03 22:49:03 UTC
(In reply to comment #1)
> When you say "without number", what exact channel request are you making? In
> particular, what values (if any) do you provide for TargetID, TargetHandle,
> TargetHandleType?
> 
> I think it's reasonable for some combinations to raise NotImplemented: for
> instance, it'd be reasonable to believe that TargetHandleType=None (or omitted)
> is an attempt to "call nobody", which is an unimplemented class of channel (we
> only support calling contacts), hence NotImplemented is right.
> 
> InvalidHandle would be right for a request for { ChannelType=StreamedMedia,
> TargetHandleType=CONTACT, TargetID="" }, though.


I'm providing empty string so the parameters look like this. So all other parameters are correct apart from the TargetID.

 request = {
            ofTChannel + ".ChannelType" : ofTChTStreamedMedia,
            ofTChannel + ".TargetHandleType" : U(HANDLE_TYPE_CONTACT),
            ofTChannel + ".TargetID" : "",
            ofTChTStreamedMedia + ".InitialAudio" : True,
            }
Comment 3 Pekka Pessi 2011-01-04 02:46:37 UTC
What this is supposed to achieve? InitialAudio is TRUE, so it is supposed to make a call immediately... to where?
Comment 4 Andres Wigell 2011-01-04 02:58:23 UTC
The interface specification states this for error codes. So according to that we should get Invalid Handle. I know, it's not really a big issue, but the application using the interface might expect different behaviour.

# Not Implemented
The channel request was one that can never succeed, such as requesting an unsupported channel type, or requesting a channel type which this connection manager does not support with the given target handle type.

# Invalid Handle
An invalid handle was requested as the value of a property whose value is a handle (like Channel.TargetHandle), or a syntactically invalid identifier was requested as the value of a property whose value is the string corresponding to a handle (like Channel.TargetID).
Comment 5 Simon McVittie 2011-01-04 03:04:26 UTC
With my telepathy-spec editor hat on, I think Andres is right to expect InvalidHandle here, although it's not very important.
Comment 6 Pekka Pessi 2011-01-04 11:26:48 UTC
OK, now I dig it. InvalidHandle you get. Fix is in git / 2.1.1.


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.