当前位置: 首页 > 软件库 > 程序开发 > 网络工具包 >

JabberNet

.NET的XMPP开发包
授权协议 LGPL
开发语言 C# .NET
所属分类 程序开发、 网络工具包
软件类型 开源软件
地区 不详
投 递 者 唐啸
操作系统 Windows
开源组织
适用人群 未知
 软件概览

JabberNet 是一个 .NET 的 Jabber (XMPP)协议的客户端开发包,示例代码:

using System;
using System.Threading;

using jabber.client;

namespace SendMessage
{
    class Program
    {
        // we will wait on this event until we're done sending
        static ManualResetEvent done = new ManualResetEvent(false);
        // if true, output protocol trace to stdout
        const bool VERBOSE = true;
        const string TARGET = "otheruser@example.com";

        static void Main(string[] args)
        {
            JabberClient j = new JabberClient();
            // what user/pass to log in as
            j.User = "someuser";
            j.Server = "example.com";  // use gmail.com for GoogleTalk
            j.Password = "somepassword";

            // don't do extra stuff, please.
            j.AutoPresence = false;
            j.AutoRoster = false;
            j.AutoReconnect = -1;

            // listen for errors.  Always do this!
            j.OnError += new bedrock.ExceptionHandler(j_OnError);

            // what to do when login completes
            j.OnAuthenticate += new bedrock.ObjectHandler(j_OnAuthenticate);

            // listen for XMPP wire protocol
            if (VERBOSE)
            {
                j.OnReadText += new bedrock.TextHandler(j_OnReadText);
                j.OnWriteText += new bedrock.TextHandler(j_OnWriteText);
            }
            
            // Set everything in motion
            j.Connect();

            // wait until sending a message is complete
            done.WaitOne();

            // logout cleanly
            j.Close();
        }

        static void j_OnWriteText(object sender, string txt)
        {
            if (txt == " ") return;  // ignore keep-alive spaces
            Console.WriteLine("SEND: " + txt);
        }

        static void j_OnReadText(object sender, string txt)
        {
            if (txt == " ") return;  // ignore keep-alive spaces
            Console.WriteLine("RECV: " + txt);
        }

        static void j_OnAuthenticate(object sender)
        {
            // Sender is always the JabberClient.
            JabberClient j = (JabberClient)sender;
            j.Message(TARGET, "test");

            // Finished sending.  Shut down.
            done.Set();
        }

        static void j_OnError(object sender, Exception ex)
        {
            // There was an error!
            Console.WriteLine("Error: " + ex.ToString());

            // Shut down.
            done.Set();
        }
    }
}
  • 没代码我说个J8: public void Presence(User.EStatus status) { string statustxt = ""; //说明文字。比如,离开的原因:外出吃饭 string show = ""; //真正起作用的命令。 switch (status) { case User.EStatus.OnLin

  • 修改昵称,这么简单的功能,在jabberNet里怎么实现? 翻遍了jabberNet里的代码,jabber.client.RosterManager也,JabberClient也,似乎都没有现成的方法。 经过多次试验,发现可以这样写: public void SetNickname(JID jid,string nickname) { str

 相关资料
  • go-xmpp 是另外一个 XMPP 协议的 GO 语言实现。

  • MatriX 是 eXtensible Messaging and Presence Protocol (XMPP, 也叫 Jabber) 的开发包,采用 C# 编写,可用于 .NET 平台和 Sliverlight 技术。MatriX 提供完全的 .NET、.NET Compact 框架和 Sliverlight 支持。 示例代码:  // basic send message examplev

  • cl-xmpp 是 Common Lisp 实现的一个 XMPP 协议支持的开发包。

  • xmpp-go 是 Go 语言实现的兼容 XMPP 协议的客户端和服务器端。

  • 问题内容: 我将要开发一个具有近实时聊天功能的网站。我知道可以使用xmpp或websocket协议来实现。我也知道xmpp协议是在1999年开发的,我想它应该已经很成熟了。另一方面,websocket协议是在2011年开发的。 如果xmpp能够很好地处理实时对话,那么对websocket的需求是什么? 两种协议之间的主要区别是什么? 我什么时候应该选择其中一个呢? 问题答案: 简短的答案是“两者”

  • nativescript-xmpp-client Installation tns install nativescript-xmpp-client Usage import {Client, IQ} from "nativescript-xmpp-client";.... const client = new Client({ websocket: {url: 'ws://127.0

  • XMPP Echo Bot Do you know that situation, you really really need an XMPP echo bot, but you don’t have access to high-level tools like Python to write one? All you have is openssl, bash, dig, stdbuf an

  • xmpp-over-websocket 的目标是提供一个实时信息基于 xmpp 和 websocket pull 或者 poll 的解决方案。 Getting Started Clone git 库的子模块,运行通讯脚本,然后每个子模块会生成一个发布包。 步骤:1) 部署发布包; 2) 开始 ws-xmpp-master; 2) 打开 Openfire 服务器;3) 打开 ws-xmpp-robo