如何使用DOTMSN开发简单的MSN机器人示例(附示例源码)

原创 2006年06月12日 21:05:00

更多开源和破解请访问:http://overred.cnblogs.com

本文继续上篇:使用第三方SDK开发咱博客园自己的MSN机器人(附示例源码)
由于这个需要把自己的password暴露给sp,所以就使用DOTMSN来避免这个问题!
下载地址:
http://www.xihsolutions.net/dotmsn/download.html

趁着五一休息就看着他的example做拉一个简单的msn机器人.
效果图:


他的功能弱弱的,但是基本实现拉简单的需求!
功能描述已经实现代码(简单描述):
1.登陆

messenger = new Messenger();
messenger.Connect(user.Text, pwd.Text);

2.显示您的好友(在线和离线等状态)

//显示所有在线人
        private void ShowAll()
        {
            
try
            {   
                messenger.SetStatus(MSNStatus.Online);
                AllListView.Clear();
                
foreach(Contact contact in messenger.GetListEnumerator(MSNList.ForwardList))
                {
                    ListViewItem item 
= new ListViewItem(contact.Name);
                    item.Tag          
= contact;
                    
if(contact.Status != MSNStatus.Offline)
                    {
                        AllListView.Items.Add((item
+"在线").Remove(0,14));
                    }
//                    if(contact.Status == MSNStatus.Busy)
//                    {
//                        AllListView.Items.Add(item+"忙碌");
//                    }
//                    if(contact.Status == MSNStatus.Away)
//                    {
//                        AllListView.Items.Add(item+"离开");
//                    }
                    else    
                    {
                        AllListView.Items.Add((item
+"离线").Remove(0,14));
                    }
                        
                }
                
            }
            
catch(Exception ex)
            {
                MessageBox.Show(ex.ToString());
            }
        }

3.发送定制消息

我的定制消息是当您打开并要跟我对话时,我会把我博客上的最新文章标题和连接发送给您.(如效果图)

4.接受消息,根据消息内容判断,并返发相应的信息

比如当用户发送给我的消息中包含某个关键词,如overred,我需要我的机器人自动给他发送什么消息:

private void ReadMsg(Conversation sender, DotMSN.MessageEventArgs e)
        {  
            
//string content;
            string input = e.Message.Text;
            
if(input.IndexOf("red")>0)
            {
                
string content="overred 欢迎您光临他的blog:"+"/r/n"+"http://overred.cnblogs.com";
                sender.SendMessage(content);
            }

            
else if(input.StartsWith("H"))
            {
                
string content="我很笨,很多功能还在开发哦"+"/r/n"+"http://overred.cnblogs.com";
                sender.SendMessage(content);
            }
            
else
            {
                
string content="你好啊,我不知道你说的是什么啊,有什么事情请输入H";
                sender.SendMessage(content);
            }
            
        }

当您输入的消息中包含red这个关键词,他的自动回复消息是:
overred 欢迎您光临他的blog:
http://overred.cnblogs.com
(这个可以跟您的数据库关联起来,把一些定制消息保存于数据库)
关于这个消息是如何触发他是通过委托机制实现的,实现起来非常简单.(请下载源代码)

示例代码下载地址:
http://www.cnblogs.com/Files/overred/DotMsnDemo.rar

说明:由于发送博客的rss内容,所以由于网络速度问题,可能导致对方msn不能及时收到相应的消息!
剩下的大家去体验吧!
祝大家五一都有个好心情!

基于DotMSN示例做的一个MSN机器人

  • 2008年10月10日 22:52
  • 120KB
  • 下载

基于dotmsn的MSN机器人原代码

  • 2009年07月03日 11:08
  • 704KB
  • 下载

IoC容器Autofac(2) - 一个简单示例(附demo源码)

依赖注入

Objection简单使用示例(源码)

  • 2015年04月11日 15:47
  • 84KB
  • 下载

POI操作Microsoft Office 之 操作PPT简单示例(附源码)

POI的了解 POI 是 Apache 下的 Jakata 项目的一个子项目,主要用于提供 java 操作 Microsoft Office 办公套件如 Excel,Word,Powerpoin...

DotMsn C#开发自己的MSN客户端

  • 2008年01月15日 14:32
  • 392KB
  • 下载

使用tensorflow实现全连接神经网络的简单示例,含源码

看别人的代码和自己写代码,两种的难度和境界真是不一样。昨天和今天尝试着写一个简单的全连接神经网络,用来学习一个基本的模型,在实现的过程中遇到了不少的坑,虽然我已经明白了其中的原理。 我想了一个教材上...

SwipeMenuListView源码的简单示例

  • 2017年04月13日 00:02
  • 1.02MB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:如何使用DOTMSN开发简单的MSN机器人示例(附示例源码)
举报原因:
原因补充:

(最多只允许输入30个字)