[Bug 24906] GSM-compatible conference calls

bugzilla-daemon at freedesktop.org bugzilla-daemon at freedesktop.org
Mon Nov 16 15:46:28 CET 2009


http://bugs.freedesktop.org/show_bug.cgi?id=24906





--- Comment #2 from Simon McVittie <simon.mcvittie at collabora.co.uk>  2009-11-16 06:46:25 PST ---
The Conference interface as it exists in Maemo 5, with some brief notes.

interface Conference requires StreamedMedia, Group, Hold

    Interface for creating centralized conference with streamed media
    channels.

    This interface assumes that you have a centralized conferencing
    server, either hosted locally or controlled within the network. The
    conference model assumes that you first set up connection to each
    conferencing party and then refer the parties to the conferencing
    server.

    [As far as I can remember, the rationale for using channel-specific
    handles is that in a GSM conference, you can't necessarily know who else
    is in the conference, so we need a way to represent "smcv, mikhailz,
    and two unknown others", say. This is achieved by giving smcv and
    mikhailz channel-specific handles with known owners, and giving the two
    others distinct CSHs with an unknown owner. -smcv]

    method GetMemberChannels () -> a(oa{uu}): Channels)
        List of member channels in the conference along with the optional
        mapping of channel-specific handles on the conference channel to
        the global handles on the added channels.

        [Redundant with MemberChannels, should be removed? -smcv]

        out a(oa{uu}) (Member_Channel[]): Channels

    readable property InitialMembers: ao
        List of initial member channels. This is used by requestron
        interface to initiate the conference channel.

        [This property is immutable. From context I assume you make a
        conference by calling CreateChannel({InitialMembers: [C1, C2], ...})
        -smcv]

    readable property CurrentMemberChannels: ao
        List of current member channels in the conference.

        [This is mutable. -smcv]

    readable property MemberChannels: a(oa{uu}) (Member_Channel[])
        List of member channels in the conference along with the optional
        mapping of channel-specific handles on the conference channel to
        the global handles on the added channels. The list includes both
        the current members as well as pending members.

        [This is mutable. -smcv]

    struct Member_Channel
        o: Channel
        a{uu} (Handle_Owner_Map): Owner_Map

    signal MemberChannelAdded (o, a{uu})
        o: Channel
        a{uu} (Handle_Owner_Map): Handles
            Mapping of channel-specific handles on the conference channel to
            the global handles handles on the newly added member channel.

    signal MemberChannelRemoved (o, u, u)
        [Is this only ever triggered by a channel closing, or can channels
        be detached from the conference? If so, how? -smcv]

        o: Channel
        u (Contact_Handle): Actor
        u (Channel_Group_Change_Reason): Reason

    method AddMemberChannels ( ao: Members ) -> aa{uu}: Handles
        Not implemented. Going away in next release.

        [How does MemberChannelAdded ever happen, then? -smcv]

        in ao: Members
            The other channels to add into this one.
        out aa{uu}: Handles
            Mapping of handles on the conference channel to the handles on the
            added channels.


-- 
Configure bugmail: http://bugs.freedesktop.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.



More information about the telepathy-bugs mailing list