C# 클래스 MumbleSharp.BasicMumbleProtocol

A basic mumble protocol which handles events from the server - override the individual handler methods to replace/extend the default behaviour
상속: IMumbleProtocol
파일 보기 프로젝트 열기: martindevans/MumbleSharp

보호된 프로퍼티들

프로퍼티 타입 설명
ChannelDictionary Channel>.ConcurrentDictionary
UserDictionary User>.ConcurrentDictionary

공개 메소드들

메소드 설명
BasicMumbleProtocol ( ) : System
ChannelRemove ( ChannelRemove channelRemove ) : void

Server has removed a channel

ChannelState ( ChannelState channelState ) : void

Server has changed some detail of a channel

Close ( ) : void
CodecVersion ( CodecVersion codecVersion ) : void
ContextAction ( ContextAction contextAction ) : void
ContextActionModify ( MumbleProto.ContextActionModify contextActionModify ) : void
EncodedVoice ( byte data, uint userId, long sequence, IVoiceCodec codec, SpeechTarget target ) : void

Received a voice packet from the server

GetCodec ( uint session, SpeechCodecs codec ) : IVoiceCodec

Get a voice decoder for the specified user/codec combination

Initialise ( MumbleConnection connection ) : void

Associates this protocol with an opening mumble connection

PermissionQuery ( PermissionQuery permissionQuery ) : void
Ping ( Ping ping ) : void

Received a ping over the TCP connection

SelectCertificate ( object sender, string targetHost, X509CertificateCollection localCertificates, X509Certificate remoteCertificate, string acceptableIssuers ) : X509Certificate
SendVoice ( ArraySegment pcm, SpeechTarget target, uint targetId ) : void
SendVoiceStop ( ) : void
ServerConfig ( ServerConfig serverConfig ) : void

Some detail of the server configuration has changed

ServerSync ( ServerSync serverSync ) : void

Initial connection to the server

SuggestConfig ( SuggestConfig config ) : void
TextMessage ( TextMessage textMessage ) : void

Received a text message from the server

UdpPing ( byte packet ) : void

Received a UDP ping from the server

UserList ( UserList userList ) : void
UserRemove ( UserRemove userRemove ) : void

A user has been removed from the server (left, kicked or banned)

UserState ( UserState userState ) : void

Server has changed some detail of a user

ValidateCertificate ( object sender, X509Certificate certificate, X509Chain chain, SslPolicyErrors errors ) : bool

Validate the certificate the server sends for itself. By default this will acept *all* certificates

Version ( MumbleProto.Version version ) : void

Server has sent a version update

보호된 메소드들

메소드 설명
ChannelJoined ( MumbleSharp.Model.Channel channel ) : void
ChannelLeft ( MumbleSharp.Model.Channel channel ) : void
ChannelMessageReceived ( MumbleSharp.Model.ChannelMessage message ) : void
PersonalMessageReceived ( MumbleSharp.Model.PersonalMessage message ) : void
UserJoined ( MumbleSharp.Model.User user ) : void
UserLeft ( MumbleSharp.Model.User user ) : void

비공개 메소드들

메소드 설명
EncodingThreadEntry ( ) : void

메소드 상세

BasicMumbleProtocol() 공개 메소드

public BasicMumbleProtocol ( ) : System
리턴 System

ChannelJoined() 보호된 메소드

protected ChannelJoined ( MumbleSharp.Model.Channel channel ) : void
channel MumbleSharp.Model.Channel
리턴 void

ChannelLeft() 보호된 메소드

protected ChannelLeft ( MumbleSharp.Model.Channel channel ) : void
channel MumbleSharp.Model.Channel
리턴 void

ChannelMessageReceived() 보호된 메소드

protected ChannelMessageReceived ( MumbleSharp.Model.ChannelMessage message ) : void
message MumbleSharp.Model.ChannelMessage
리턴 void

ChannelRemove() 공개 메소드

Server has removed a channel
public ChannelRemove ( ChannelRemove channelRemove ) : void
channelRemove ChannelRemove
리턴 void

ChannelState() 공개 메소드

Server has changed some detail of a channel
public ChannelState ( ChannelState channelState ) : void
channelState ChannelState
리턴 void

Close() 공개 메소드

public Close ( ) : void
리턴 void

CodecVersion() 공개 메소드

public CodecVersion ( CodecVersion codecVersion ) : void
codecVersion CodecVersion
리턴 void

ContextAction() 공개 메소드

public ContextAction ( ContextAction contextAction ) : void
contextAction ContextAction
리턴 void

ContextActionModify() 공개 메소드

public ContextActionModify ( MumbleProto.ContextActionModify contextActionModify ) : void
contextActionModify MumbleProto.ContextActionModify
리턴 void

EncodedVoice() 공개 메소드

Received a voice packet from the server
public EncodedVoice ( byte data, uint userId, long sequence, IVoiceCodec codec, SpeechTarget target ) : void
data byte
userId uint
sequence long
codec IVoiceCodec
target SpeechTarget
리턴 void

GetCodec() 공개 메소드

Get a voice decoder for the specified user/codec combination
public GetCodec ( uint session, SpeechCodecs codec ) : IVoiceCodec
session uint
codec SpeechCodecs
리턴 IVoiceCodec

Initialise() 공개 메소드

Associates this protocol with an opening mumble connection
public Initialise ( MumbleConnection connection ) : void
connection MumbleConnection
리턴 void

PermissionQuery() 공개 메소드

public PermissionQuery ( PermissionQuery permissionQuery ) : void
permissionQuery PermissionQuery
리턴 void

PersonalMessageReceived() 보호된 메소드

protected PersonalMessageReceived ( MumbleSharp.Model.PersonalMessage message ) : void
message MumbleSharp.Model.PersonalMessage
리턴 void

Ping() 공개 메소드

Received a ping over the TCP connection
public Ping ( Ping ping ) : void
ping Ping
리턴 void

SelectCertificate() 공개 메소드

public SelectCertificate ( object sender, string targetHost, X509CertificateCollection localCertificates, X509Certificate remoteCertificate, string acceptableIssuers ) : X509Certificate
sender object
targetHost string
localCertificates System.Security.Cryptography.X509Certificates.X509CertificateCollection
remoteCertificate System.Security.Cryptography.X509Certificates.X509Certificate
acceptableIssuers string
리턴 System.Security.Cryptography.X509Certificates.X509Certificate

SendVoice() 공개 메소드

public SendVoice ( ArraySegment pcm, SpeechTarget target, uint targetId ) : void
pcm ArraySegment
target SpeechTarget
targetId uint
리턴 void

SendVoiceStop() 공개 메소드

public SendVoiceStop ( ) : void
리턴 void

ServerConfig() 공개 메소드

Some detail of the server configuration has changed
public ServerConfig ( ServerConfig serverConfig ) : void
serverConfig ServerConfig
리턴 void

ServerSync() 공개 메소드

Initial connection to the server
public ServerSync ( ServerSync serverSync ) : void
serverSync ServerSync
리턴 void

SuggestConfig() 공개 메소드

public SuggestConfig ( SuggestConfig config ) : void
config SuggestConfig
리턴 void

TextMessage() 공개 메소드

Received a text message from the server
public TextMessage ( TextMessage textMessage ) : void
textMessage TextMessage
리턴 void

UdpPing() 공개 메소드

Received a UDP ping from the server
public UdpPing ( byte packet ) : void
packet byte
리턴 void

UserJoined() 보호된 메소드

protected UserJoined ( MumbleSharp.Model.User user ) : void
user MumbleSharp.Model.User
리턴 void

UserLeft() 보호된 메소드

protected UserLeft ( MumbleSharp.Model.User user ) : void
user MumbleSharp.Model.User
리턴 void

UserList() 공개 메소드

public UserList ( UserList userList ) : void
userList UserList
리턴 void

UserRemove() 공개 메소드

A user has been removed from the server (left, kicked or banned)
public UserRemove ( UserRemove userRemove ) : void
userRemove UserRemove
리턴 void

UserState() 공개 메소드

Server has changed some detail of a user
public UserState ( UserState userState ) : void
userState UserState
리턴 void

ValidateCertificate() 공개 메소드

Validate the certificate the server sends for itself. By default this will acept *all* certificates
public ValidateCertificate ( object sender, X509Certificate certificate, X509Chain chain, SslPolicyErrors errors ) : bool
sender object
certificate System.Security.Cryptography.X509Certificates.X509Certificate
chain System.Security.Cryptography.X509Certificates.X509Chain
errors SslPolicyErrors
리턴 bool

Version() 공개 메소드

Server has sent a version update
public Version ( MumbleProto.Version version ) : void
version MumbleProto.Version
리턴 void

프로퍼티 상세

ChannelDictionary 보호되어 있는 프로퍼티

protected ConcurrentDictionary ChannelDictionary
리턴 Channel>.ConcurrentDictionary

UserDictionary 보호되어 있는 프로퍼티

protected ConcurrentDictionary UserDictionary
리턴 User>.ConcurrentDictionary