⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 rtxsvrapi.java

📁 腾讯RTX开发示例 结合本单位OA系统提供消息提醒功能
💻 JAVA
字号:
package rtx;
public class RTXSvrApi
 {

	//客户端与server传递的协议
		static int PRO_ADDUSER             =0x0001;
		static int PRO_DELUSER             =0x0002;
		static int PRO_SETUSERSMPLINFO     =0x0003;
		static int PRO_GETUSER             =0x0004;
		static int PRO_SETUSER             =0x0005;
		static int PRO_GETUSERSMPLINFO     =0x0006;
		static int PRO_SETUSERPRIVILEGE    =0x0007;
		static int PRO_IFEXIST             =0x0008;
		static int PRO_TRANUSER			   =0X0009;
		
				
		static int PRO_ADDDEPT             =0x0101;
		static int PRO_DELDEPT             =0x0102;
		static int PRO_SETDEPT             =0x0103;
		static int PRO_GETCHILDDEPT        =0x0104;
		static int PRO_GETDEPTALLUSER      =0x0105;
		static int PRO_SETDEPTPRIVILEGE    =0x0106;
		static int PRO_GETDEPTSMPLINFO     =0x0107;
				
		static int PRO_SMS_LOGON           =0x1000;
		static int PRO_SMS_SEND            =0x1001;
		static int PRO_SMS_NICKLIST        =0x1002;
		static int PRO_SMS_FUNCLIST        =0x1003;
		static int PRO_SMS_CHECK           =0x1004;
				
		static int PRO_SYS_USERLOGIN       =0x2000;
		static int PRO_SYS_GETUSERSTATUS   =0x2001;
		static int PRO_SYS_SENDIM          =0x2002;
		static int PRO_SYS_USERLOGINVERIFY =0x2003;
				
		static int PRO_EXT_NOTIFY          =0x2100;
	
//对象名称
static String OBJNAME_RTXEXT			= "EXTTOOLS";
static String OBJNAME_RTXSYS			= "SYSTOOLS";
static String OBJNAME_DEPTMANAGER		= "DEPTMANAGER";
static String OBJNAME_USERMANAGER		= "USERMANAGER";
static String OBJNAME_SMSMANAGER		= "SMSOBJECT";
 	
 	
static String KEY_TYPE			= "TYPE";
   
static String KEY_USERID		= "USERID";
static String KEY_USERNAME		= "USERNAME";
static String KEY_UIN			= "UIN";
static String KEY_NICK			= "NICK";
static String KEY_MOBILE		= "MOBILE";
static String KEY_OUTERUIN		= "OUTERUIN";
static String KEY_LASTMODIFYTIME= "LASTMODIFYTIME";
static String KEY_FACE			= "FACE";
static String KEY_PASSWORD		= "PWD";
   
static String KEY_AGE			= "AGE";
static String KEY_GENDER		= "GENDER";
static String KEY_BIRTHDAY		= "BIRTHDAY";
static String KEY_BLOODTYPE		= "BLOODTYPE";
static String KEY_CONSTELLATION	= "CONSTELLATION";
static String KEY_COLLAGE		= "COLLAGE";
static String KEY_HOMEPAGE		= "HOMEPAGE";
static String KEY_EMAIL			= "EMAIL";
static String KEY_PHONE			= "PHONE";
static String KEY_FAX			= "FAX";
static String KEY_ADDRESS		= "ADDRESS";
static String KEY_POSTCODE		= "POSTCODE";
static String KEY_COUNTRY		= "COUNTRY";
static String KEY_PROVINCE		= "PROVINCE";
static String KEY_CITY			= "CITY";
static String KEY_MEMO			= "MEMO";
static String KEY_MOBILETYPE	= "MOBILETYPE";
static String KEY_AUTHTYPE		= "AUTHTYPE";
static String KEY_POSITION		= "POSITION";
static String KEY_OPENGSMINFO	= "OPENGSMINFO";
static String KEY_OPENCONTACTINFO= "OPENCONTACTINFO";
static String KEY_PUBOUTUIN		= "PUBOUTUIN";
static String KEY_PUBOUTNICK	= "PUBOUTNICK";
static String KEY_PUBOUTNAME	= "PUBOUTNAME";
static String KEY_PUBOUTDEPT	= "PUBOUTDEPT";
static String KEY_PUBOUTPOSITION= "PUBOUTPOSITION";
static String KEY_PUBOUTINFO	= "PUBOUTINFO";
static String KEY_OUTERPUBLISH	= "OUTERPUBLISH";
   
static String KEY_LDAPID		= "LDAPID";
static String KEY_DEPTID		= "DEPTID";
static String KEY_PDEPTID		= "PDEPTID";
static String KEY_SORTID		= "SORTID";
static String KEY_NAME			= "NAME";
static String KEY_INFO			= "INFO";
static String KEY_COMPLETEDELBS	= "COMPLETEDELBS";
   
//权限相关   
static String KEY_DENY			= "DENY";
static String KEY_ALLOW			= "ALLOW";
   
static String KEY_SESSIONKEY	= "SESSIONKEY";
   
//短信相关   
static String KEY_SENDER			= "SENDER";
static String KEY_FUNNO			= "FUNCNO";
static String KEY_RECEIVER		= "RECEIVER";
static String KEY_RECEIVERUIN	= "RECEIVERUIN";
static String KEY_SMS			= "SMS";
static String KEY_CUT			= "CUT";
static String KEY_DELFLAG		= "DELFLAG";
   
   
//RTXServer业务逻辑   
static String KEY_RECVUSERS		= "RECVUSERS";
static String KEY_IMMSG			= "IMMSG";
//消息提醒   
static String KEY_MSGID			= "MSGID";
static String KEY_MSGINFO			= "MSGINFO";
static String KEY_ASSISTANTTYPE	= "ASSTYPE";
static String KEY_TITLE			= "TITLE";
   
   
//结果集合的描述   
static String KEY_RESULT_INCODE	= "INNERCODE"; //内部错误
static String KEY_RESULT_CODE	= "CODE";		//返回错误
static String KEY_RESULT_TYPE	= "TYPE";		//返回类型
static String KEY_RESULT_NAME	= "NAME";		
static String KEY_RESULT_VALUE	= "VALUE";
static String KEY_RESULT_VARIANT= "VARIANT";	
 	
 	
 	
  static {
        System.loadLibrary("SDKAPIJava"); 
    } 	
  public native boolean Init(); 
  public native void    UnInit();
  
  public native String  GetError(int iCode);
  public native String  GetVersion();
  public native int	    GetNewObject(String szObjectName);
  public native String  GetObjectName(int iObjectHandle);
  public native int		SetObjectName(int iObjectHandle, String szObjectName);
  public native int 	GetNewPropertys();
  public native int     IsHandle(int iHandle);
  public native int 	AddRefHandle(int iHandle);
  public native int 	ReleaseHandle(int iHandle);
  public native int 	AddProperty(int iHandle, String szName, String szValue);
  public native int     ClearProperty(int iPropertyHandle, int iIndex);
  public native int 	RemoveProperty(int iPropertyHandle, String szName);
  public native String  GetProperty(int iPropertyHandle, String szName);

  public native int		SetServerIP(int iObjectHandle, String szServerIP);
  public native String	GetServerIP(int iObjectHandle);
  public native int		GetServerPort(int iObjectHandle);
  public native int		SetServerPort(int iObjectHandle, int iPort);

	
  public native int		GetPropertysCount(int iHandle);
  public native int		GetPropertysItem(int iHandle, int iIndex);
  public native int		Call(int iObjectHandle, int iPropertyHandle, int iCmdID);


  
  public native int		GetResultPropertys(int iHandle);
  public native int		GetResultInt(int iHandle);
  public native String  GetResultString(int iHandle);
  
  public String	GetPropertyItemName(int iHandle)
  {
  	return GetProperty(iHandle, KEY_RESULT_NAME);
  }
  public String	GetPropertyItemValue(int iHandle)
  {
  	return GetProperty(iHandle, KEY_RESULT_VALUE);
  }
  public int GetResultInnerCode(int iHandle)
  {
  	String sz= GetProperty(iHandle, KEY_RESULT_INCODE);
  	return Integer.parseInt(sz);
  }
  public int		GetResultCode(int iHandle)
  {
  	String sz= GetProperty(iHandle, KEY_RESULT_CODE);
  	return Integer.parseInt(sz);
  }
  public int		GetResultType(int iHandle)
  {
   	String sz= GetProperty(iHandle, KEY_RESULT_TYPE);
  	return Integer.parseInt(sz);
  }
   
  public int 	SendSm2(String szSender,String szReceiver,String szSmInfo, int iAutoCut)
  {
  	int iObj = GetNewObject(OBJNAME_SMSMANAGER);
	int iProp = GetNewPropertys();
	AddProperty(iProp, KEY_SENDER, szSender);
	AddProperty(iProp, KEY_RECEIVER, szReceiver);
	AddProperty(iProp, KEY_SMS, szSmInfo);
	if( iAutoCut > 0) 
	{
		AddProperty(iProp, KEY_CUT, "1");
	}
	int iResult = Call(iObj, iProp, PRO_SMS_SEND);
	
	int iCode = GetResultCode(iResult);
	if(iCode != 0 )
	{
		System.out.println("含错误结果:"+ GetResultString(iResult));
	}
	else
	{
		String sz =  String.valueOf(iResult);
		System.out.println("结果:"+ GetError(iCode));
	}
	ReleaseHandle(iObj);
	ReleaseHandle(iProp);
	ReleaseHandle(iResult);	
	return 0;
  }
  public int 	Notify(String szReceivers,String szMsg, String szType, String szTitle)
  {
  	int iObj = GetNewObject(OBJNAME_RTXEXT);
	int iProp = GetNewPropertys();
	AddProperty(iProp, KEY_USERNAME, szReceivers);
	AddProperty(iProp, KEY_TITLE, szTitle);
	AddProperty(iProp, KEY_MSGINFO, szMsg);
	AddProperty(iProp, KEY_TYPE, szType);
	AddProperty(iProp, KEY_MSGID, "0");
	AddProperty(iProp, KEY_ASSISTANTTYPE, "0");

	int iResult = Call(iObj, iProp, PRO_EXT_NOTIFY);
	int iCode = GetResultCode(iResult);
	if(iCode != 0 )
	{
		System.out.println("错误结果:"+ GetResultString(iResult));
	}
	else
	{
		String sz =  String.valueOf(iResult);
		System.out.println("结果:"+ GetError(iCode));
	}
	ReleaseHandle(iObj);
	ReleaseHandle(iProp);
	ReleaseHandle(iResult);	
  	return iCode;
   }
  
   public int SendIM(String szSender, String szReceivers, String szMsg)
   {
   	  	int iObj = GetNewObject(OBJNAME_RTXSYS);
		int iProp = GetNewPropertys();
		AddProperty(iProp, KEY_SENDER, szSender);
		AddProperty(iProp, KEY_RECVUSERS, szReceivers);
		AddProperty(iProp, KEY_IMMSG, szMsg);
	
		int iResult = Call(iObj, iProp, PRO_SYS_SENDIM);
		int iCode = GetResultCode(iResult);
		if(iCode != 0 )
		{
			System.out.println("错误结果:"+ GetResultString(iResult));
		}
		else
		{
			String sz =  String.valueOf(iResult);
			System.out.println("结果:"+ GetError(iCode));
		}
		ReleaseHandle(iObj);
		ReleaseHandle(iProp);
		ReleaseHandle(iResult);	
	  	return iCode;
   }
   public int QueryUserState(String szUser)
   {
   	    int iObj = GetNewObject(OBJNAME_RTXSYS);
		int iProp = GetNewPropertys();
		AddProperty(iProp, KEY_USERNAME, szUser);
		int iResult = Call(iObj, iProp, PRO_SYS_GETUSERSTATUS);
		int iCode = GetResultCode(iResult);
		if(iCode != 0 )
		{
			System.out.println("错误结果:"+ GetResultString(iResult));
		}
		else
		{
			System.out.println("结果:"+ GetResultString(iResult));
		}
		ReleaseHandle(iObj);
		ReleaseHandle(iProp);
		ReleaseHandle(iResult);	
	  	return iCode;	
   }
   public int GetUserInfo(String szUser)
   {
   	  	int iObj = GetNewObject(OBJNAME_USERMANAGER);
		int iProp = GetNewPropertys();
		AddProperty(iProp, KEY_USERNAME, szUser);
		int iResult = Call(iObj, iProp, PRO_GETUSER);
		int iCode = GetResultCode(iResult);
		if(iCode != 0 )
		{
			System.out.println("错误结果:"+ GetResultString(iResult));
		}
		else
		{
			int iProps = GetResultPropertys(iResult);
			int iCount = GetPropertysCount(iProps);
			for(int i=0; i<iCount; i++)
			{
				int iHandle = GetPropertysItem(iProps, i);
				System.out.println(GetPropertyItemName(iHandle) + ":\t" + GetPropertyItemValue(iHandle));
				ReleaseHandle(iHandle);
			}
		}
		ReleaseHandle(iObj);
		ReleaseHandle(iProp);
		ReleaseHandle(iResult);	
	  	return iCode;	
   	
   }
   
};
   

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -