getMessageId

open fun getMessageId(): Long

Gets the unique message ID for this push notification.

The message ID uniquely identifies this specific push message instance. Use this for detailed tracking, deduplication, message history, and correlating user interactions with specific message deliveries. Example:


	  
	  protected boolean onMessageReceived(PushMessage message) {
	      long messageId = message.getMessageId();
	      long campaignId = message.getCampaignId();
	
	      // Deduplicate messages
	      if (isMessageAlreadyProcessed(messageId)) {
	          Log.d("App", "Message " + messageId + " already processed");
	          return true; // Suppress duplicate
	      }
	
	      // Store in message history
	      saveMessageHistory(messageId, campaignId, message.toJson().toString());
	
	      // Track delivery in analytics
	      analytics.trackEvent("push_delivered", new HashMap<String, Object>() {{
	          put("message_id", messageId);
	          put("campaign_id", campaignId);
	          put("is_silent", message.isSilent());
	      }});
	
	      return false;
	  }
	
	  // Track user journey from notification to conversion
	  protected void trackPurchaseAttribution(String orderId, double amount) {
	      SharedPreferences prefs = getSharedPreferences("app", MODE_PRIVATE);
	      long lastMessageId = prefs.getLong("last_opened_message_id", 0);
	      long lastCampaignId = prefs.getLong("last_opened_campaign_id", 0);
	
	      if (lastMessageId != 0) {
	          // Attribute purchase to the notification
	          analytics.trackPurchase(orderId, amount, lastCampaignId, lastMessageId);
	          Log.d("Analytics", "Purchase attributed to message: " + lastMessageId);
	      }
	  }
	

Return

message ID as a long value, or 0 if not available

See also