跳转到主要内容

Android“查找我的设备”应用的服务器,采用Django/Python实现

项目描述

Django Find My Device

django-fmd @ PyPi Python Versions License GPL V3+

使用Django在Python中实现的“查找我的设备”客户端和服务器。适用于由Nnulide开发的Android应用程序 FindMyDevice

Get FindMyDevice on F-Droid

注意:对于命令通知,您还需要安装类似于“ntfy”的 https://unifiedpush.org/ 应用程序

Get ntfy on F-Droid

Django “查找我的设备”服务器用于YunoHost

Integration level Working status Maintenance status Install django-fmd with YunoHost

状态

服务器实现

工作正常

  • 应用程序可以注册设备
  • 应用程序可以发送新的位置
  • 应用程序可以通过注销设备来删除所有服务器数据
  • Web页面可以获取设备的地理位置
  • 在Web页面上分页显示位置
  • 命令的推送通知

服务器待办事项

  • 图片

客户端实现

例如。

~/django-find-my-device$ ./manage.py fmd --get-location --device-id 2gvp8d --password your-password

开始编写代码

~$ git clone https://gitlab.com/jedie/django-find-my-device.git
~$ cd django-find-my-device
~/django-find-my-device$ ./manage.py
...
(findmydevice) run_dev_server

还有docker开发环境设置,例如。

~/django-find-my-device$ make up

备注

  • 应用程序不会接受自签名证书!因此,您需要使用非HTTPS URL进行测试。
  • Django开发服务器和docker compose默认将绑定到0.0.0.0:8000!因此,可以从您的网络中的其他设备访问它!

致谢

“FindMyDevice”概念和App/Web页面的致谢归功于应用程序FindMyDevice的创建者Nnulide

目前,我们将findmydeviceserver/web/GNU GPLv3)中的html/js/css等文件的副本存储在我们的项目存储库中

这是通过update_fmdserver_files.sh脚本完成的。

版本

  • 开发版本
    • 待定
  • v0.4.1 - 2024年6月17日
    • 修复重定向到管理员和FMD网页的问题
    • 修复打包:添加必要的"requests"依赖项
  • v0.4.0 - 2024年6月17日
    • 更新到最新的FMD应用版本
    • 更新静态的FMD html/js/css 文件
    • 现代化项目设置
  • v0.3.2 - 2022年8月10日
    • 修复小数据库字段的错误
    • 测试项目自动登录,仅针对/admin/请求
  • v0.3.1 - 2022年8月10日
    • 修复YunoHost的静态文件错误
  • v0.3.0 - 2022年8月10日
    • 工作进度:FMD Python客户端(待办:添加CLI)
    • 用短随机字符串替换设备的UUID
    • 包含外部JS/CSS文件
  • v0.2.0 - 2022年7月19日
    • 在设备和LocationData中存储User-Agent
    • 实现命令推送通知
  • v0.1.3 - 2022年7月12日
    • 从index.html中移除"@Nulide FMDServer"
    • 降低'无"IDT"'错误日志。
  • v0.1.2 - 2022年7月12日
    • 增强设备更改列表:LocationData计数+最后更新信息和LocationData过滤器
    • 为匿名用户添加登录页面
  • v0.1.1 - 2022年7月12日
    • 修复FMD网页上的分页问题。
    • 不允许过于频繁地存储位置(通过settings.FMD_MIN_LOCATION_DATE_RANGE_SEC - 默认:30秒)
    • 以可读格式显示管理员中的设备日期。
    • 如果启用DEBUG模式,则允许在管理员中删除location
    • /requestAccess视图更宽容。
    • 增强TracingMiddleware以进行调试。
  • v0.1.0 - 2022年7月12日
    • 使用自己的视图为fmd页面"index.html"提供服务,并且仅针对经过身份验证的用户
    • 增强Django Admin
    • 为设备添加可选的"名称"(仅适用于django admin)
  • v0.0.4 - 2022年7月11日
    • 修复如果不在根URL中安装的logic.js请求错误
    • 修复来自logic.js的位置视图和未定义变量。
  • v0.0.3 - 2022年7月11日
    • 修复由于过大的raw_date字段值导致的存储位置错误
  • v0.0.2 - 2022年7月11日
    • 支持Python 3.7(针对当前YunoHost版本)
    • 设置Gitlab CI流水线
    • 更新README
  • v0.0.1 - 2022年7月5日
    • 初始化项目
    • 应用程序可以注册设备
    • 应用程序可以发送新的位置
    • 应用可以删除设备上的所有服务器数据
    • 网页可以获取设备的地理位置

项目详情


下载文件

为您的平台下载文件。如果您不确定选择哪个,请了解有关安装包的更多信息。

源分发

django_fmd-0.4.1.tar.gz (1.5 MB 查看散列值

上传时间

构建分发

django_fmd-0.4.1-py3-none-any.whl (1.6 MB 查看散列值

上传时间 Python 3

由以下支持