Skip to content

Commit

Permalink
Merge pull request #19 from libxengine/develop
Browse files Browse the repository at this point in the history
V3.11.0.1001 Merge
  • Loading branch information
xengine-qyt authored May 17, 2024
2 parents 292be9c + bad881c commit 0595f2f
Show file tree
Hide file tree
Showing 69 changed files with 931 additions and 7,782 deletions.
38 changes: 38 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
---
name: Bug report
about: Create a report to help us improve
title: ''
labels: ''
assignees: ''

---

**Describe the bug**
A clear and concise description of what the bug is.

**To Reproduce**
Steps to reproduce the behavior:
1. Go to '...'
2. Click on '....'
3. Scroll down to '....'
4. See error

**Expected behavior**
A clear and concise description of what you expected to happen.

**Screenshots**
If applicable, add screenshots to help explain your problem.

**Desktop (please complete the following information):**
- OS: [e.g. iOS]
- Browser [e.g. chrome, safari]
- Version [e.g. 22]

**Smartphone (please complete the following information):**
- Device: [e.g. iPhone6]
- OS: [e.g. iOS8.1]
- Browser [e.g. stock browser, safari]
- Version [e.g. 22]

**Additional context**
Add any other context about the problem here.
20 changes: 20 additions & 0 deletions .github/ISSUE_TEMPLATE/feature_request.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
---
name: Feature request
about: Suggest an idea for this project
title: ''
labels: ''
assignees: ''

---

**Is your feature request related to a problem? Please describe.**
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]

**Describe the solution you'd like**
A clear and concise description of what you want to happen.

**Describe alternatives you've considered**
A clear and concise description of any alternative solutions or features you've considered.

**Additional context**
Add any other context or screenshots about the feature request here.
3 changes: 3 additions & 0 deletions .gitmodules
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
[submodule "XEngine_Source/XEngine_Depend"]
path = XEngine_Source/XEngine_Depend
url = https://github.com/libxengine/XEngine_OPenSource.git
24 changes: 24 additions & 0 deletions CHANGELOG
Original file line number Diff line number Diff line change
@@ -1,3 +1,27 @@
XEngine_MQService V3.11.0.1001

增加:MQTT协议服务支持
增加:信息报告支持
修改:jsoncpp模块使用git的子模块替换
修改:分离了版本列表从主配置中
修改:增加了日志的路径配置
修改:信号量有提示了
修改:保存时间配置移动到db配置
修正:日志配置没有效果的问题
修正:关闭客户端处理不正确
修正:绑定消息日志提示不正确

added:mqtt protocol service supported
added:info report supported
modify:jsoncpp module use git submodule instead
modify:detach version list from main configure
modify:added file path of log configure
modify:signal have tips
modify:save time configure move to db configure
fixed:log configure is not work
fixed:close client is incorrect
fixed:bind log print is incorrect
======================================================================================
XEngine_MQService V3.10.0.1001

增加:消息属性增加无限制消息获取
Expand Down
128 changes: 128 additions & 0 deletions CODE_OF_CONDUCT.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,128 @@
# Contributor Covenant Code of Conduct

## Our Pledge

We as members, contributors, and leaders pledge to make participation in our
community a harassment-free experience for everyone, regardless of age, body
size, visible or invisible disability, ethnicity, sex characteristics, gender
identity and expression, level of experience, education, socio-economic status,
nationality, personal appearance, race, religion, or sexual identity
and orientation.

We pledge to act and interact in ways that contribute to an open, welcoming,
diverse, inclusive, and healthy community.

## Our Standards

Examples of behavior that contributes to a positive environment for our
community include:

* Demonstrating empathy and kindness toward other people
* Being respectful of differing opinions, viewpoints, and experiences
* Giving and gracefully accepting constructive feedback
* Accepting responsibility and apologizing to those affected by our mistakes,
and learning from the experience
* Focusing on what is best not just for us as individuals, but for the
overall community

Examples of unacceptable behavior include:

* The use of sexualized language or imagery, and sexual attention or
advances of any kind
* Trolling, insulting or derogatory comments, and personal or political attacks
* Public or private harassment
* Publishing others' private information, such as a physical or email
address, without their explicit permission
* Other conduct which could reasonably be considered inappropriate in a
professional setting

## Enforcement Responsibilities

Community leaders are responsible for clarifying and enforcing our standards of
acceptable behavior and will take appropriate and fair corrective action in
response to any behavior that they deem inappropriate, threatening, offensive,
or harmful.

Community leaders have the right and responsibility to remove, edit, or reject
comments, commits, code, wiki edits, issues, and other contributions that are
not aligned to this Code of Conduct, and will communicate reasons for moderation
decisions when appropriate.

## Scope

This Code of Conduct applies within all community spaces, and also applies when
an individual is officially representing the community in public spaces.
Examples of representing our community include using an official e-mail address,
posting via an official social media account, or acting as an appointed
representative at an online or offline event.

## Enforcement

Instances of abusive, harassing, or otherwise unacceptable behavior may be
reported to the community leaders responsible for enforcement at
[email protected].
All complaints will be reviewed and investigated promptly and fairly.

All community leaders are obligated to respect the privacy and security of the
reporter of any incident.

## Enforcement Guidelines

Community leaders will follow these Community Impact Guidelines in determining
the consequences for any action they deem in violation of this Code of Conduct:

### 1. Correction

**Community Impact**: Use of inappropriate language or other behavior deemed
unprofessional or unwelcome in the community.

**Consequence**: A private, written warning from community leaders, providing
clarity around the nature of the violation and an explanation of why the
behavior was inappropriate. A public apology may be requested.

### 2. Warning

**Community Impact**: A violation through a single incident or series
of actions.

**Consequence**: A warning with consequences for continued behavior. No
interaction with the people involved, including unsolicited interaction with
those enforcing the Code of Conduct, for a specified period of time. This
includes avoiding interactions in community spaces as well as external channels
like social media. Violating these terms may lead to a temporary or
permanent ban.

### 3. Temporary Ban

**Community Impact**: A serious violation of community standards, including
sustained inappropriate behavior.

**Consequence**: A temporary ban from any sort of interaction or public
communication with the community for a specified period of time. No public or
private interaction with the people involved, including unsolicited interaction
with those enforcing the Code of Conduct, is allowed during this period.
Violating these terms may lead to a permanent ban.

### 4. Permanent Ban

**Community Impact**: Demonstrating a pattern of violation of community
standards, including sustained inappropriate behavior, harassment of an
individual, or aggression toward or disparagement of classes of individuals.

**Consequence**: A permanent ban from any sort of public interaction within
the community.

## Attribution

This Code of Conduct is adapted from the [Contributor Covenant][homepage],
version 2.0, available at
https://www.contributor-covenant.org/version/2/0/code_of_conduct.html.

Community Impact Guidelines were inspired by [Mozilla's code of conduct
enforcement ladder](https://github.com/mozilla/diversity).

[homepage]: https://www.contributor-covenant.org

For answers to common questions about this code of conduct, see the FAQ at
https://www.contributor-covenant.org/faq. Translations are available at
https://www.contributor-covenant.org/translations.
16 changes: 12 additions & 4 deletions README.en.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ c c++Message Queue Service
#### Software Architecture
the software developed based on xengine,using c/c++ development
the software is a simple and high performance server,Allow users to use it directly without secondary development
the software mainly provides a message queue and dds engine,support http,WEBSOCKET and private protocol api server
the software mainly provides a message queue and dds engine,support http,WEBSOCKET,MQTT and private protocol api server

## Software features
this software support following features
Expand All @@ -24,7 +24,7 @@ this software support following features
8. message get time
9. message subcribe
10. support Permission Validation
11. support multi protocol(TCP,WEBSOCKET)
11. support multi protocol(TCP,WEBSOCKET,MQTT)
12. Active delivery acquisition mode or passive subscription notification module
13. get order and start serial pos setting
14. Unlimited load message types
Expand All @@ -37,7 +37,7 @@ this software support following features
## install

#### XEngine Evn
you must install XEngine,need V8.15 or above,install XEngine can be refer to xengine Readme docment
you must install XEngine,need V8.31 or above,install XEngine can be refer to xengine Readme docment
GITEE:https://gitee.com/xyry/libxengine
GITHUB:https://github.com/libxengine/xengine

Expand All @@ -47,6 +47,15 @@ window Exection XEngine_WINEnv.bat
Linux Exection:sudo ./XEngine_LINEnv.sh -i 3
Macos Exection:./XEngine_LINEnv.sh -i 3

##### Depends on environment
Requires MYSQL service support, execute XEngine_SQLFile/CreateDatabase.sql to create database
Execute XEngine_SQLFile/XEngine_MQData.sql and XEngine_SQLFile/XEngine_MQUser.sql to create the table

#### sub module
Due to the dependent sub-modules, after you checkout the warehouse, execute the following command in the warehouse directory to pull the sub-modules
git submodule init
git submodule update

#### Windows
use vs open and complie,support windows 7sp1 and above
Just Run it.
Expand All @@ -71,7 +80,6 @@ same linux
## Installation Instructions
#### Install
Modify the configuration file to what you need, and then run the service directly
need to mysql service support,create database through CreateDatabase.sql,import XEngine_SQLFile/XEngine_MQData.sql and XEngine_SQLFile/XEngine_MQUser.sql to create table.

#### upgrade
If it is an upgrade installation, after downloading the new version and modifying the configuration file, it can be run directly
Expand Down
12 changes: 8 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ c c++Message Service
## 软件架构
此软件基于XEngine开发.采用C/C++作为开发语言
此软件是一款简易的高性能服务,统一的API接口,让用户几乎不需要二次开发就可以直接使用
此软件主要是提供了消息队列与消息分发引擎,可用于用户消息操作的一个API服务器.支持HTTP,WEBSOCKET和私有协议.
此软件主要是提供了消息队列与消息分发引擎,可用于用户消息操作的一个API服务器.支持HTTP,WEBSOCKET,MQTT和私有协议.
## 软件特性
此软件支持以下特性
1. 消息序列
Expand All @@ -23,7 +23,7 @@ c c++Message Service
8. 消息次数
9. 消息订阅
10. 支持权限验证
11. 支持多种协议(TCP,WEBSOCKET)
11. 支持多种协议(TCP,WEBSOCKET,MQTT)
12. 主动投递获取模式或者被动订阅通知模块
13. 获取顺序与开始序列号设置
14. 不限制负载的消息类型
Expand All @@ -36,7 +36,7 @@ c c++Message Service
## 安装教程

#### XEngine环境
必须安装XEngine,版本需要V8.15或者以上版本,安装XEngine可以参考其Readme文档
必须安装XEngine,版本需要V8.31或者以上版本,安装XEngine可以参考其Readme文档
GITEE:https://gitee.com/xyry/libxengine
GITHUB:https://github.com/libxengine/xengine

Expand All @@ -50,6 +50,11 @@ macos执行:./XEngine_LINEnv.sh -i 3
需要MYSQL服务的支持,执行XEngine_SQLFile/CreateDatabase.sql 创建数据库
分别执行:执行XEngine_SQLFile/XEngine_MQData.sql 和 执行XEngine_SQLFile/XEngine_MQUser.sql 创建表

#### sub module
由于依赖的子模块,在你checkout仓库后,在仓库目录下执行下面的命令拉取子模块
git submodule init
git submodule update

#### Windows
使用VS打开并且编译,支持WINDOWS 7SP1以上系统
直接运行即可
Expand Down Expand Up @@ -77,7 +82,6 @@ make FLAGS=CleanAll 清理编译
## 安装指导
#### 安装
修改配置文件为你需要的,然后直接运行服务即可
需要MYSQL服务,使用CreateDatabase.sql创建数据库,然后导入执行XEngine_SQLFile/XEngine_MQData.sql 和 执行XEngine_SQLFile/XEngine_MQUser.sql 创建表

#### 升级
如果是升级安装,下载新版本后修改配置文件就可以直接运行了
Expand Down
12 changes: 12 additions & 0 deletions SECURITY.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
# Security Policy

## Supported Versions

| Version | Supported |
| ------- | ------------------ |
| >= 3.x | :white_check_mark: |
| <= 2.x | :x: |

## Reporting a Vulnerability

www.xyry.org or [email protected]
5 changes: 2 additions & 3 deletions XEngine_Apps/MQCore_HTTPApp/MQCore_HTTPApp.cpp
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
#ifdef _MSC_BUILD
#include <Windows.h>
#include <tchar.h>
#include <json/json.h>
#pragma comment(lib,"Ws2_32")
#pragma comment(lib,"x86/XEngine_BaseLib/XEngine_BaseLib")
#pragma comment(lib,"x86/XEngine_Client/XClient_APIHelp")
Expand All @@ -10,7 +9,6 @@
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <json/json.h>
#include <XEngine_Include/XEngine_CommHdr.h>
#include <XEngine_Include/XEngine_Types.h>
#include <XEngine_Include/XEngine_ProtocolHdr.h>
Expand All @@ -20,7 +18,8 @@
#include <XEngine_Include/XEngine_Client/APIClient_Error.h>
#include "../../XEngine_Source/XQueue_ProtocolHdr.h"

//g++ -std=c++17 -Wall -g MQCore_HTTPApp.cpp -o MQCore_HTTPApp.exe -I ../../XEngine_Source/XEngine_ThirdPart/jsoncpp -L ../../XEngine_Source/XEngine_ThirdPart/jsoncpp -lXEngine_BaseLib -lXClient_APIHelp -ljsoncpp
//VS2022 Debug x86 Compile
//g++ -std=c++17 -Wall -g MQCore_HTTPApp.cpp -o MQCore_HTTPApp.exe -lXEngine_BaseLib -lXClient_APIHelp

void MQ_GetUserList()
{
Expand Down
2 changes: 1 addition & 1 deletion XEngine_Apps/MQCore_HTTPApp/MQCore_HTTPApp.vcxproj
Original file line number Diff line number Diff line change
Expand Up @@ -72,7 +72,7 @@
<PropertyGroup Label="UserMacros" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<LinkIncremental>true</LinkIncremental>
<IncludePath>$(XEngine_Include);../../XEngine_Source/XEngine_ThirdPart/jsoncpp;$(IncludePath)</IncludePath>
<IncludePath>$(XEngine_Include);$(IncludePath)</IncludePath>
<LibraryPath>$(XEngine_Library);$(LibraryPath)</LibraryPath>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
Expand Down
3 changes: 2 additions & 1 deletion XEngine_Apps/MQCore_TCPApp/MQCore_TCPApp.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,8 @@ using namespace std;
#include <XEngine_Include/XEngine_Client/XClient_Error.h>
#include "../../XEngine_Source/XQueue_ProtocolHdr.h"

//g++ -std=c++17 -Wall -g MQCore_TCPApp.cpp -o MQCore_TCPApp.exe -I ../../XEngine_Source/XEngine_ThirdPart/jsoncpp -L ../../XEngine_Source/XEngine_ThirdPart/jsoncpp -lXEngine_BaseLib -lXClient_Socket
//VS2022 Debug x86 Compile
//g++ -std=c++17 -Wall -g MQCore_TCPApp.cpp -o MQCore_TCPApp.exe -lXEngine_BaseLib -lXClient_Socket

XSOCKET m_Socket;
__int64x nLastNumber = 0;
Expand Down
5 changes: 3 additions & 2 deletions XEngine_Apps/MQCore_WSApp/MQCore_WSApp.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -21,8 +21,9 @@
#include <XEngine_Include/XEngine_RfcComponents/WSProtocol_Error.h>
#include "../../XEngine_Source/XQueue_ProtocolHdr.h"

//g++ -std=c++17 -Wall -g MQCore_WSApp.cpp -o MQCore_WSApp.exe -I ../../XEngine_Source/XEngine_ThirdPart/jsoncpp -L /usr/local/lib/XEngine_Release/XEngine_BaseLib -L /usr/local/lib/XEngine_Release/XEngine_Client -L /usr/local/lib/XEngine_Release/XEngine_RfcComponents -L ../../XEngine_Source/XEngine_ThirdPart/jsoncpp -lXEngine_BaseLib -lXEngine_Algorithm -lXClient_Socket -lRfcComponents_WSProtocol -ljsoncpp

//VS2022 Debug x86 Compile
//g++ -std=c++17 -Wall -g MQCore_WSApp.cpp -o MQCore_WSApp.exe -I ../../XEngine_Source/XEngine_Depend/XEngine_Module/jsoncpp -L ../../XEngine_Release -lXEngine_BaseLib -lXEngine_Algorithm -lXClient_Socket -lRfcComponents_WSProtocol -ljsoncpp -Wl,-rpath=../../XEngine_Release

XSOCKET m_Socket;
LPCXSTR lpszKey = _X("XEngine_Notify"); //主题

Expand Down
2 changes: 1 addition & 1 deletion XEngine_Apps/MQCore_WSApp/MQCore_WSApp.vcxproj
Original file line number Diff line number Diff line change
Expand Up @@ -72,7 +72,7 @@
<PropertyGroup Label="UserMacros" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<LinkIncremental>true</LinkIncremental>
<IncludePath>$(XEngine_Include);../../XEngine_Source/XEngine_ThirdPart/jsoncpp;$(IncludePath)</IncludePath>
<IncludePath>$(XEngine_Include);../../XEngine_Source/XEngine_Depend/XEngine_Module/jsoncpp;$(IncludePath)</IncludePath>
<LibraryPath>$(XEngine_Library);$(LibraryPath)</LibraryPath>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
Expand Down
Binary file modified XEngine_Docment/Docment_en.docx
Binary file not shown.
Binary file modified XEngine_Docment/Docment_zh.docx
Binary file not shown.
Loading

0 comments on commit 0595f2f

Please sign in to comment.