Система push-уведомлений для Android приложений
Получайте push-уведомления мгновенно через наше приложение
Версия: 2.0.14
Требования: Android 8.0+ (API 26)
Размер: ~6.5 MB
Разрешите установку из неизвестных источников в настройках Android
Токен устройства будет сгенерирован автоматически
Настройки → Токен устройства → Копировать
Настройки → Push-сервисы → FCM / WorkManager
Отправляйте уведомления через API с вашим токеном
https://push.mrkz.ru/api/
POST
send.php
Отправка уведомления
| Параметр | Тип | Обязательно | Описание |
|---|---|---|---|
token |
string | Да | Токен устройства (16-128 символов) |
title |
string | Да | Заголовок уведомления (макс. 256 символов) |
message |
string | Да | Текст уведомления (макс. 2048 символов) |
data |
object | Нет | Дополнительные данные (JSON) |
priority |
string | Нет | Приоритет: normal, high (по умолчанию normal) |
delivery_method |
string | Нет | Режим доставки: auto, fcm, poll, both (по умолчанию auto) |
<?php
/**
* Отправка push-уведомления через API
* @param string $token Токен устройства
* @param string $title Заголовок
* @param string $message Текст сообщения
* @param array $data Дополнительные данные
* @param string $priority Приоритет: normal/high
* @return array Результат
*/
function send_push($token, $title, $message, $data = [], $priority = 'normal') {
$url = 'https://push.mrkz.ru/api/send.php';
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode([
'token' => $token,
'title' => $title,
'message' => $message,
'data' => $data,
'priority' => $priority
]));
curl_setopt($ch, CURLOPT_HTTPHEADER, ['Content-Type: application/json']);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($ch);
$httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
if ($httpCode === 200) {
return json_decode($response, true);
}
return ['success' => false, 'error' => 'HTTP ' . $httpCode];
}
// Использование
$result = send_push(
'push_abc123',
'Заголовок',
'Текст уведомления',
['url' => 'https://example.com', 'action' => 'open_page'],
'high'
);
if ($result['success']) {
echo "Отправлено! ID: " . $result['message_id'];
}
?>
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
"""
Отправка push-уведомлений через API
Без сторонних библиотек (Python 3)
"""
import urllib.request
import urllib.parse
import json
def send_push(token, title, message, data=None, priority='normal'):
"""
Отправка push-уведомления
@param token: Токен устройства
@param title: Заголовок
@param message: Текст сообщения
@param data: Дополнительные данные (dict)
@param priority: Приоритет: normal/high
@return: dict Результат
"""
url = 'https://push.mrkz.ru/api/send.php'
payload = {
'token': token,
'title': title,
'message': message,
'priority': priority
}
if data:
payload['data'] = data
req = urllib.request.Request(
url,
data=json.dumps(payload).encode('utf-8'),
headers={'Content-Type': 'application/json'}
)
try:
with urllib.request.urlopen(req) as response:
result = json.loads(response.read().decode('utf-8'))
return result
except urllib.error.HTTPError as e:
return {'success': False, 'error': f'HTTP {e.code}'}
except Exception as e:
return {'success': False, 'error': str(e)}
# Использование
if __name__ == '__main__':
result = send_push(
'push_abc123',
'Заголовок',
'Текст уведомления',
{'url': 'https://example.com'},
'high'
)
if result.get('success'):
print(f"Отправлено! ID: {result['message_id']}")
else:
print(f"Ошибка: {result.get('error')}")
/**
* Отправка push-уведомлений через API
* Требуется: libcurl
* Компиляция: g++ -o push_client push_client.cpp -lcurl
*/
#include <iostream>
#include <string>
#include <curl/curl.h>
// Callback для записи ответа
size_t WriteCallback(void* contents, size_t size, size_t nmemb, std::string* userp) {
size_t totalSize = size * nmemb;
userp->append((char*)contents, totalSize);
return totalSize;
}
/**
* Отправка push-уведомления
* @param token Токен устройства
* @param title Заголовок
* @param message Текст сообщения
* @param priority Приоритет: normal/high
* @return JSON ответ сервера
*/
std::string send_push(const std::string& token,
const std::string& title,
const std::string& message,
const std::string& priority = "normal") {
CURL* curl;
CURLcode res;
std::string readBuffer;
std::string json_data = "{\"token\":\"" + token +
"\",\"title\":\"" + title +
"\",\"message\":\"" + message +
"\",\"priority\":\"" + priority + "\"}";
curl = curl_easy_init();
if (curl) {
curl_easy_setopt(curl, CURLOPT_URL, "https://push.mrkz.ru/api/send.php");
curl_easy_setopt(curl, CURLOPT_POSTFIELDS, json_data.c_str());
struct curl_slist* headers = NULL;
headers = curl_slist_append(headers, "Content-Type: application/json");
curl_easy_setopt(curl, CURLOPT_HTTPHEADER, headers);
curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, WriteCallback);
curl_easy_setopt(curl, CURLOPT_WRITEDATA, &readBuffer);
res = curl_easy_perform(curl);
curl_easy_cleanup(curl);
if (res != CURLE_OK) {
return "{\"success\":false,\"error\":\"" + std::string(curl_easy_strerror(res)) + "\"}";
}
}
return readBuffer;
}
int main() {
curl_global_init(CURL_GLOBAL_DEFAULT);
std::string response = send_push(
"push_abc123",
"Заголовок",
"Текст уведомления",
"high"
);
std::cout << "Ответ: " << response << std::endl;
curl_global_cleanup();
return 0;
}
GET запросы используются для простой отправки уведомлений через URL параметры.
curl "https://push.mrkz.ru/api/send.php?token=push_abc123&title=Заголовок&message=Текст уведомления"
<?php
$url = 'https://push.mrkz.ru/api/send.php?' . http_build_query([
'token' => 'push_abc123',
'title' => 'Заголовок',
'message' => 'Текст уведомления'
]);
$response = file_get_contents($url);
echo $response;
?>
import urllib.request
import urllib.parse
url = 'https://push.mrkz.ru/api/send.php?' + urllib.parse.urlencode({
'token': 'push_abc123',
'title': 'Заголовок',
'message': 'Текст уведомления'
})
response = urllib.request.urlopen(url)
print(response.read().decode())
wget -qO- "https://push.mrkz.ru/api/send.php?token=push_abc123&title=Заголовок&message=Текст уведомления"