All pastes #436641 Raw Edit

Something

public text v1 · immutable
·published 2007-04-12 17:16 UTC
rendered paste body
               public void SetCapabilities (ContactCapabilities caps)
                {

                        ChannelMediaCapability media_caps = 0;
                        bool has_media = false;

                        if ((caps & ContactCapabilities.Audio) == ContactCapabilities.Audio) {
                                media_caps = ChannelMediaCapability.Audio;
                                has_media = true;
                        }

                        if ((caps & ContactCapabilities.Video) == ContactCapabilities.Video) {
                                media_caps = media_caps | ChannelMediaCapability.Video;
                                has_media = true;
                        }

                        LocalCapabilityInfo[] info = new LocalCapabilityInfo[(has_media?2:1)];


                        if ((caps & ContactCapabilities.Text) == ContactCapabilities.Text) {
                                info[0].ChannelType = (string) org.freedesktop.Telepathy.ChannelType.Text;
                        }

                        if (has_media) {
                                info[1].ChannelType = (string) org.freedesktop.Telepathy.ChannelType.StreamedMedia;
                                info[1].TypeSpecificFlags = media_caps;
                        }

                        connection.TlpConnection.AdvertiseCapabilities (info, new string[0]);
                }