Add f7push v0.1: FCM device registry and push API for F7cloud.

Portable occ-based config, OCS endpoints for APK registration, notification relay, and server-side push dispatch.
This commit is contained in:
root
2026-05-24 10:26:36 +03:00
commit df4e2dddec
17 changed files with 1005 additions and 0 deletions
+15
View File
@@ -0,0 +1,15 @@
<?xml version="1.0"?>
<info>
<id>f7push</id>
<name>F7 Push</name>
<summary>Mobile push delivery for F7cloud accounts (Firebase)</summary>
<description>Registers F7cloud APK devices and sends Firebase push notifications per user account. Portable across F7cloud servers via occ configuration.</description>
<version>0.1.0</version>
<licence>AGPL</licence>
<author>F7cloud team</author>
<namespace>F7Push</namespace>
<category>tools</category>
<dependencies>
<f7cloud min-version="32" max-version="32"/>
</dependencies>
</info>
+45
View File
@@ -0,0 +1,45 @@
<?php
declare(strict_types=1);
return [
'routes' => [],
'ocs' => [
[
'name' => 'device_api#register',
'url' => '/api/v{version}/devices',
'verb' => 'POST',
'requirements' => ['version' => '1'],
],
[
'name' => 'device_api#unregister',
'url' => '/api/v{version}/devices/{deviceId}',
'verb' => 'DELETE',
'requirements' => ['version' => '1'],
],
[
'name' => 'device_api#listDevices',
'url' => '/api/v{version}/devices',
'verb' => 'GET',
'requirements' => ['version' => '1'],
],
[
'name' => 'push_api#send',
'url' => '/api/v{version}/push',
'verb' => 'POST',
'requirements' => ['version' => '1'],
],
[
'name' => 'push_api#test',
'url' => '/api/v{version}/push/test',
'verb' => 'POST',
'requirements' => ['version' => '1'],
],
[
'name' => 'config_api#status',
'url' => '/api/v{version}/status',
'verb' => 'GET',
'requirements' => ['version' => '1'],
],
],
];