C# RTX的二次开发(Web服务)WebService 给某人发送消息提醒

本文主要是介绍C# RTX的二次开发(Web服务)WebService 给某人发送消息提醒,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

这两天研究了一下rtx二次开发,用WebService接口实现rtx方法的调用。服务器系统是Windows Server 2003,开发环境使用的C#2010,RTX版本为2013(8.3.612.1)

RTX管理端、RTX客户端、SDK安装包都可以到官网上下载到。为避免我这个忘性大的人过两天又忘了,我在这里整理记录下来,也供大家参考参考。本人拙见,欢迎指正。

1、我这边的rtx服务端是安装在服务器上,rtx有一个限制,如果调用rtx接口需要修改rtx服务端的两个文件AppConnConfig.xml、SDKProperty.xml,


修改AppConnConfig.xml

<?xml version="1.0"?>
<Property>
<APIClient>
<IPLimit Enabled="1">
<IP>127.0.0.1</IP>
                <IP>开发机器的IP(192.168.168.xxx)</IP>
</IPLimit>
</APIClient>
</Property>


修改SDKProperty.xml

<?xml version="1.0"?>

<Property>
<APIClient>
<IPLimit Enabled="1">
<IP>127.0.0.1</IP>
                <IP>开发机器的IP(192.168.168.xxx)</IP>
</IPLimit>
</APIClient>
<sdkhttp>
<IPLimit Enabled="1">
</IPLimit>
</sdkhttp>
</Property>


因为我的应用程序中需要调用RTX接口给其他人发消息,所以为了方便,不用添加多个IP地址,我选择用WebService调用RTX方法,在用应用程序去调用WebService接口。这样,仅需要添加WebService 接口所在机器的IP地址,就能实现我的目的。


2.写开发程序过程:

需要注意的是

1.开发机器需要安装服务端的SDK程序,安装后目录为RTXSSDK,这里边有我们需要引用的Interop.RTXSAPILib.dll文件,有了它才能实现与RTX服务器的通信。

2.我也遇到过如下错误:



如果写的是窗体程序,需要设置平台为32位,在项目-属性-生成-目标平台-选择x86。

如果写的是WebService,需要在IIS的应用程序池中的默认设置双击,启用32位应用程序选择true。

此处附上我写的代码:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Services;
using RTXSAPILib;
using System.Data;
using System.Configuration;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.Services.Protocols;


/// <summary>
///WebService 的摘要说明
/// </summary>
[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
//若要允许使用 ASP.NET AJAX 从脚本中调用此 Web 服务,请取消对下行的注释。 
// [System.Web.Script.Services.ScriptService]
public class WebService : System.Web.Services.WebService {


    public WebService () {


        //如果使用设计的组件,请取消注释以下行 
        //InitializeComponent(); 
    }


    public Authentication identity;
    [System.Web.Services.Protocols.SoapHeader("identity")]


    [WebMethod(Description = "RTX发送消息")]
    public string sendMessage(String Ip, short Iport, Authentication identity, string receiverAccount, string title, string holdtime, string content)
    {
        if(identity.ValideUser(identity.UserName,identity.Password))
        {


        string retval;
        try
        {
        //初始化服务器属性
        RTXSAPILib.IRTXSAPIRootObj RootObj;
        RootObj = new RTXSAPIRootObj();
        //创建根对象
        RootObj.ServerIP = Ip;
        RootObj.ServerPort = Iport; //设置服务器端口


        
            RootObj.SendNotify(receiverAccount, title, 0, content); //获取版本信息
            retval = "1";
            return retval;
        }
        catch (Exception ex)
        {
            retval = ex.Message;
            return retval;
        }
        }
        else
         return "您没有权限访问该网站!";
       
    }
    
}


public class Authentication : SoapHeader
{
    public Authentication()
    { 
    
    }
    public string UserName;
    public string Password;
    public bool ValideUser(string in_UserName, string in_PassWord)
    {
        if ((in_UserName == "user") && (in_PassWord == "666666"))
            return true;
        else
            return false;
    }
}


这篇关于C# RTX的二次开发(Web服务)WebService 给某人发送消息提醒的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/504678

相关文章

使用C#代码在PDF文档中添加、删除和替换图片

《使用C#代码在PDF文档中添加、删除和替换图片》在当今数字化文档处理场景中,动态操作PDF文档中的图像已成为企业级应用开发的核心需求之一,本文将介绍如何在.NET平台使用C#代码在PDF文档中添加、... 目录引言用C#添加图片到PDF文档用C#删除PDF文档中的图片用C#替换PDF文档中的图片引言在当

详解C#如何提取PDF文档中的图片

《详解C#如何提取PDF文档中的图片》提取图片可以将这些图像资源进行单独保存,方便后续在不同的项目中使用,下面我们就来看看如何使用C#通过代码从PDF文档中提取图片吧... 当 PDF 文件中包含有价值的图片,如艺术画作、设计素材、报告图表等,提取图片可以将这些图像资源进行单独保存,方便后续在不同的项目中使

C#使用SQLite进行大数据量高效处理的代码示例

《C#使用SQLite进行大数据量高效处理的代码示例》在软件开发中,高效处理大数据量是一个常见且具有挑战性的任务,SQLite因其零配置、嵌入式、跨平台的特性,成为许多开发者的首选数据库,本文将深入探... 目录前言准备工作数据实体核心技术批量插入:从乌龟到猎豹的蜕变分页查询:加载百万数据异步处理:拒绝界面

C#数据结构之字符串(string)详解

《C#数据结构之字符串(string)详解》:本文主要介绍C#数据结构之字符串(string),具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录转义字符序列字符串的创建字符串的声明null字符串与空字符串重复单字符字符串的构造字符串的属性和常用方法属性常用方法总结摘

C#如何动态创建Label,及动态label事件

《C#如何动态创建Label,及动态label事件》:本文主要介绍C#如何动态创建Label,及动态label事件,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录C#如何动态创建Label,及动态label事件第一点:switch中的生成我们的label事件接着,

C# WinForms存储过程操作数据库的实例讲解

《C#WinForms存储过程操作数据库的实例讲解》:本文主要介绍C#WinForms存储过程操作数据库的实例,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、存储过程基础二、C# 调用流程1. 数据库连接配置2. 执行存储过程(增删改)3. 查询数据三、事务处

JSON Web Token在登陆中的使用过程

《JSONWebToken在登陆中的使用过程》:本文主要介绍JSONWebToken在登陆中的使用过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录JWT 介绍微服务架构中的 JWT 使用结合微服务网关的 JWT 验证1. 用户登录,生成 JWT2. 自定义过滤

SpringKafka消息发布之KafkaTemplate与事务支持功能

《SpringKafka消息发布之KafkaTemplate与事务支持功能》通过本文介绍的基本用法、序列化选项、事务支持、错误处理和性能优化技术,开发者可以构建高效可靠的Kafka消息发布系统,事务支... 目录引言一、KafkaTemplate基础二、消息序列化三、事务支持机制四、错误处理与重试五、性能优

SpringIntegration消息路由之Router的条件路由与过滤功能

《SpringIntegration消息路由之Router的条件路由与过滤功能》本文详细介绍了Router的基础概念、条件路由实现、基于消息头的路由、动态路由与路由表、消息过滤与选择性路由以及错误处理... 目录引言一、Router基础概念二、条件路由实现三、基于消息头的路由四、动态路由与路由表五、消息过滤

一文教你如何将maven项目转成web项目

《一文教你如何将maven项目转成web项目》在软件开发过程中,有时我们需要将一个普通的Maven项目转换为Web项目,以便能够部署到Web容器中运行,本文将详细介绍如何通过简单的步骤完成这一转换过程... 目录准备工作步骤一:修改​​pom.XML​​1.1 添加​​packaging​​标签1.2 添加