mirror of
https://gitee.com/farsunset/cim.git
synced 2025-06-17 07:35:25 +08:00
TagSessionGroup新增过滤器参数
This commit is contained in:
commit
ddd7e741b8
22
README.md
22
README.md
@ -1,5 +1,7 @@
|
||||
## 在线文档
|
||||
## [https://www.yuque.com/yuanfangxiyang/ma4ytb](https://www.yuque.com/yuanfangxiyang/ma4ytb)
|
||||
[语雀在线文档](https://www.yuque.com/yuanfangxiyang/ma4ytb)
|
||||
|
||||
|
||||
|
||||
---
|
||||
|
||||
@ -9,12 +11,18 @@ CIM是一套完善的消息推送框架,可应用于信令推送,即时聊
|
||||
|
||||
CIM采用业内主流开源技术构建,易于扩展和使用,并完美支持集群部署支持海量链接,目前支持websocket,android,ios,桌面应用,系统应用等多端接入持,可应用于移动应用,物联网,智能家居,嵌入式开发,桌面应用,WEB应用即时消服务。
|
||||
|
||||
用时7年 基于CIM的项目已经运行在全国各个地方,包括上司公司,各地政务系统,警务系统等服务于上百家客户,希望CIM也能为您带来价值,如果您也希望加入项目成为贡献者,请联系我。
|
||||
用时7年 基于CIM的项目已经运行在全国各个地方,包括上司公司,各地政务系统,警务系统等服务于上百家客户,希望CIM也能为您带来价值,如果您也希望加入项目成为贡献者,请联系我。如果觉得有用欢迎打赏。
|
||||
|
||||
<div align="center">
|
||||
<img src="http://staticres.oss-cn-hangzhou.aliyuncs.com/qcode/ali_pay.jpg" width="30%" />
|
||||
<img src="http://staticres.oss-cn-hangzhou.aliyuncs.com/qcode/wechat_pay.jpg" width="30%" />
|
||||
</div>
|
||||
|
||||
|
||||
---
|
||||
## 以下是基于CIM开发的2款产品,并不开源!!!
|
||||
## [http://farsunset.com](http://farsunset.com)
|
||||
## 相关产品
|
||||
[官网介绍](http://farsunset.com)
|
||||
|
||||
#### 和信
|
||||
和信是基于CIM组件开发的一整套完整的产品,面向所有人开放注册的试用场景。具有丰富的功能,聊天、群组、好友列表、黑名单、公众号、朋友圈等功能。不依赖任何第三方服务,可以私有化部署。
|
||||
|
||||
@ -32,17 +40,19 @@ CIM采用业内主流开源技术构建,易于扩展和使用,并完美支
|
||||
---
|
||||
|
||||
|
||||
#### 功能预览
|
||||
## 功能预览
|
||||
|
||||
1.控制台页面[http://127.0.0.1:8080](http://127.0.0.1:8080)
|
||||

|
||||
|
||||
2.Android客户端
|
||||

|
||||
|
||||
3.Web客户端
|
||||

|
||||
|
||||
|
||||
#### 更新日志
|
||||
## 更新日志
|
||||
-------------------------------------------------------------------------------------------
|
||||
版本:3.5.0/时间:2018-08-22
|
||||
|
||||
|
@ -1,28 +1,22 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<module org.jetbrains.idea.maven.project.MavenProjectsManager.isMavenModule="true" type="JAVA_MODULE" version="4">
|
||||
<component name="FacetManager">
|
||||
<facet type="Spring" name="Spring">
|
||||
<configuration />
|
||||
</facet>
|
||||
<facet type="web" name="Web">
|
||||
<configuration>
|
||||
<webroots />
|
||||
<sourceRoots>
|
||||
<root url="file://$MODULE_DIR$/src/main/java" />
|
||||
<root url="file://$MODULE_DIR$/src/main/resources" />
|
||||
</sourceRoots>
|
||||
</configuration>
|
||||
</facet>
|
||||
<facet type="jpa" name="JPA">
|
||||
<configuration>
|
||||
<setting name="validation-enabled" value="true" />
|
||||
<setting name="provider-name" value="Hibernate" />
|
||||
<datasource-mapping>
|
||||
<factory-entry name="entityManagerFactory" />
|
||||
</datasource-mapping>
|
||||
<datasource-mapping />
|
||||
<naming-strategy-map />
|
||||
</configuration>
|
||||
</facet>
|
||||
<facet type="Spring" name="Spring">
|
||||
<configuration />
|
||||
</facet>
|
||||
</component>
|
||||
<component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_8">
|
||||
<output url="file://$MODULE_DIR$/target/classes" />
|
||||
@ -30,78 +24,78 @@
|
||||
<content url="file://$MODULE_DIR$">
|
||||
<sourceFolder url="file://$MODULE_DIR$/src/main/java" isTestSource="false" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/src/main/resources" type="java-resource" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/src/test/java" isTestSource="true" />
|
||||
<excludeFolder url="file://$MODULE_DIR$/target" />
|
||||
</content>
|
||||
<orderEntry type="inheritedJdk" />
|
||||
<orderEntry type="sourceFolder" forTests="false" />
|
||||
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter:2.4.4" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot:2.4.4" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.springframework:spring-context:5.3.5" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-autoconfigure:2.4.4" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-logging:2.4.4" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter:2.5.2" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot:2.5.2" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.springframework:spring-context:5.3.8" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-autoconfigure:2.5.2" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-logging:2.5.2" level="project" />
|
||||
<orderEntry type="library" name="Maven: ch.qos.logback:logback-classic:1.2.3" level="project" />
|
||||
<orderEntry type="library" name="Maven: ch.qos.logback:logback-core:1.2.3" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.apache.logging.log4j:log4j-to-slf4j:2.13.3" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.apache.logging.log4j:log4j-api:2.13.3" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.slf4j:jul-to-slf4j:1.7.30" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.apache.logging.log4j:log4j-to-slf4j:2.14.1" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.apache.logging.log4j:log4j-api:2.14.1" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.slf4j:jul-to-slf4j:1.7.31" level="project" />
|
||||
<orderEntry type="library" name="Maven: jakarta.annotation:jakarta.annotation-api:1.3.5" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.springframework:spring-core:5.3.5" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.springframework:spring-jcl:5.3.5" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.yaml:snakeyaml:1.27" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-web:2.4.4" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-json:2.4.4" level="project" />
|
||||
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-databind:2.11.4" level="project" />
|
||||
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-annotations:2.11.4" level="project" />
|
||||
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-core:2.11.4" level="project" />
|
||||
<orderEntry type="library" name="Maven: com.fasterxml.jackson.datatype:jackson-datatype-jdk8:2.11.4" level="project" />
|
||||
<orderEntry type="library" name="Maven: com.fasterxml.jackson.datatype:jackson-datatype-jsr310:2.11.4" level="project" />
|
||||
<orderEntry type="library" name="Maven: com.fasterxml.jackson.module:jackson-module-parameter-names:2.11.4" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-tomcat:2.4.4" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.apache.tomcat.embed:tomcat-embed-core:9.0.44" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.glassfish:jakarta.el:3.0.3" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.apache.tomcat.embed:tomcat-embed-websocket:9.0.44" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.springframework:spring-web:5.3.5" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.springframework:spring-beans:5.3.5" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.springframework:spring-webmvc:5.3.5" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.springframework:spring-aop:5.3.5" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.springframework:spring-expression:5.3.5" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-freemarker:2.4.4" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.springframework:spring-core:5.3.8" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.springframework:spring-jcl:5.3.8" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.yaml:snakeyaml:1.28" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-web:2.5.2" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-json:2.5.2" level="project" />
|
||||
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-databind:2.12.3" level="project" />
|
||||
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-annotations:2.12.3" level="project" />
|
||||
<orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-core:2.12.3" level="project" />
|
||||
<orderEntry type="library" name="Maven: com.fasterxml.jackson.datatype:jackson-datatype-jdk8:2.12.3" level="project" />
|
||||
<orderEntry type="library" name="Maven: com.fasterxml.jackson.datatype:jackson-datatype-jsr310:2.12.3" level="project" />
|
||||
<orderEntry type="library" name="Maven: com.fasterxml.jackson.module:jackson-module-parameter-names:2.12.3" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-tomcat:2.5.2" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.apache.tomcat.embed:tomcat-embed-core:9.0.48" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.apache.tomcat.embed:tomcat-embed-el:9.0.48" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.apache.tomcat.embed:tomcat-embed-websocket:9.0.48" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.springframework:spring-web:5.3.8" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.springframework:spring-beans:5.3.8" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.springframework:spring-webmvc:5.3.8" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.springframework:spring-aop:5.3.8" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.springframework:spring-expression:5.3.8" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-freemarker:2.5.2" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.freemarker:freemarker:2.3.31" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.springframework:spring-context-support:5.3.5" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-data-redis:2.4.4" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.springframework.data:spring-data-redis:2.4.6" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.springframework.data:spring-data-keyvalue:2.4.6" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.springframework:spring-tx:5.3.5" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.springframework:spring-oxm:5.3.5" level="project" />
|
||||
<orderEntry type="library" name="Maven: io.lettuce:lettuce-core:6.0.3.RELEASE" level="project" />
|
||||
<orderEntry type="library" name="Maven: io.projectreactor:reactor-core:3.4.4" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.springframework:spring-context-support:5.3.8" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-data-redis:2.5.2" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.springframework.data:spring-data-redis:2.5.2" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.springframework.data:spring-data-keyvalue:2.5.2" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.springframework:spring-tx:5.3.8" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.springframework:spring-oxm:5.3.8" level="project" />
|
||||
<orderEntry type="library" name="Maven: io.lettuce:lettuce-core:6.1.3.RELEASE" level="project" />
|
||||
<orderEntry type="library" name="Maven: io.projectreactor:reactor-core:3.4.7" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.reactivestreams:reactive-streams:1.0.3" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-data-jpa:2.4.4" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-aop:2.4.4" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-data-jpa:2.5.2" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-aop:2.5.2" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.aspectj:aspectjweaver:1.9.6" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-jdbc:2.4.4" level="project" />
|
||||
<orderEntry type="library" name="Maven: com.zaxxer:HikariCP:3.4.5" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.springframework:spring-jdbc:5.3.5" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-jdbc:2.5.2" level="project" />
|
||||
<orderEntry type="library" name="Maven: com.zaxxer:HikariCP:4.0.3" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.springframework:spring-jdbc:5.3.8" level="project" />
|
||||
<orderEntry type="library" name="Maven: jakarta.transaction:jakarta.transaction-api:1.3.3" level="project" />
|
||||
<orderEntry type="library" name="Maven: jakarta.persistence:jakarta.persistence-api:2.2.3" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.hibernate:hibernate-core:5.4.29.Final" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.jboss.logging:jboss-logging:3.4.1.Final" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.hibernate:hibernate-core:5.4.32.Final" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.jboss.logging:jboss-logging:3.4.2.Final" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.javassist:javassist:3.27.0-GA" level="project" />
|
||||
<orderEntry type="library" name="Maven: net.bytebuddy:byte-buddy:1.10.22" level="project" />
|
||||
<orderEntry type="library" name="Maven: antlr:antlr:2.7.7" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.jboss:jandex:2.2.3.Final" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.dom4j:dom4j:2.1.3" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.hibernate.common:hibernate-commons-annotations:5.1.2.Final" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.glassfish.jaxb:jaxb-runtime:2.3.3" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.glassfish.jaxb:jaxb-runtime:2.3.4" level="project" />
|
||||
<orderEntry type="library" name="Maven: jakarta.xml.bind:jakarta.xml.bind-api:2.3.3" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.glassfish.jaxb:txw2:2.3.3" level="project" />
|
||||
<orderEntry type="library" name="Maven: com.sun.istack:istack-commons-runtime:3.0.11" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.glassfish.jaxb:txw2:2.3.4" level="project" />
|
||||
<orderEntry type="library" name="Maven: com.sun.istack:istack-commons-runtime:3.0.12" level="project" />
|
||||
<orderEntry type="library" scope="RUNTIME" name="Maven: com.sun.activation:jakarta.activation:1.2.2" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.springframework.data:spring-data-jpa:2.4.6" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.springframework.data:spring-data-commons:2.4.6" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.springframework:spring-orm:5.3.5" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.springframework:spring-aspects:5.3.5" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.springframework.data:spring-data-jpa:2.5.2" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.springframework.data:spring-data-commons:2.5.2" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.springframework:spring-orm:5.3.8" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.springframework:spring-aspects:5.3.8" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-configuration-processor:2.5.2" level="project" />
|
||||
<orderEntry type="library" name="Maven: io.springfox:springfox-boot-starter:3.0.0" level="project" />
|
||||
<orderEntry type="library" name="Maven: io.springfox:springfox-oas:3.0.0" level="project" />
|
||||
<orderEntry type="library" name="Maven: io.swagger.core.v3:swagger-annotations:2.1.2" level="project" />
|
||||
@ -122,7 +116,7 @@
|
||||
<orderEntry type="library" name="Maven: io.swagger:swagger-models:1.5.20" level="project" />
|
||||
<orderEntry type="library" name="Maven: io.springfox:springfox-swagger-ui:3.0.0" level="project" />
|
||||
<orderEntry type="library" name="Maven: com.fasterxml:classmate:1.5.1" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.slf4j:slf4j-api:1.7.30" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.slf4j:slf4j-api:1.7.31" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.springframework.plugin:spring-plugin-core:2.0.0.RELEASE" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.springframework.plugin:spring-plugin-metadata:2.0.0.RELEASE" level="project" />
|
||||
<orderEntry type="module-library">
|
||||
@ -136,18 +130,18 @@
|
||||
</orderEntry>
|
||||
<orderEntry type="library" name="Maven: org.apache.commons:commons-pool2:2.8.0" level="project" />
|
||||
<orderEntry type="library" name="Maven: mysql:mysql-connector-java:8.0.22" level="project" />
|
||||
<orderEntry type="library" name="Maven: io.netty:netty-handler:4.1.62.Final" level="project" />
|
||||
<orderEntry type="library" name="Maven: io.netty:netty-resolver:4.1.62.Final" level="project" />
|
||||
<orderEntry type="library" name="Maven: io.netty:netty-buffer:4.1.62.Final" level="project" />
|
||||
<orderEntry type="library" name="Maven: io.netty:netty-codec:4.1.62.Final" level="project" />
|
||||
<orderEntry type="library" name="Maven: io.netty:netty-codec-http:4.1.62.Final" level="project" />
|
||||
<orderEntry type="library" name="Maven: io.netty:netty-common:4.1.62.Final" level="project" />
|
||||
<orderEntry type="library" name="Maven: io.netty:netty-transport:4.1.62.Final" level="project" />
|
||||
<orderEntry type="library" name="Maven: io.netty:netty-transport-native-epoll:linux-x86_64:4.1.62.Final" level="project" />
|
||||
<orderEntry type="library" name="Maven: io.netty:netty-transport-native-unix-common:4.1.62.Final" level="project" />
|
||||
<orderEntry type="library" name="Maven: com.google.protobuf:protobuf-java:3.11.1" level="project" />
|
||||
<orderEntry type="library" name="Maven: io.netty:netty-handler:4.1.65.Final" level="project" />
|
||||
<orderEntry type="library" name="Maven: io.netty:netty-resolver:4.1.65.Final" level="project" />
|
||||
<orderEntry type="library" name="Maven: io.netty:netty-buffer:4.1.65.Final" level="project" />
|
||||
<orderEntry type="library" name="Maven: io.netty:netty-codec:4.1.65.Final" level="project" />
|
||||
<orderEntry type="library" name="Maven: io.netty:netty-codec-http:4.1.65.Final" level="project" />
|
||||
<orderEntry type="library" name="Maven: io.netty:netty-common:4.1.65.Final" level="project" />
|
||||
<orderEntry type="library" name="Maven: io.netty:netty-transport:4.1.65.Final" level="project" />
|
||||
<orderEntry type="library" name="Maven: io.netty:netty-transport-native-epoll:linux-x86_64:4.1.65.Final" level="project" />
|
||||
<orderEntry type="library" name="Maven: io.netty:netty-transport-native-unix-common:4.1.65.Final" level="project" />
|
||||
<orderEntry type="library" name="Maven: com.google.protobuf:protobuf-java:3.17.0" level="project" />
|
||||
<orderEntry type="library" name="Maven: cn.teaey.apns4j:apns4j:1.1.4" level="project" />
|
||||
<orderEntry type="library" name="Maven: commons-io:commons-io:2.6" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.apache.commons:commons-lang3:3.8.1" level="project" />
|
||||
<orderEntry type="library" name="Maven: org.apache.commons:commons-lang3:3.12.0" level="project" />
|
||||
</component>
|
||||
</module>
|
File diff suppressed because it is too large
Load Diff
@ -1,42 +1,34 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="AnalysisUIOptions">
|
||||
<option name="GROUP_BY_SEVERITY" value="true" />
|
||||
</component>
|
||||
<component name="AutoImportSettings">
|
||||
<option name="autoReloadType" value="SELECTIVE" />
|
||||
</component>
|
||||
<component name="ChangeListManager">
|
||||
<list default="true" id="bed47126-03b3-4370-a6c1-08503492974f" name="Default Changelist" comment="">
|
||||
<<<<<<< HEAD
|
||||
<change beforePath="$PROJECT_DIR$/../cim-server-sdk/src/main/java/com/farsunset/cim/sdk/server/group/SessionGroup.java" beforeDir="false" afterPath="$PROJECT_DIR$/../cim-server-sdk/src/main/java/com/farsunset/cim/sdk/server/group/SessionGroup.java" afterDir="false" />
|
||||
=======
|
||||
<change afterPath="$PROJECT_DIR$/src/main/java/com/farsunset/cim/config/properties/APNsProperties.java" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/src/main/java/com/farsunset/cim/config/properties/CIMProperties.java" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/cim-boot-server.iml" beforeDir="false" afterPath="$PROJECT_DIR$/cim-boot-server.iml" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/cim-boot-server.ipr" beforeDir="false" afterPath="$PROJECT_DIR$/cim-boot-server.ipr" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/cim-boot-server.iws" beforeDir="false" afterPath="$PROJECT_DIR$/cim-boot-server.iws" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/pom.xml" beforeDir="false" afterPath="$PROJECT_DIR$/pom.xml" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/src/main/java/com/farsunset/cim/BootApplication.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/farsunset/cim/BootApplication.java" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/src/main/java/com/farsunset/cim/config/CIMConfig.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/farsunset/cim/config/CIMConfig.java" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/src/main/java/com/farsunset/cim/service/impl/APNsServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/farsunset/cim/service/impl/APNsServiceImpl.java" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/src/main/resources/application.properties" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/resources/application.properties" afterDir="false" />
|
||||
>>>>>>> bcb7a59ef440a21ae7f3d7778e84f49e971e162f
|
||||
</list>
|
||||
<option name="SHOW_DIALOG" value="false" />
|
||||
<option name="HIGHLIGHT_CONFLICTS" value="true" />
|
||||
<option name="HIGHLIGHT_NON_ACTIVE_CHANGELIST" value="false" />
|
||||
<option name="LAST_RESOLUTION" value="IGNORE" />
|
||||
</component>
|
||||
<component name="DefaultGradleProjectSettings">
|
||||
<option name="isMigrated" value="true" />
|
||||
</component>
|
||||
<component name="FileTemplateManagerImpl">
|
||||
<option name="RECENT_TEMPLATES">
|
||||
<list>
|
||||
<option value="Class" />
|
||||
</list>
|
||||
</option>
|
||||
</component>
|
||||
<component name="Git.Settings">
|
||||
<option name="RECENT_GIT_ROOT_PATH" value="$PROJECT_DIR$/.." />
|
||||
</component>
|
||||
<component name="GitSEFilterConfiguration">
|
||||
<file-type-list>
|
||||
<filtered-out-file-type name="LOCAL_BRANCH" />
|
||||
<filtered-out-file-type name="REMOTE_BRANCH" />
|
||||
<filtered-out-file-type name="TAG" />
|
||||
<filtered-out-file-type name="COMMIT_BY_MESSAGE" />
|
||||
</file-type-list>
|
||||
</component>
|
||||
<component name="ProjectId" id="1PxWQToGq56jcmMz176UjXWLSaU" />
|
||||
<component name="ProjectId" id="1vwGZ8Dv1qMn07dI9m3HkVqLJcd" />
|
||||
<component name="ProjectLevelVcsManager" settingsEditedManually="true">
|
||||
<ConfirmationsSetting value="2" id="Add" />
|
||||
</component>
|
||||
@ -52,69 +44,27 @@
|
||||
<property name="RunOnceActivity.OpenProjectViewOnStart" value="true" />
|
||||
<property name="RunOnceActivity.ShowReadmeOnStart" value="true" />
|
||||
<property name="WebServerToolWindowFactoryState" value="false" />
|
||||
<property name="aspect.path.notification.shown" value="true" />
|
||||
<property name="last_opened_file_path" value="$PROJECT_DIR$" />
|
||||
<property name="node.js.detected.package.eslint" value="true" />
|
||||
<property name="node.js.detected.package.tslint" value="true" />
|
||||
<property name="node.js.path.for.package.eslint" value="project" />
|
||||
<property name="node.js.path.for.package.tslint" value="project" />
|
||||
<property name="node.js.selected.package.eslint" value="(autodetect)" />
|
||||
<property name="node.js.selected.package.tslint" value="(autodetect)" />
|
||||
<property name="nodejs_interpreter_path.stuck_in_default_project" value="undefined stuck path" />
|
||||
<property name="nodejs_npm_path_reset_for_default_project" value="true" />
|
||||
<property name="nodejs_package_manager_path" value="npm" />
|
||||
<property name="settings.editor.selected.configurable" value="configurable.group.appearance" />
|
||||
<property name="show.migrate.to.gradle.popup" value="false" />
|
||||
<property name="settings.editor.selected.configurable" value="reference.projectsettings.compiler.annotationProcessors" />
|
||||
</component>
|
||||
<component name="ReactorSettings">
|
||||
<option name="notificationShown" value="true" />
|
||||
</component>
|
||||
<component name="RecentsManager">
|
||||
<key name="CopyFile.RECENT_KEYS">
|
||||
<recent name="$PROJECT_DIR$" />
|
||||
<recent name="$PROJECT_DIR$/libs" />
|
||||
<recent name="$PROJECT_DIR$/src/main/resources" />
|
||||
<recent name="$PROJECT_DIR$/src/main/java/com/farsunset/cim/component" />
|
||||
<recent name="$PROJECT_DIR$/src/main/java/com/farsunset/cim/handler" />
|
||||
</key>
|
||||
<key name="CopyClassDialog.RECENTS_KEY">
|
||||
<recent name="com.farsunset.cim.config" />
|
||||
<recent name="com.farsunset.cim.mvc.controller.admin" />
|
||||
<recent name="com.farsunset.cim.constants" />
|
||||
<recent name="com.farsunset.cim.component.redis" />
|
||||
<recent name="com.farsunset.cim.service.impl" />
|
||||
</key>
|
||||
</component>
|
||||
<component name="RunManager">
|
||||
<configuration name="BootApplication" type="SpringBootApplicationConfigurationType" factoryName="Spring Boot" temporary="true" nameIsGenerated="true">
|
||||
<configuration name="BootApplication" type="SpringBootApplicationConfigurationType" factoryName="Spring Boot">
|
||||
<module name="cim-boot-server" />
|
||||
<extension name="coverage">
|
||||
<pattern>
|
||||
<option name="PATTERN" value="com.farsunset.cim.*" />
|
||||
<option name="ENABLED" value="true" />
|
||||
</pattern>
|
||||
</extension>
|
||||
<option name="SPRING_BOOT_MAIN_CLASS" value="com.farsunset.cim.BootApplication" />
|
||||
<method v="2">
|
||||
<option name="Make" enabled="true" />
|
||||
</method>
|
||||
</configuration>
|
||||
<recent_temporary>
|
||||
<list>
|
||||
<item itemvalue="Spring Boot.BootApplication" />
|
||||
</list>
|
||||
</recent_temporary>
|
||||
</component>
|
||||
<component name="SpellCheckerSettings" RuntimeDictionaries="0" Folders="0" CustomDictionaries="0" DefaultDictionary="application-level" UseSingleDictionary="true" transferred="true" />
|
||||
<component name="SvnConfiguration">
|
||||
<configuration />
|
||||
</component>
|
||||
<component name="TaskManager">
|
||||
<task active="true" id="Default" summary="Default task">
|
||||
<changelist id="bed47126-03b3-4370-a6c1-08503492974f" name="Default Changelist" comment="" />
|
||||
<created>1557734989980</created>
|
||||
<created>1627465791411</created>
|
||||
<option name="number" value="Default" />
|
||||
<option name="presentableId" value="Default" />
|
||||
<<<<<<< HEAD
|
||||
<updated>1557734989980</updated>
|
||||
<workItem from="1557734991214" duration="96000" />
|
||||
<workItem from="1557735150926" duration="502000" />
|
||||
@ -146,47 +96,57 @@
|
||||
<workItem from="1621956423905" duration="116000" />
|
||||
<workItem from="1622640308758" duration="60000" />
|
||||
<workItem from="1623163801922" duration="23000" />
|
||||
=======
|
||||
<updated>1627465791411</updated>
|
||||
<workItem from="1627465794654" duration="349000" />
|
||||
<workItem from="1627466201558" duration="208000" />
|
||||
<workItem from="1627466418029" duration="385000" />
|
||||
<workItem from="1627466811924" duration="208000" />
|
||||
<workItem from="1627467028377" duration="54000" />
|
||||
<workItem from="1627467091404" duration="120000" />
|
||||
<workItem from="1627467220173" duration="16000" />
|
||||
<workItem from="1627467243985" duration="40000" />
|
||||
<workItem from="1627467292126" duration="21000" />
|
||||
<workItem from="1627467321088" duration="57000" />
|
||||
<workItem from="1627467385404" duration="49000" />
|
||||
<workItem from="1627467441539" duration="34000" />
|
||||
<workItem from="1627467484204" duration="15000" />
|
||||
<workItem from="1627467507955" duration="492000" />
|
||||
>>>>>>> bcb7a59ef440a21ae7f3d7778e84f49e971e162f
|
||||
</task>
|
||||
<servers />
|
||||
</component>
|
||||
<component name="TypeScriptGeneratedFilesManager">
|
||||
<option name="version" value="3" />
|
||||
</component>
|
||||
<component name="Vcs.Log.Tabs.Properties">
|
||||
<option name="TAB_STATES">
|
||||
<map>
|
||||
<entry key="MAIN">
|
||||
<value>
|
||||
<State />
|
||||
</value>
|
||||
</entry>
|
||||
</map>
|
||||
</option>
|
||||
<option name="oldMeFiltersMigrated" value="true" />
|
||||
</component>
|
||||
<component name="XDebuggerManager">
|
||||
<breakpoint-manager>
|
||||
<breakpoints>
|
||||
<line-breakpoint enabled="true" type="java-line">
|
||||
<url>jar://$PROJECT_DIR$/lib/cim-server-sdk-mina-3.7.0.jar!/com/farsunset/cim/sdk/server/handler/CIMNioSocketAcceptor.class</url>
|
||||
<line>72</line>
|
||||
<option name="timeStamp" value="5" />
|
||||
</line-breakpoint>
|
||||
<line-breakpoint enabled="true" type="java-line">
|
||||
<url>jar://$PROJECT_DIR$/lib/cim-server-sdk-netty-3.7.0.jar!/com/farsunset/cim/sdk/server/coder/WebMessageEncoder.class</url>
|
||||
<line>22</line>
|
||||
<option name="timeStamp" value="10" />
|
||||
</line-breakpoint>
|
||||
<line-breakpoint enabled="true" type="java-line">
|
||||
<url>file://$PROJECT_DIR$/src/main/java/com/farsunset/cim/component/message/PushMessageListener.java</url>
|
||||
<line>24</line>
|
||||
<option name="timeStamp" value="16" />
|
||||
<url>file://$PROJECT_DIR$/src/main/java/com/farsunset/cim/service/impl/APNsServiceImpl.java</url>
|
||||
<line>49</line>
|
||||
<option name="timeStamp" value="1" />
|
||||
</line-breakpoint>
|
||||
</breakpoints>
|
||||
</breakpoint-manager>
|
||||
</component>
|
||||
<component name="masterDetails">
|
||||
<states>
|
||||
<state key="ProjectJDKs.UI">
|
||||
<settings>
|
||||
<last-edited>1.8</last-edited>
|
||||
<splitter-proportions>
|
||||
<option name="proportions">
|
||||
<list>
|
||||
<option value="0.2" />
|
||||
</list>
|
||||
</option>
|
||||
</splitter-proportions>
|
||||
</settings>
|
||||
</state>
|
||||
</states>
|
||||
<component name="XSLT-Support.FileAssociations.UIState">
|
||||
<expand />
|
||||
<select />
|
||||
</component>
|
||||
<component name="com.intellij.coverage.CoverageDataManagerImpl">
|
||||
<SUITE FILE_PATH="coverage/cim_boot_server$BootApplication.ic" NAME="BootApplication Coverage Results" MODIFIED="1627466289207" SOURCE_PROVIDER="com.intellij.coverage.DefaultCoverageFileProvider" RUNNER="idea" COVERAGE_BY_TEST_ENABLED="false" COVERAGE_TRACING_ENABLED="false" />
|
||||
</component>
|
||||
</project>
|
@ -11,14 +11,14 @@
|
||||
<parent>
|
||||
<groupId>org.springframework.boot</groupId>
|
||||
<artifactId>spring-boot-starter-parent</artifactId>
|
||||
<version>2.4.4</version>
|
||||
<version>2.5.2</version>
|
||||
<relativePath/>
|
||||
</parent>
|
||||
|
||||
<properties>
|
||||
<java.version>1.8</java.version>
|
||||
<netty.version>4.1.62.Final</netty.version>
|
||||
<protobuf.version>3.11.1</protobuf.version>
|
||||
<netty.version>4.1.65.Final</netty.version>
|
||||
<protobuf.version>3.17.0</protobuf.version>
|
||||
<mysql.jdbc.version>8.0.22</mysql.jdbc.version>
|
||||
<common.pool.version>2.8.0</common.pool.version>
|
||||
<swagger.version>3.0.0</swagger.version>
|
||||
@ -47,6 +47,13 @@
|
||||
<groupId>org.springframework.boot</groupId>
|
||||
<artifactId>spring-boot-starter-data-jpa</artifactId>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>org.springframework.boot</groupId>
|
||||
<artifactId>spring-boot-configuration-processor</artifactId>
|
||||
<optional>true</optional>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>io.springfox</groupId>
|
||||
<artifactId>springfox-boot-starter</artifactId>
|
||||
@ -134,7 +141,6 @@
|
||||
<dependency>
|
||||
<groupId>org.apache.commons</groupId>
|
||||
<artifactId>commons-lang3</artifactId>
|
||||
<version>3.8.1</version>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
|
||||
|
@ -21,10 +21,16 @@
|
||||
*/
|
||||
package com.farsunset.cim;
|
||||
|
||||
import com.farsunset.cim.config.properties.APNsProperties;
|
||||
import com.farsunset.cim.config.properties.CIMProperties;
|
||||
import org.springframework.boot.SpringApplication;
|
||||
import org.springframework.boot.autoconfigure.SpringBootApplication;
|
||||
import org.springframework.boot.context.properties.EnableConfigurationProperties;
|
||||
|
||||
@SpringBootApplication
|
||||
@EnableConfigurationProperties({
|
||||
APNsProperties.class,
|
||||
CIMProperties.class})
|
||||
public class BootApplication {
|
||||
public static void main(String[] args) {
|
||||
SpringApplication.run(BootApplication.class, args);
|
||||
|
@ -67,10 +67,12 @@ public class BindHandler implements CIMRequestHandler {
|
||||
session.setDeviceName(body.get("deviceName"));
|
||||
session.setAppVersion(body.get("appVersion"));
|
||||
session.setOsVersion(body.get("osVersion"));
|
||||
session.setLanguage(body.get("language"));
|
||||
|
||||
channel.attr(ChannelAttr.UID).set(uid);
|
||||
channel.attr(ChannelAttr.CHANNEL).set(session.getChannel());
|
||||
channel.attr(ChannelAttr.DEVICE_ID).set(session.getDeviceId());
|
||||
channel.attr(ChannelAttr.LANGUAGE).set(session.getLanguage());
|
||||
|
||||
/*
|
||||
*存储到数据库
|
||||
|
@ -1,6 +1,7 @@
|
||||
package com.farsunset.cim.config;
|
||||
|
||||
import com.farsunset.cim.component.handler.annotation.CIMHandler;
|
||||
import com.farsunset.cim.config.properties.CIMProperties;
|
||||
import com.farsunset.cim.sdk.server.group.SessionGroup;
|
||||
import com.farsunset.cim.sdk.server.group.TagSessionGroup;
|
||||
import com.farsunset.cim.sdk.server.handler.CIMNioSocketAcceptor;
|
||||
@ -42,12 +43,11 @@ public class CIMConfig implements CIMRequestHandler, ApplicationListener<Applica
|
||||
|
||||
|
||||
@Bean(destroyMethod = "destroy")
|
||||
public CIMNioSocketAcceptor getNioSocketAcceptor(@Value("${cim.app.port}") int port,
|
||||
@Value("${cim.websocket.port}") int websocketPort) {
|
||||
public CIMNioSocketAcceptor getNioSocketAcceptor(CIMProperties properties) {
|
||||
|
||||
return new CIMNioSocketAcceptor.Builder()
|
||||
.setAppPort(port)
|
||||
.setWebsocketPort(websocketPort)
|
||||
.setAppPort(properties.getAppPort())
|
||||
.setWebsocketPort(properties.getWebsocketPort())
|
||||
.setOuterRequestHandler(this)
|
||||
.build();
|
||||
|
||||
|
@ -0,0 +1,74 @@
|
||||
/*
|
||||
* Copyright 2013-2019 Xia Jun(3979434@qq.com).
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*
|
||||
***************************************************************************************
|
||||
* *
|
||||
* Website : http://www.farsunset.com *
|
||||
* *
|
||||
***************************************************************************************
|
||||
*/
|
||||
package com.farsunset.cim.config.properties;
|
||||
|
||||
import org.springframework.boot.context.properties.ConfigurationProperties;
|
||||
|
||||
@ConfigurationProperties(prefix = "cim.apns")
|
||||
public class APNsProperties {
|
||||
|
||||
private boolean debug;
|
||||
|
||||
private final P12 p12 = new P12();
|
||||
|
||||
public static class P12 {
|
||||
private String file;
|
||||
private String password;
|
||||
|
||||
public void setFile(String file) {
|
||||
this.file = file;
|
||||
}
|
||||
|
||||
public void setPassword(String password) {
|
||||
this.password = password;
|
||||
}
|
||||
|
||||
public String getFile() {
|
||||
return file;
|
||||
}
|
||||
|
||||
public String getPassword() {
|
||||
return password;
|
||||
}
|
||||
}
|
||||
|
||||
public P12 getP12() {
|
||||
return p12;
|
||||
}
|
||||
|
||||
public boolean isDebug() {
|
||||
return debug;
|
||||
}
|
||||
|
||||
public void setDebug(boolean debug) {
|
||||
this.debug = debug;
|
||||
}
|
||||
|
||||
public String getP12File() {
|
||||
return p12.file;
|
||||
}
|
||||
|
||||
|
||||
public String getP12Password() {
|
||||
return p12.password;
|
||||
}
|
||||
}
|
@ -0,0 +1,74 @@
|
||||
/*
|
||||
* Copyright 2013-2019 Xia Jun(3979434@qq.com).
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*
|
||||
***************************************************************************************
|
||||
* *
|
||||
* Website : http://www.farsunset.com *
|
||||
* *
|
||||
***************************************************************************************
|
||||
*/
|
||||
package com.farsunset.cim.config.properties;
|
||||
|
||||
import org.springframework.boot.context.properties.ConfigurationProperties;
|
||||
|
||||
|
||||
@ConfigurationProperties(prefix = "cim")
|
||||
public class CIMProperties {
|
||||
|
||||
private final App app = new App();
|
||||
|
||||
private final Websocket websocket = new Websocket();
|
||||
|
||||
public App getApp() {
|
||||
return app;
|
||||
}
|
||||
|
||||
public Websocket getWebsocket() {
|
||||
return websocket;
|
||||
}
|
||||
|
||||
public static class App {
|
||||
|
||||
private Integer port;
|
||||
|
||||
public void setPort(Integer port) {
|
||||
this.port = port;
|
||||
}
|
||||
|
||||
public Integer getPort() {
|
||||
return port;
|
||||
}
|
||||
}
|
||||
|
||||
public static class Websocket {
|
||||
private Integer port;
|
||||
|
||||
public Integer getPort() {
|
||||
return port;
|
||||
}
|
||||
|
||||
public void setPort(Integer port) {
|
||||
this.port = port;
|
||||
}
|
||||
}
|
||||
|
||||
public Integer getAppPort() {
|
||||
return app.port;
|
||||
}
|
||||
|
||||
public Integer getWebsocketPort() {
|
||||
return websocket.port;
|
||||
}
|
||||
}
|
@ -97,6 +97,12 @@ public class Session implements Serializable {
|
||||
@Column(name = "os_version")
|
||||
private String osVersion;
|
||||
|
||||
/**
|
||||
* 终端语言
|
||||
*/
|
||||
@Column(name = "language")
|
||||
private String language;
|
||||
|
||||
/**
|
||||
* 登录时间
|
||||
*/
|
||||
@ -230,6 +236,14 @@ public class Session implements Serializable {
|
||||
this.location = location;
|
||||
}
|
||||
|
||||
public String getLanguage() {
|
||||
return language;
|
||||
}
|
||||
|
||||
public void setLanguage(String language) {
|
||||
this.language = language;
|
||||
}
|
||||
|
||||
public int getState() {
|
||||
return state;
|
||||
}
|
||||
|
@ -26,6 +26,7 @@ import cn.teaey.apns4j.network.ApnsChannel;
|
||||
import cn.teaey.apns4j.network.ApnsChannelFactory;
|
||||
import cn.teaey.apns4j.network.ApnsGateway;
|
||||
import cn.teaey.apns4j.protocol.ApnsPayload;
|
||||
import com.farsunset.cim.config.properties.APNsProperties;
|
||||
import com.farsunset.cim.sdk.server.model.Message;
|
||||
import com.farsunset.cim.service.APNsService;
|
||||
import org.apache.commons.io.IOUtils;
|
||||
@ -33,7 +34,6 @@ import org.apache.commons.lang3.StringUtils;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.beans.factory.annotation.Value;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.io.InputStream;
|
||||
@ -46,14 +46,12 @@ public class APNsServiceImpl implements APNsService {
|
||||
private final ApnsChannelFactory apnsChannelFactory;
|
||||
|
||||
@Autowired
|
||||
public APNsServiceImpl(@Value("${apple.apns.p12.file}") String p12File,
|
||||
@Value("${apple.apns.p12.password}") String password,
|
||||
@Value("${apple.apns.debug}") boolean isDebug){
|
||||
InputStream stream = getClass().getResourceAsStream(p12File);
|
||||
public APNsServiceImpl(APNsProperties properties){
|
||||
InputStream stream = getClass().getResourceAsStream(properties.getP12File());
|
||||
apnsChannelFactory = Apns4j.newChannelFactoryBuilder()
|
||||
.keyStoreMeta(stream)
|
||||
.keyStorePwd(password)
|
||||
.apnsGateway(isDebug ? ApnsGateway.DEVELOPMENT : ApnsGateway.PRODUCTION)
|
||||
.keyStorePwd(properties.getP12Password())
|
||||
.apnsGateway(properties.isDebug() ? ApnsGateway.DEVELOPMENT : ApnsGateway.PRODUCTION)
|
||||
.build();
|
||||
}
|
||||
|
||||
|
@ -58,9 +58,12 @@ spring.messages.basename=i18n/messages
|
||||
##################################################################
|
||||
# CIM Config #
|
||||
##################################################################
|
||||
|
||||
#commented to disable this port.
|
||||
cim.app.port=23456
|
||||
cim.websocket.port=34567
|
||||
|
||||
apple.apns.debug=false
|
||||
apple.apns.p12.password=123
|
||||
apple.apns.p12.file= /apns/app.p12
|
||||
#please setting your p12 info.
|
||||
cim.apns.p12.file=/apns/app.p12
|
||||
cim.apns.p12.password=123
|
||||
cim.apns.debug=false
|
||||
|
@ -32,6 +32,7 @@ module.common.headlogo = 头像
|
||||
module.common.homepage = 主页
|
||||
module.common.website = 网址
|
||||
module.common.text = 文字
|
||||
module.common.language = 语言
|
||||
|
||||
module.global.error.500.hint = 服务程序发生内部错误
|
||||
module.global.error.400.hint = 请求参数类型不正确
|
||||
|
@ -48,13 +48,14 @@ function doSendMessage(){
|
||||
<table style="width: 100%" class="utable">
|
||||
<thead>
|
||||
<tr class="tableHeader">
|
||||
<th width="10%"><@spring.message 'module.console.cimsession.account'/></th>
|
||||
<th width="10%"><@spring.message 'module.console.cimsession.nid'/></th>
|
||||
<th width="10%"><@spring.message 'module.console.cimsession.channel'/></th>
|
||||
<th width="20%"><@spring.message 'module.console.cimsession.deviceid'/></th>
|
||||
<th width="20%"><@spring.message 'module.console.cimsession.device.name'/></th>
|
||||
<th width="10%"><@spring.message 'module.console.cimsession.app.version'/></th>
|
||||
<th width="10%"><@spring.message 'module.console.cimsession.os.version'/></th>
|
||||
<th width="8%"><@spring.message 'module.console.cimsession.account'/></th>
|
||||
<th width="8%"><@spring.message 'module.console.cimsession.nid'/></th>
|
||||
<th width="8%"><@spring.message 'module.console.cimsession.channel'/></th>
|
||||
<th width="15%"><@spring.message 'module.console.cimsession.deviceid'/></th>
|
||||
<th width="15%"><@spring.message 'module.console.cimsession.device.name'/></th>
|
||||
<th width="8%"><@spring.message 'module.console.cimsession.app.version'/></th>
|
||||
<th width="8%"><@spring.message 'module.console.cimsession.os.version'/></th>
|
||||
<th width="10%"><@spring.message 'module.common.language'/></th>
|
||||
<th width="10%"><@spring.message 'module.console.cimsession.online.time'/></th>
|
||||
<th width="10%"><@spring.message "module.common.operation"/></th>
|
||||
</tr>
|
||||
@ -69,6 +70,7 @@ function doSendMessage(){
|
||||
<td>${cimsession.deviceName! }</td>
|
||||
<td>${cimsession.appVersion! }</td>
|
||||
<td>${cimsession.osVersion! }</td>
|
||||
<td>${cimsession.language! }</td>
|
||||
<td>
|
||||
<@spring.messageArgs "module.console.cimsession.time.format",[((.now?long - cimsession.bindTime)/1000)?round?c] />
|
||||
</td>
|
||||
|
File diff suppressed because one or more lines are too long
@ -63,6 +63,7 @@ CIMPushManager.bind = function (account) {
|
||||
body.getDataMap().set("packageName", APP_PACKAGE);
|
||||
body.getDataMap().set("deviceId", deviceId);
|
||||
body.getDataMap().set("deviceName", browser.name);
|
||||
body.getDataMap().set("language", navigator.language);
|
||||
CIMPushManager.sendRequest(body);
|
||||
};
|
||||
|
||||
|
Binary file not shown.
@ -63,6 +63,7 @@ CIMPushManager.bind = function (account) {
|
||||
body.getDataMap().set("packageName", APP_PACKAGE);
|
||||
body.getDataMap().set("deviceId", deviceId);
|
||||
body.getDataMap().set("deviceName", browser.name);
|
||||
body.getDataMap().set("language", navigator.language);
|
||||
CIMPushManager.sendRequest(body);
|
||||
};
|
||||
|
||||
|
0
cim-client-sdk/cim-android-sdk/cim-android-sdk.iml
Executable file → Normal file
0
cim-client-sdk/cim-android-sdk/cim-android-sdk.iml
Executable file → Normal file
@ -28,11 +28,13 @@ import android.content.pm.PackageManager.NameNotFoundException;
|
||||
import android.net.ConnectivityManager;
|
||||
import android.net.NetworkInfo;
|
||||
import android.os.Build;
|
||||
import android.os.LocaleList;
|
||||
import android.text.TextUtils;
|
||||
import com.farsunset.cim.sdk.android.logger.CIMLogger;
|
||||
import com.farsunset.cim.sdk.android.constant.CIMConstant;
|
||||
import com.farsunset.cim.sdk.android.model.SentBody;
|
||||
|
||||
import java.util.Locale;
|
||||
import java.util.UUID;
|
||||
|
||||
/**
|
||||
@ -161,6 +163,7 @@ public class CIMPushManager {
|
||||
sent.put("appVersion", getVersionName(context));
|
||||
sent.put("osVersion", Build.VERSION.RELEASE);
|
||||
sent.put("packageName", context.getPackageName());
|
||||
sent.put("language", getLanguage());
|
||||
sent.setTimestamp(System.currentTimeMillis());
|
||||
sendRequest(context, sent);
|
||||
}
|
||||
@ -293,4 +296,10 @@ public class CIMPushManager {
|
||||
return deviceId;
|
||||
}
|
||||
|
||||
private static String getLanguage(){
|
||||
|
||||
Locale locale = Build.VERSION.SDK_INT >= Build.VERSION_CODES.N ? LocaleList.getDefault().get(0) : Locale.getDefault();
|
||||
|
||||
return locale.getLanguage() + "-" + locale.getCountry();
|
||||
}
|
||||
}
|
||||
|
@ -9,4 +9,5 @@ public interface ChannelAttr {
|
||||
AttributeKey<String> ID = AttributeKey.valueOf("id");
|
||||
AttributeKey<String> DEVICE_ID = AttributeKey.valueOf("device_id");
|
||||
AttributeKey<String> TAG = AttributeKey.valueOf("tag");
|
||||
AttributeKey<String> LANGUAGE = AttributeKey.valueOf("language");
|
||||
}
|
||||
|
Binary file not shown.
@ -67,6 +67,7 @@ const onbindAccount = CIMPushManager.bindAccount = function (account) {
|
||||
body.getDataMap().set("packageName", APP_PACKAGE);
|
||||
body.getDataMap().set("deviceId", deviceId);
|
||||
body.getDataMap().set("deviceName", browser.name);
|
||||
body.getDataMap().set("language", navigator.language);
|
||||
CIMPushManager.sendRequest(body);
|
||||
};
|
||||
|
||||
|
@ -3,16 +3,16 @@
|
||||
<head>
|
||||
<meta charset="utf-8"/>
|
||||
<title>CIM Webclient </title>
|
||||
<link rel="shortcut icon" href="/image/favicon.ico" type="image/x-icon">
|
||||
<link charset="utf-8" rel="stylesheet" href="/bootstrap-3.3.7-dist/css/bootstrap.min.css" />
|
||||
<link charset="utf-8" rel="stylesheet" href="/css/common.css" />
|
||||
<script type="text/javascript" src="/js/jquery-3.3.1.min.js"></script>
|
||||
<script type="text/javascript" src="/bootstrap-3.3.7-dist/js/bootstrap.min.js"></script>
|
||||
<script type="text/javascript" src="/js/common.js"></script>
|
||||
<script type="text/javascript" src="/js/cim/message.js"></script>
|
||||
<script type="text/javascript" src="/js/cim/replybody.js"></script>
|
||||
<script type="text/javascript" src="/js/cim/sentbody.js"></script>
|
||||
<script type="text/javascript" src="/js/cim/cim.web.sdk.js"></script>
|
||||
<link rel="shortcut icon" href="./image/favicon.ico" type="image/x-icon">
|
||||
<link charset="utf-8" rel="stylesheet" href="./css/bootstrap.min.css" />
|
||||
<link charset="utf-8" rel="stylesheet" href="./css/common.css" />
|
||||
<script type="text/javascript" src="./js/jquery-3.3.1.min.js"></script>
|
||||
<script type="text/javascript" src="./js/bootstrap.min.js"></script>
|
||||
<script type="text/javascript" src="./js/common.js"></script>
|
||||
<script type="text/javascript" src="./js/cim/message.js"></script>
|
||||
<script type="text/javascript" src="./js/cim/replybody.js"></script>
|
||||
<script type="text/javascript" src="./js/cim/sentbody.js"></script>
|
||||
<script type="text/javascript" src="./js/cim/cim.web.sdk.js"></script>
|
||||
</head>
|
||||
|
||||
|
||||
@ -125,7 +125,7 @@
|
||||
<div class="modal-content" >
|
||||
<div class="modal-body" style="padding:0px;" >
|
||||
<div style="height:200px;text-align: center; background: #5FA0D3; color: #ffffff; border: 0px; border-top-left-radius: 4px; border-top-right-radius: 4px;">
|
||||
<img src="/image/icon.png" style="height: 72px;width: 72px;margin-top:40px;"/>
|
||||
<img src="./image/icon.png" style="height: 72px;width: 72px;margin-top:40px;"/>
|
||||
<div style="margin-top: 20px; color: #ffffff;font-size: 16px;">请输入一个帐号用于登录,随后接收推送消息</div>
|
||||
</div>
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user