Quick test notification message
Envoyer un message de notification en arrière-plan
Collection de distribution : téléchargez Postman sur votre ordinateur puis importez le lien en haut à gauche du logiciel : https://www.getpostman.com/collections/618d2460851f697dc22c
Le format de la notification est le suivant :
curl --location --request POST 'http://pricloud-master-api.glqas.mtpushoa.com/v3/push' \
--header 'Authorization: Basic MWM0Yjc0OWExN2Y2YWNhMzM5NjBhNTYwOjQ5ZjlkODI2MDExMmI0YmVlMDVhMzQzOA==' \
--header 'Content-Type: application/json' \
--data-raw
'{
"platform": "android",
"audience": {
"registration_id": [
"1104a89792bbb659ec5"
]
},
"notification": {
"android": {
"title": "titre de la notification",
"alert": "contenu de la notification",
"builder_id": 0,
"category": "alarm",
"small_icon": "mtpush_notification_icon",
"large_icon": "mtpush_notification_icon",
"extras": {
"notification key": "notification value"
},
"priority": 1,
"alert_type": 7,
"sound": "coin",
"channel_id": "money",
"badge_add_num": 1,
"badge_class": "com.engagelab.app.activity.MainActivity",
"style": 2,
"big_text": "Adieu à Cambridge est un poème célèbre du poète moderne Xu Zhimo et une œuvre représentative de l'École de la Nouvelle Lune. L'ensemble du poème prend les émotions lors du départ de Cambridge comme fil conducteur pour exprimer les sentiments profonds liés à ce départ. Le langage est léger et doux, la forme est exquise et harmonieuse. Le poète utilise la combinaison du virtuel et du réel pour décrire des images fluides, créant ainsi une belle conception artistique à chaque instant. L'amour du poète pour Cambridge, sa nostalgie de la vie passée et sa tristesse impuissante face à la séparation sont exprimés en détail de manière sincère, riche et significative, constituant le dernier chant dans les poèmes de Xu Zhimo.",
"inbox": {
"inbox1": "voici la première boîte de réception",
"inbox2": "voici la deuxième boîte de réception",
"inbox3": "voici la troisième boîte de réception"
},
"big_pic_path": "https://ss1.bdstatic.com/70cFuXSh_Q1YnxGkpoWK1HF6hhy/it/u=96071541,1913562332&fm=26&gp=0.jpg",
"intent": {
"url": "intent:#Intent;component=com.engagelab.oaapp/com.engagelab.app.component.UserActivity400;end"
}
}
},
"options": {
"third_party_channel": {
"vivo": {
"classification": 1,
"pushMode": 1
}
}
}
}'
curl --location --request POST 'http://pricloud-master-api.glqas.mtpushoa.com/v3/push' \
--header 'Authorization: Basic MWM0Yjc0OWExN2Y2YWNhMzM5NjBhNTYwOjQ5ZjlkODI2MDExMmI0YmVlMDVhMzQzOA==' \
--header 'Content-Type: application/json' \
--data-raw
'{
"platform": "android",
"audience": {
"registration_id": [
"1104a89792bbb659ec5"
]
},
"notification": {
"android": {
"title": "titre de la notification",
"alert": "contenu de la notification",
"builder_id": 0,
"category": "alarm",
"small_icon": "mtpush_notification_icon",
"large_icon": "mtpush_notification_icon",
"extras": {
"notification key": "notification value"
},
"priority": 1,
"alert_type": 7,
"sound": "coin",
"channel_id": "money",
"badge_add_num": 1,
"badge_class": "com.engagelab.app.activity.MainActivity",
"style": 2,
"big_text": "Adieu à Cambridge est un poème célèbre du poète moderne Xu Zhimo et une œuvre représentative de l'École de la Nouvelle Lune. L'ensemble du poème prend les émotions lors du départ de Cambridge comme fil conducteur pour exprimer les sentiments profonds liés à ce départ. Le langage est léger et doux, la forme est exquise et harmonieuse. Le poète utilise la combinaison du virtuel et du réel pour décrire des images fluides, créant ainsi une belle conception artistique à chaque instant. L'amour du poète pour Cambridge, sa nostalgie de la vie passée et sa tristesse impuissante face à la séparation sont exprimés en détail de manière sincère, riche et significative, constituant le dernier chant dans les poèmes de Xu Zhimo.",
"inbox": {
"inbox1": "voici la première boîte de réception",
"inbox2": "voici la deuxième boîte de réception",
"inbox3": "voici la troisième boîte de réception"
},
"big_pic_path": "https://ss1.bdstatic.com/70cFuXSh_Q1YnxGkpoWK1HF6hhy/it/u=96071541,1913562332&fm=26&gp=0.jpg",
"intent": {
"url": "intent:#Intent;component=com.engagelab.oaapp/com.engagelab.app.component.UserActivity400;end"
}
}
},
"options": {
"third_party_channel": {
"vivo": {
"classification": 1,
"pushMode": 1
}
}
}
}'
Afficher ce bloc de code dans la fenêtre flottante
Description des paramètres
| Propriétés | canaux pris en charge | type | signification |
|---|---|---|---|
| title | tous | String | optionnel, Titre |
| alert | tous | String | requis, Contenu |
| builder_id | Engagelab uniquement | int | optionnel. L'id du style personnalisé. Le style système est utilisé par défaut. |
| category | Engagelab uniquement | String | |
| large_icon | Engagelab uniquement | String | optionnel. Grande icône. Généralement située à droite de la notification. |
| extras | tous | JsonObject | optionnel. Champs additionnels. Le format clé/valeur est String. |
| priority | Engagelab uniquement | int | optionnel. Urgence de la notification. Valeur par défaut : 0. |
| alert_type | Engagelab uniquement | int | optionnel. Notifications utilisées pour sonneries, vibration et LED. Valeur par défaut : Notification.DEFAULT_ALL:-1. Sonnerie, Notification.DEFAULT_SOUND:1 Vibration, Notification.DEFAULT_VIBRATE:2 LED, Notification.DEFAULT_LIGHTS:4 trois scénarios combinables. Par exemple, 7 signifie sonnerie, vibration et LED. |
| sound | Engagelab/google/xiaomi | String | |
| channel_id | Engagelab/google/huawei/xiaomi/oppo | String | optionnel. Requis à partir d'Android 8.0. Si le sdk n'est pas défini à l'avance, il le configurera pour vous (seulement canaux Engagelab et google lorsque l'application est au premier plan). |
| badge_add_num | Engagelab/huawei/xiaomi | int | optionnel. Augmente le nombre de badges d'application et applique une logique d'accumulation. |
| badge_class | Engagelab/huawei/xiaomi | String | optionnel. MainActivity de l'application utilisée pour l'affichage du badge. |
| style | Engagelab uniquement | int | optionnel. Notifications utilisées pour sonneries, vibration et LED. Trois scénarios combinables. Android 8.0, cet attribut suit le canal. Par exemple, 7 indique sonnerie, vibration et LED. Valeur par défaut : Notification.DEFAULT_ALL:-1. |
| big_text | Engagelab uniquement | String | optionnel. Grand texte. Le style est NOTIFICATION_STYLE_BIG_TEXT. |
| inbox | Engagelab uniquement | JsonObject | optionnel. Boîte de réception. Le style est NOTIFICATION_STYLE_INBOX. |
| big_pic_path | Engagelab uniquement | String | optionnel. Grande image. Le style est NOTIFICATION_STYLE_BIG_PICTURE. |
| Intent:url | tous | String | optionnel. MTPush4.0.0 effectif. Cliquez sur la notification (Engagelab + tous les fournisseurs) puis effectuez le saut. Actuellement, seule l'activité est prise en charge. Converti avec Intent.toURI() |
Exemple de code pour configurer une activité côté client Android :
package com.engagelab.app.component;
import android.app.Activity;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.widget.TextView;
import android.widget.Toast;
import com.engagelab.app.R;
import com.engagelab.app.log.ExampleLogger;
import com.engagelab.privates.push.api.MTPushPrivatesApi;
import com.engagelab.privates.push.api.NotificationMessage;
import com.engagelab.privates.push.constants.MTPushConstants;
/**
* Sert à démontrer - cliquer sur la notification pour accéder à l'activité
*
* Assurez-vous de ne pas appeler{@link MTPushPrivatesApi#configOldPushVersion(Context)},Sinon, en cliquant sur "Sauter", la notification n'ira pas sur cette page
* <p>
* inutile d'appeler {@link MTPushPrivatesApi#reportNotificationOpened(Context, String, byte, String)},Le sdk gère cela en interne
*/
public class UserActivity400 extends Activity {
private static final String TAG = "UserActivity400";
private TextView tvMessage;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_intent);
tvMessage = findViewById(R.id.tv_message);
onIntent(getIntent());
}
@Override
protected void onNewIntent(Intent intent) {
super.onNewIntent(intent);
onIntent(intent);
}
private void onIntent(Intent intent) {
try {
Toast.makeText(this, TAG, Toast.LENGTH_SHORT).show();
if (intent == null) {
return;
}
Bundle bundle = intent.getExtras();
NotificationMessage notificationMessage = bundle.getParcelable("message");
if (notificationMessage == null) {
return;
}
ExampleLogger.d(TAG, "notificationMessage:" + notificationMessage.toString());
tvMessage.setText(notificationMessage.toString());
} catch (Throwable throwable) {
throwable.printStackTrace();
}
}
}
package com.engagelab.app.component;
import android.app.Activity;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.widget.TextView;
import android.widget.Toast;
import com.engagelab.app.R;
import com.engagelab.app.log.ExampleLogger;
import com.engagelab.privates.push.api.MTPushPrivatesApi;
import com.engagelab.privates.push.api.NotificationMessage;
import com.engagelab.privates.push.constants.MTPushConstants;
/**
* Sert à démontrer - cliquer sur la notification pour accéder à l'activité
*
* Assurez-vous de ne pas appeler{@link MTPushPrivatesApi#configOldPushVersion(Context)},Sinon, en cliquant sur "Sauter", la notification n'ira pas sur cette page
* <p>
* inutile d'appeler {@link MTPushPrivatesApi#reportNotificationOpened(Context, String, byte, String)},Le sdk gère cela en interne
*/
public class UserActivity400 extends Activity {
private static final String TAG = "UserActivity400";
private TextView tvMessage;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_intent);
tvMessage = findViewById(R.id.tv_message);
onIntent(getIntent());
}
@Override
protected void onNewIntent(Intent intent) {
super.onNewIntent(intent);
onIntent(intent);
}
private void onIntent(Intent intent) {
try {
Toast.makeText(this, TAG, Toast.LENGTH_SHORT).show();
if (intent == null) {
return;
}
Bundle bundle = intent.getExtras();
NotificationMessage notificationMessage = bundle.getParcelable("message");
if (notificationMessage == null) {
return;
}
ExampleLogger.d(TAG, "notificationMessage:" + notificationMessage.toString());
tvMessage.setText(notificationMessage.toString());
} catch (Throwable throwable) {
throwable.printStackTrace();
}
}
}
Afficher ce bloc de code dans la fenêtre flottante
<!-- Cliquer pour accéder à la notification pour démonstration et versions ultérieures -->
<activity
android:name="com.engagelab.app.component.UserActivity400"
android:exported="false"
android:launchMode="singleTask" />
<!-- Vérification locale de la liste blanche : À partir de MTPush4.2.3 et configuration de ENGAGELAB_PRIVATES_TRANSFER, le SDK effectue une vérification locale ; Sans configuration, aucune authentification locale n'est effectuée. Si la vérification locale est activée, configurez l'activité cible ici ; S'il y a plusieurs activités cibles, séparez-les avec /. -->
<meta-data
android:name="ENGAGELAB_PRIVATES_TRANSFER"
android:value="com.engagelab.app.component.UserActivity400" />
<!-- Cliquer pour accéder à la notification pour démonstration et versions ultérieures -->
<activity
android:name="com.engagelab.app.component.UserActivity400"
android:exported="false"
android:launchMode="singleTask" />
<!-- Vérification locale de la liste blanche : À partir de MTPush4.2.3 et configuration de ENGAGELAB_PRIVATES_TRANSFER, le SDK effectue une vérification locale ; Sans configuration, aucune authentification locale n'est effectuée. Si la vérification locale est activée, configurez l'activité cible ici ; S'il y a plusieurs activités cibles, séparez-les avec /. -->
<meta-data
android:name="ENGAGELAB_PRIVATES_TRANSFER"
android:value="com.engagelab.app.component.UserActivity400" />
Afficher ce bloc de code dans la fenêtre flottante

