本文整理匯總了C#中agsXMPP.XmppClientConnection.Close方法的典型用法代碼示例。如果您正苦於以下問題:C# XmppClientConnection.Close方法的具體用法?C# XmppClientConnection.Close怎麽用?C# XmppClientConnection.Close使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類agsXMPP.XmppClientConnection
的用法示例。
在下文中一共展示了XmppClientConnection.Close方法的6個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的C#代碼示例。
示例1: XmppSendTest
public void XmppSendTest()
{
var xmpp = new XmppClientConnection(domain);
xmpp.ConnectServer = connectserver;
xmpp.Open(username, password);
xmpp.OnError += new ErrorHandler(delegate { logerror(); });
xmpp.OnLogin += delegate(object o) { xmpp.Send(new Message(new Jid(recipient), MessageType.chat, "james")); };
while (!xmpp.Authenticated)
System.Threading.Thread.Sleep(500);
System.Threading.Thread.Sleep(1000);
xmpp.Send(new Message(new Jid(recipient), MessageType.chat, "james"));
xmpp.Close();
}
示例2: AuthenticateAsync
public async Task<Session.IInfo> AuthenticateAsync(string connectServer, string authenticationToken)
{
XmppClientConnection connection = new XmppClientConnection();
connection.Server = Guest.Server;
connection.Username = Guest.User;
connection.Password = GuestPassword;
connection.AutoResolveConnectServer = false;
connection.ForceStartTls = false;
connection.ConnectServer = connectServer; // values.HarmonyHubAddress;
connection.AutoAgents = false;
connection.AutoPresence = false;
connection.AutoRoster = false;
connection.OnSaslStart += OnSaslStart;
connection.OnSaslEnd += OnSaslEnd;
connection.OnXmppConnectionStateChanged += (s, e) => Instrumentation.Xmpp.ConnectionStateChanged(e);
connection.OnReadXml += (s, e) => Instrumentation.Xmpp.Receive(e);
connection.OnWriteXml += (s, e) => Instrumentation.Xmpp.Transmit(e);
connection.OnError += (s, e) => Instrumentation.Xmpp.Error(e);
connection.OnSocketError += (s, e) => Instrumentation.Xmpp.SocketError(e);
Task connected = Observable.FromEvent<agsXMPP.ObjectHandler, Unit>(handler => s => handler(Unit.Default), handler => connection.OnLogin += handler, handler => connection.OnLogin -= handler)
.Timeout(TimeSpan.FromSeconds(30))
.Take(1)
.ToTask();
connection.Open();
await connected;
Task<Session.IInfo> session =
Observable.FromEvent<agsXMPP.protocol.client.IqHandler, agsXMPP.protocol.client.IQEventArgs>(handler => (s, e) => handler(e), handler => connection.OnIq += handler, handler => connection.OnIq -= handler)
.Do(args => Instrumentation.Xmpp.IqReceived(args.IQ.From, args.IQ.To, args.IQ.Id, args.IQ.Error, args.IQ.Type, args.IQ.Value))
.Do(args => args.Handled = true)
.Select(args => args.IQ)
.SessionResponses()
.Timeout(TimeSpan.FromSeconds(10))
.Take(1)
.ToTask();
connection.Send(Builder.ConstructSessionInfoRequest(authenticationToken));
Session.IInfo sessionInfo = await session;
connection.Close();
return sessionInfo;
}
示例3: Main
static void Main(string[] args)
{
const string JID_SENDER = "[email protected]";
const string PASSWORD = "secret"; // password of the JIS_SENDER account
const string JID_RECEIVER = "[email protected]";
Jid jidSender = new Jid(JID_SENDER);
XmppClientConnection xmpp = new XmppClientConnection(jidSender.Server);
xmpp.Open(jidSender.User, PASSWORD);
xmpp.OnLogin += delegate(object o) { xmpp.Send(new Message(new Jid(JID_RECEIVER), MessageType.chat, "Hello, how are you?")); };
Console.WriteLine("Wait until you get the message and press a key to continue");
Console.ReadLine();
xmpp.Close();
}
示例4: Run
/// <summary>
/// Attempt to send out the results via XMPP.
/// </summary>
/// <param name="result"></param>
public void Run(IIntegrationResult result)
{
this.result = result;
try
{
// Initialise the client and login
hasError = false;
messagesSent = null;
client = new XmppClientConnection();
client.Server = server;
client.ConnectServer = connectServer;
client.AutoRoster = false;
client.Resource = null;
client.OnLogin += new ObjectHandler(xmppClient_OnLogin);
client.OnError += new ErrorHandler(xmppClient_OnError);
client.OnAuthError += new XmppElementHandler(client_OnAuthError);
Log.Debug("Connecting to XMPP server: " + server);
client.Open(userName, password);
// Wait for the messages to be sent
bool continueWaiting = true;
DateTime startWait = DateTime.Now;
while (continueWaiting)
{
Thread.Sleep(100);
if (hasError)
{
continueWaiting = false;
}
else if (client.Authenticated)
{
if (messagesSent.HasValue)
{
TimeSpan timeWaited = (DateTime.Now - messagesSent.Value);
continueWaiting = (timeWaited.TotalSeconds < sendPeriod);
}
}
// Time-out after the specified time
if (continueWaiting)
{
TimeSpan timeWaited = (DateTime.Now - startWait);
if (timeWaited.TotalSeconds > timeOutPeriod)
{
continueWaiting = false;
Log.Warning("Time-out period has expired - send was not successful");
}
}
}
// Clean up
client.Close();
client = null;
}
catch (Exception error)
{
Log.Error(error);
result.ExceptionResult = error;
result.Status = ThoughtWorks.CruiseControl.Remote.IntegrationStatus.Exception;
}
}
示例5: Main
static void Main(string[] args)
{
XmppClientConnection xmppCon = new XmppClientConnection();
Console.Title = "Console Client";
// read the jid from the console
PrintHelp("Enter you Jid ([email protected]): ");
Jid jid = new Jid(Console.ReadLine());
PrintHelp(String.Format("Enter password for '{0}': ", jid.ToString()));
xmppCon.Password = Console.ReadLine();
xmppCon.Username = jid.User;
xmppCon.Server = jid.Server;
xmppCon.AutoAgents = false;
xmppCon.AutoPresence = true;
xmppCon.AutoRoster = true;
xmppCon.AutoResolveConnectServer = true;
// Connect to the server now
// !!! this is asynchronous !!!
try
{
xmppCon.OnRosterStart += new ObjectHandler(xmppCon_OnRosterStart);
xmppCon.OnRosterItem += new XmppClientConnection.RosterHandler(xmppCon_OnRosterItem);
xmppCon.OnRosterEnd += new ObjectHandler(xmppCon_OnRosterEnd);
xmppCon.OnPresence += new PresenceHandler(xmppCon_OnPresence);
xmppCon.OnMessage += new MessageHandler(xmppCon_OnMessage);
xmppCon.OnLogin += new ObjectHandler(xmppCon_OnLogin);
xmppCon.Open();
}
catch (Exception e)
{
Console.WriteLine(e.Message);
}
Wait("Login to server, please wait");
PrintCommands();
bool bQuit = false;
while (!bQuit)
{
string command = Console.ReadLine();
string[] commands = command.Split(' ');
switch (commands[0].ToLower())
{
case "help":
PrintCommands();
break;
case "quit":
bQuit = true;
break;
case "msg":
string msg = command.Substring(command.IndexOf(commands[2]));
xmppCon.Send(new Message(new Jid(commands[1]), MessageType.chat, msg));
break;
case "status":
switch (commands[1])
{
case "online":
xmppCon.Show = ShowType.NONE;
break;
case "away":
xmppCon.Show = ShowType.away;
break;
case "xa":
xmppCon.Show = ShowType.xa;
break;
case "chat":
xmppCon.Show = ShowType.chat;
break;
}
string status = command.Substring(command.IndexOf(commands[2]));
xmppCon.Status = status;
xmppCon.SendMyPresence();
break;
}
}
// close connection
xmppCon.Close();
}
示例6: Main
static void Main(string[] args) {
Console.Title = "XMPPduino";
xmppCon = new XmppClientConnection();
System.ComponentModel.IContainer components = new System.ComponentModel.Container();
serialPort = new System.IO.Ports.SerialPort(components);
serialPort.PortName = Config.COM_PORT;
serialPort.BaudRate = Config.Baud_Rate;
xmppCon = new XmppClientConnection();
xmppCon.Username = Config.Username;
xmppCon.Password = Config.Password;
xmppCon.SocketConnectionType = agsXMPP.net.SocketConnectionType.Direct;
xmppCon.ConnectServer = "talk.google.com";
xmppCon.Port = 5222;
xmppCon.UseStartTLS = true;
xmppCon.AutoResolveConnectServer = false;
xmppCon.Show = ShowType.chat;
xmppCon.Server = Config.Server;
xmppCon.AutoAgents = false;
xmppCon.AutoPresence = true;
xmppCon.AutoRoster = true;
try {
xmppCon.OnRosterStart += new ObjectHandler(xmppCon_OnRosterStart);
xmppCon.OnRosterItem += new XmppClientConnection.RosterHandler(xmppCon_OnRosterItem);
xmppCon.OnRosterEnd += new ObjectHandler(xmppCon_OnRosterEnd);
xmppCon.OnPresence += new PresenceHandler(xmppCon_OnPresence);
xmppCon.OnMessage += new MessageHandler(xmppCon_OnMessage);
xmppCon.OnLogin += new ObjectHandler(xmppCon_OnLogin);
xmppCon.Open();
}
catch (Exception e) {
Console.WriteLine(e.Message);
}
Wait("Login to server, please wait");
bool bQuit = false;
while (!bQuit) {
string command = Console.ReadLine();
string[] commands = command.Split(' ');
switch (commands[0].ToLower()) {
case "quit":
bQuit = true;
break;
case "msg":
string msg = command.Substring(command.IndexOf(commands[2]));
xmppCon.Send(new Message(new Jid(commands[1]), MessageType.chat, msg));
break;
case "status":
switch (commands[1]) {
case "online":
xmppCon.Show = ShowType.NONE;
break;
case "away":
xmppCon.Show = ShowType.away;
break;
case "xa":
xmppCon.Show = ShowType.xa;
break;
case "chat":
xmppCon.Show = ShowType.chat;
break;
}
string status = command.Substring(command.IndexOf(commands[2]));
xmppCon.Status = status;
xmppCon.SendMyPresence();
break;
}
}
xmppCon.Close();
}