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 内存对齐的实现

    golang 内存对齐的实现

    在代码编译阶段,编译器会对数据的存储布局进行对齐优化,本文主要介绍了golang 内存对齐的实现,具有一定的参考价值,感兴趣的可以了解一下
    2024-08-08
  • golang DNS服务器的简单实现操作

    golang DNS服务器的简单实现操作

    这篇文章主要介绍了golang DNS服务器的简单实现操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-04-04
  • 详解golang执行Linux shell命令完整场景下的使用方法

    详解golang执行Linux shell命令完整场景下的使用方法

    本文主要介绍了golang执行Linux shell命令完整场景下的使用方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-06-06
  • Golang底层原理解析String使用实例

    Golang底层原理解析String使用实例

    这篇文章主要为大家介绍了Golang底层原理解析String使用实例,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-10-10
  • go select编译期的优化处理逻辑使用场景分析

    go select编译期的优化处理逻辑使用场景分析

    select 是 Go 中的一个控制结构,类似于用于通信的 switch 语句。每个 case 必须是一个通信操作,要么是发送要么是接收。接下来通过本文给大家介绍go select编译期的优化处理逻辑使用场景分析,感兴趣的朋友一起看看吧
    2021-06-06
  • Go语言操作etcd的示例详解

    Go语言操作etcd的示例详解

    etcd是使用Go语言开发的一个开源的、高可用的分布式key—value存储系统,可以用于配置共享和服务的注册和发现,下面我们就来看看Go语言是如何操作etcd的吧
    2024-03-03
  • Go语言实现字符串搜索算法Boyer-Moore

    Go语言实现字符串搜索算法Boyer-Moore

    Boyer-Moore 算法是一种非常高效的字符串搜索算法,被广泛的应用于多种字符串搜索场景,下面我们就来学习一下如何利用Go语言实现这一字符串搜索算法吧
    2023-11-11
  • Golang使用panic控制程序错误流程

    Golang使用panic控制程序错误流程

    这篇文章主要介绍了Golang使用panic控制程序错误流程,Golang panic异常处理机制中的一种流程控制方式,用于中断程序流程并触发异常处理
    2023-04-04
  • Go语言题解LeetCode724寻找数组的中心下标

    Go语言题解LeetCode724寻找数组的中心下标

    这篇文章主要为大家介绍了Go语言题解LeetCode724寻找数组的中心下标,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-12-12
  • Golang反射获取结构体的值和修改值的代码示例

    Golang反射获取结构体的值和修改值的代码示例

    这篇文章主要给大家介绍了golang反射获取结构体的值和修改值的代码示例及演示效果,对我们的学习或工作有一定的帮助,感兴趣的同学可以参考阅读本文
    2023-08-08

最新评论