Java SMPP 库比较

2024-06-22

我们即将开始一个需要使用 SMPP 作为主要集成交换渠道的项目。现在,由于 SMS 不一定是我们业务的核心,因此我想使用 Java 的 SMPP 库,这样麻烦最少。除了遵循实际的协议之外,我们不太可能需要更高级的功能或在幕后进行调整。

为此,我列出了一些可能的选择:

  • Logica 的开放 SMPP
  • 阿帕奇骆驼
  • JSMPP
  • Twitter 的 Cloudhopper

那些在使用方面更有经验的人可以向我提供一些他们的经验吗?

编辑:只是为了给用例提供范围,我们将发送和接收 SMS,因此该库应该希望通过客户端操作和服务器侦听器实现使生活变得轻松。


我都用过jSMPP https://jsmpp.org/ and cloudhopper-smpp https://github.com/twitter/cloudhopper-smpp对于涉及在以下情况下通过 smpp 发送和接收 SMS 的单独项目:

  • 收到中高数量的 MO。
  • 发送大量 MT(最多 70 个/秒)。

这两个库都表现良好,而且 IMO jSMPP 更加用户友好,可以立即开始编码。但我在使用 GitHub 的最新版本时遇到了一些错误,这些错误仍然没有修复。

使用后云雀,我认为学习曲线是非常值得的,与 jSMPP(主观)相比,它有点陡峭。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Java SMPP 库比较 的相关文章

  • Java Set 和 List 接口的组合

    我有一个数据结构 我目前正在使用它ArrayList 我意识到在这个结构中我不希望出现任何重复项 我的第一个想法是使用某种形式的集合 但是顺序也很重要 经过一番谷歌搜索和搜索我发现的集合文档LinkedHashSet这几乎可以完成工作 不幸
  • JUnit:为测试类设置事务边界

    我想在开始任何测试方法之前启动数据库事务 并在运行所有测试结束时回滚所有事务 怎么做 我应该使用什么注释 RunWith SpringJUnit4ClassRunner class ContextConfiguration location
  • 解决遗留 junit 测试套件中的 java 类路径地狱

    假设我有一个旧版 JUnit 测试套件 其中包含以下测试 public class AwesomeTest public void testBusinessLogic awesome mocking library public class
  • Java - 加载 .OBJ 文件

    我希望能够从 obj 文件获取信息 例如子组件的名称 那里有装载机可以做到这一点吗 Java3D 有一个 ObjectFile 但是我见过的方法列表让我觉得它不完全是我想要的 我自己解析文件会更好吗 谢谢 将要 几个月前我写了一个 java
  • 在自定义 CellRenderer 中重写 createToolTip()

    我正在尝试为 JTable 的特定列获取自定义工具提示 我已经创建了一个 CellRenderer 我已经成功更改了其他特定于单元格的属性 private class CustomCellRenderer extends DefaultTa
  • 如何删除 JComboBox 的“单击并查看下拉菜单”功能?

    我有一个 JComboBox 它使用 GlazedLists 添加预输入功能 我希望用户输入一个字符串并看到预先输入的内容 这要归功于 Glazedlists 但是 我不希望用户能够单击组合框的向下箭头并检查下拉列表 我已使向下箭头不可见并
  • Kafka模板和Kafka生产者有什么区别?

    正如我所见 Kafka 模板内部使用了 Kafka 生产者 我只是想知道确切的区别是什么 此外 与 Kafka 生产者相比 我发现 Kafka 模板中提供了许多可用的 send 方法 请帮我解决一下 如果有人知道更多的话 生产者是一种模式
  • 在 Android 的视图中创建透明的圆形切口

    我正在尝试创建一个半透明的帮助叠加层 以便在用户首次打开应用程序时显示在我的活动的主屏幕上 我想通过 剪切 与按钮位置相对应的覆盖层部分来突出显示主布局中包含的按钮 并使用 setContentView 进行膨胀 并使剪切部分透明 覆盖层是
  • 使用 Spring 依赖注入时,Hibernate SessionFactory 始终为 null

    我得到了NullpointerException在我的保存方法中CityDaoImpl 看来sessionFactory没有自动装配 因为在调试时发现 sessionFactory 从未被注入CityDaoImpl 我浏览了很多答案 但没有
  • 未知的 UTF-8 代码单元闭合双引号

    我的问题如下 我正在读取一个 XML 文件 其文本节点部分包含 UTF 8 版本的打开和关闭双引号 文本被提取 缩短为 3999 字节并放入新的 XML 格式 然后保存为文件 虽然 Notepad 在输入文件中正确显示了这两个符号 但输出文
  • Oreo 8.0 -“sendTextMessage()”未将消息保存到已发送文件夹

    我尝试使用 sendTextMessage 或 sendMultipartTextMessage 从我自己的应用程序发送短信 对于高于 API 19 KitKat 的手机 此消息将保存到已发送文件夹中 然而 在我的 Android 8 0
  • Java 中 getter 的命名约定有多重要?

    我非常相信一致性 因此也相信惯例 然而 我目前正在用 Java 开发一个框架 其中这些约定 特别是get set前缀约定 似乎妨碍了可读性 例如 有些课程会有id and name属性和使用o getId 代替o id 由于多种原因 这似乎
  • 无法在 IntelliJ IDEA 中导入 javax.validation.constraints

    I can t import that simple library i have all jar files also i tried Ivalidate Caches Restart Maybe i have to add valida
  • 如何重写 Lombok Setter 方法

    我在我的项目和生成中使用 lombokSetters and Getters using Setters and GettersPOJO 类之上的注释 我正在尝试覆盖属性的 setters 方法 但它不起作用 我想检查 JSON 属性是 E
  • 无法远程连接JMX?

    由于某些奇怪的原因 我无法使用VisualVM or jconsole到 JMX 用于启动要监控的VM的参数 Dcom sun management jmxremote Dcom sun management jmxremote authe
  • Whitelabel 错误页面 Swagger,此应用程序没有 /error 的显式映射,因此您将其视为后备 swagger2:3.0.0-SNAPSHOT

    尝试在 Spring Boot 2 3 1 中配置 swagger 摇篮配置 repositories mavenCentral maven url http oss jfrog org artifactory oss snapshot l
  • 如何设置两种不同的格式样式并将它们映射到 Eclipse 中的不同快捷方式

    每次在 Eclipse 中打开文件时 我都想将源代码格式化为 Allman 风格的缩进 每次保存时 它都应该格式化为办公室中指定的样式 我可以手动执行此操作并有两个热键 Ctrl Alt PgUp 我的方式 Ctrl Alt Page Do
  • 使用 jsoup 收集倒计时器并为 android 设置计时器

    我想解析 eBay 上的倒计时器 span class 5g 20h span 如何用 jsoup 解析它以在 android studio 上创建倒计时器 我可以像平常一样解析它吗element 像下面这样 更新 getMsFromStr
  • 按下 JButton 时运行函数

    我正在尝试用java编写一个程序 使用机器人每隔几秒按一次特定的键 它有一个带有开始和停止按钮的 GUI 以及一个告诉其处于哪个状态的标签 到目前为止 我已经完成了所有工作 除了当我单击 开始 时 它运行我的机器人功能的循环 这是无限的 没
  • 使用 == 比较 Long 对象类型和原始 int

    我有一个通过调用返回 Long 对象数据类型的方法 resp getResultCode 我想比较一下HttpStatus GONE value 它实际上只返回一个原始 int 值410 Long 会拆箱自身以正确地与 int 原语进行比较

随机推荐

  • FIRMessaging 委托错误

    我尝试添加 FIRMessagingDelegate 但 Xcode 给出错误 Cannot find protocol declaration for FIRMessagingDelegate 我导入了 FirebaseMessaging
  • 如何使用 JavaScript/CSS 制作圆形 ScrollBox?

    我想重新创建圆形滚动框 如下面的 GIF 所示 我不认为如果使用 css 制作圆形滚动框是可能的 那么我想添加padding left给每个孩子ul使滚动框显示为圆形 为了达成这个 向 li 1 添加 0px 的内边距向 li 2 添加 2
  • 致命错误:未捕获错误:无法使用标量作为数组警告

    我有以下代码 final 1 gt 2 id 1 final id 0 3 该代码似乎工作正常 但我收到此警告 警告 不能在第 X 行中将标量值用作数组 符合 final id 0 3 谁能告诉我如何解决这个问题 你需要设置 final i
  • Coq执行分号“;”的区别和句号“.”

    给定一个有效的 Coq 证明 使用 战术上 是否有一个通用公式可以将其转换为有效的等效证明 替代 许多 Coq 证明都使用 或战术排序战术 作为初学者 我想观察各个步骤的执行 所以我想替换 for 但令我惊讶的是 我发现这可能会破坏证明 有
  • 创建无边框表单而不丢失 Windows 命令

    我已将表单更改为无边框表单 我只是更改了BorderStyle财产给bsNone 但现在我的应用程序失去了 Windows 锚点和一些命令 例如 WIN 对齐表单客户端 WIN 最小化表格 WIN 表格右对齐 WIN 表格左对齐 我尝试过设
  • 我应该使用 Node.js 而不是 Rails 来实现实时 Web 应用程序吗?

    我正在构建一个复杂的网络应用程序 该应用程序必须大量处理实时数据并向用户显示该数据 鉴于我更习惯Rails 我想知道转储rails并使用node js来构建应用程序是否有很大的优势 或者是否有一种方法可以在Rails中拥有Node js的实
  • 我什么时候应该中断一个函数?

    将长函数分解为主函数和辅助函数是明智的做法 我知道模块外部只会调用主要函数 但它的长度可能会令人生畏 课本对行数有限制 但我觉得这太死板了 附 我正在用 Python 编程 需要处理传入的消息 该函数返回一个包含消息的元组 但采用 Pyth
  • DOT/graphviz 边缘标签中的下标

    如何使用 Graphviz DOT 的 HTML 功能向边缘标签添加下标字符 像这样 digraph g 1 gt 2 label
  • “iOS 17.0.simruntime”无法打开,因为无法验证开发者

    我刚刚下载了 iOS 17 运行时 但将其复制到目标位置后 会打开此弹出窗口 并且 Xcode 无法按预期使用模拟器 Downloaded from the Apple Developer site 我怎样才能解决这个问题 可以打电话sim
  • 生成唯一的机器 ID

    我需要编写一个函数来生成一个对于运行 Windows 操作系统的给定机器来说唯一的 id 目前 我正在使用 WMI 查询各种硬件参数 并将它们连接在一起并对它们进行哈希处理以得出唯一的 id 我的问题是 我应该使用哪些建议参数 目前 我使用
  • 如何保存Chrome的Coverage工具分析的结果?

    乍一看 它看起来像是非常有用的工具 但是我找不到任何类似的操作Save或类似的选项 有谁知道是否可以保存Chrome的Coverage工具分析的结果 谢谢 正如上面的评论中提到的 以及标记重复 https stackoverflow com
  • 具有不同时间步长的卡尔曼滤波器

    我有一些数据代表从两个不同传感器测量的物体的位置 所以 我需要进行传感器融合 更困难的问题是来自每个传感器的数据基本上是在随机时间到达的 我想使用 pykalman 来融合和平滑数据 pykalman如何处理可变时间戳数据 数据的简化示例如
  • 如何仅列出 Bash 目录中的文件而不列出目录?

    如何列出一个文件夹的所有文件 但不列出其文件夹或子文件 换句话说 我怎样才能只列出文件 Using find find maxdepth 1 type f 使用 maxdepth 1选项确保您只在当前目录中查找 或者 如果您替换 与某个路径
  • 如何限制 celery 中运行的任务数量

    我有一个在 Heroku 上运行的应用程序 我使用 celery 和工作测功机来处理后台工作 我正在运行使用大量内存的任务 这些任务大致在同一时间启动 但我只想同时运行一两个任务 其他任务必须在队列中等待 我怎样才能做到这一点 如果它们同时
  • 有没有可能通过 Android Studio 在 Android 的 Windows 子系统上运行 Android 应用程序?

    如果我们能够在 Android 的 Windows 子系统上调试 Android 应用程序 那就太好了 当然这是可能的 它的工作原理与任何外部设备类似 首先在 Windows 子系统中启用 Android 设置应用程序的开发人员模式 And
  • rand()/srand()函数是如何在C中实现的[重复]

    这个问题在这里已经有答案了 可能的重复 rand 是如何工作的 它有一定的倾向吗 有没有更好用的东西 https stackoverflow com questions 3539398 how does rand work does it
  • 凸包中最大的三角形

    这个问题已经得到解答 但我面临的主要问题是理解答案之一 From https stackoverflow com a 1621913 2673063 https stackoverflow com a 1621913 2673063 下面的
  • Redux Reselect 记忆是如何工作的?

    我正在尝试整合reselect进入我当前的应用程序 一如既往 首先我开始阅读文档 然后如果需要 再阅读另一个资源 我无法理解文档的一个特殊部分 也找不到可以更清晰地解释的资源 现在我来这里是为了得到一些明确的解释 所以它在文档中说 impo
  • .NET Core 3.1 的 Azure DevOps 代码覆盖率

    我正在为 ASP NET Core 3 1 应用程序设置 Azure DevOps 管道 并且我有以下 YAML 定义测试段 用于构建 测试和代码覆盖率 task DotNetCoreCLI 2 displayName dotnet glo
  • Java SMPP 库比较

    我们即将开始一个需要使用 SMPP 作为主要集成交换渠道的项目 现在 由于 SMS 不一定是我们业务的核心 因此我想使用 Java 的 SMPP 库 这样麻烦最少 除了遵循实际的协议之外 我们不太可能需要更高级的功能或在幕后进行调整 为此