Gotify搭建你的消息推送系统

 更新时间:2024年01月03日 09:09:11   作者:爱吃麻酱爱吃咸 测试指北  
这篇文章主要介绍了Gotify搭建你的消息推送系统,今天要分享的是 gotify,是一个用 go 编写的消息服务端,有需要的朋友可以借鉴参考下,希望能够有所帮助

gotify简介

通过消息推送,我们可以实时的获取有效的信息。比如结果,验证码以及一些重要的通知场景等。今天要分享的是 gotify,是一个用 go 编写的消息服务端,也有客户端,通过 gotify 我们可以简单的进行收发消息。gotify的 地址将会在文末展示。

gotify 支持的功能

  • 可以通过 restapi 发送消息
  • 可以通过 websocket 接收消息
  • 可以管理用户和客户端以及应用程序
  • 只会插件
  • 有 web ui 页面
  • 有用于发送消息的 cli (命令行页面)
  • 支持 android 系统 不支持 ios

今天我们来介绍一下,常规的 gotify 如何安装以及使用。前提条件是需要一台有公网的服务器来部署 gotify-server 以及安装好 docker-compose。话不多说,我们直接开搞

安装 gotify-server

在你的服务器上创建一个目录,在目录里面执行 vim docker-compose.yml ,然后在 yml 文件里复制以下内容

version: "3"
services:
  gotify:
    image: gotify/server
    ports:
      - 80:80  #可以自定义要映射的端口
    environment:
      - GOTIFY_DEFAULTUSER_PASS=customer  #你的管理员密码  管理员账号admin
    volumes:
      - "./gotify_data:/app/data"

在当前目录执行 docker-compose up -d 。当容器启动后,我们直接在浏览器上输入 http://ip:port 来访问。如果无法打开前台,请检查防火墙相关配置。输入管理员账号和密码后。gotify-server 就搭建完成了。

在首页,点击 app,然后新建一个 APP,记好 token,这个是我们后续重要的凭证。

到这一步,gotify-server 的基础配置就已经完成了。搭建完之后我们最好进行反向代理,通过域名的方式来访问,这里只是作为演示就不反代了。你可以使用 npm、宝塔、或者 certbot 来进行反代,在这里就不再多介绍了。

接着我们就需要安装 gotify-android 了

安装 gotify-android

  • 访问 https://github.com/gotify/android/releases/download/v2.7.1/Gotify.apk 我们将这个 apk 下载好,在要接收消息的 android 手机上安装即可。安装包仅仅 5.8MB

安装好后启动 app,我们输入对应的 server 地址,以及用户名和密码,然后登录就行

到这一步,我们要接收消息的客户端也安装好了。

发送消息测试

这是官方的 curl 示例。我们只需要在一个终端环境发送 curl 请求即可。

curl "https://push.example.de/message?token=CgwhLcjxGQSkzdd" -F "title=my title" -F "message=my message" -F "priority=5"

 将对应的域名,token,以及想发送的标题,内容都替换成自己的即可。这里要注意的是 token 是 app 的 token,而不是 client 的 token 发送成功之后,app 内就会收到最新的消息,而且也会收到对应的消息 push。

总体而言,gotify 是一个比较简单易用的推送消息服务器,上手简单,值得推荐

地址:https://gotify.net/

以上就是Gotify搭建你的消息推送系统的详细内容,更多关于Gotify搭建消息推送系统的资料请关注脚本之家其它相关文章!

相关文章

  • 数据竞争和内存重分配Golang slice并发不安全问题解决

    数据竞争和内存重分配Golang slice并发不安全问题解决

    这篇文章主要为大家介绍了数据竞争和内存重分配Golang slice并发不安全问题解决,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-10-10
  • Go语言并发技术详解

    Go语言并发技术详解

    这篇文章主要介绍了Go语言并发技术详解,本文讲解了goroutine、channels、Buffered Channels、Range和Close等内容,需要的朋友可以参考下
    2014-10-10
  • go语言实现简单的并发网页爬虫示例

    go语言实现简单的并发网页爬虫示例

    在这个章节中,我们将会结合之前的知识点,实现一个简易的并发网页爬虫,我们的爬虫会先爬取一个起始页面,提取出所有的链接,然后并发地爬取这些链接,有需要的朋友可以借鉴参考下,希望能够有所帮助
    2023-08-08
  • golang值类型转换成[]uint8类型的操作

    golang值类型转换成[]uint8类型的操作

    这篇文章主要介绍了golang值类型转换成[]uint8类型的操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-05-05
  • 解决golang 关于全局变量的坑

    解决golang 关于全局变量的坑

    这篇文章主要介绍了解决golang 关于全局变量的坑,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-05-05
  • 详解Go语言中获取文件路径的不同方法与应用场景

    详解Go语言中获取文件路径的不同方法与应用场景

    在使用 Go 开发项目时,估计有不少人遇到过无法正确处理文件路径的问题,本文将尝试从简单到复杂,详细介绍 Go 中获取路径的不同方法及应用场景,希望对大家有所帮助
    2024-02-02
  • go通过benchmark对代码进行性能测试详解

    go通过benchmark对代码进行性能测试详解

    在开发中我们要想编写高性能的代码,或者优化代码的性能时,你首先得知道当前代码的性能,在go中可以使用testing包的benchmark来做基准测试 ,文中有详细的代码示例,感兴趣的小伙伴可以参考一下
    2023-04-04
  • 让goland支持proto文件类型的实现

    让goland支持proto文件类型的实现

    这篇文章主要介绍了让goland支持proto文件类型的实现操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-12-12
  • 详解在Go语言单元测试中如何解决文件依赖问题

    详解在Go语言单元测试中如何解决文件依赖问题

    现如今的 Web 应用程序往往采用 RESTful API 接口形式对外提供服务,后端接口直接向前端返回 HTML 文件的情况越来越少,所以在程序中操作文件的场景也变少了,在编写单元测试时,文件就成了被测试代码的外部依赖,本文就来讲解下测试过程中如何解决文件外部依赖问题
    2023-08-08
  • 一文详解Golang使用接口支持Apply方法的配置模式

    一文详解Golang使用接口支持Apply方法的配置模式

    这篇文章主要为大家介绍了一文详解Golang使用接口支持Apply方法的配置模式,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2024-01-01

最新评论