Getting Started

 

What is Netmera?

 

Netmera is a mobile engagement, communication and campaigning tool that collects the data of all your users on all channels, segments and targets in real-time using these data, and sends notifications and pop-ups to the selected audience.

In order to use Netmera, you must have a mobile application or a web site developed on a platform written in native language or supporting a native library. You can integrate SDKs by following the links below.

 

iOS : https://netmera.readme.io/v3.0/docs

Android : https://netmera.readme.io/v3.0/docs/quick-start

Web : https://netmera.readme.io/v3.0/docs/quick-start-1

 

In order to use Netmera efficiently, you need to send user data to Netmera with the help of events and attributes. The first thing to do is analysing your application and finding scenarios. Afterwards, the most suitable integration process starts with the chosen scenario. If you want to get inspiration on how our customers use Netmera you can read use cases on our blog.

 

Integrating Netmera

Activities that can be performed during the integration process are;

Event integration:

It is necessary to track the actions taken by the user on the application. With events, you can setup automated pushes, track conversions, create segments (used for targeting users who meet specified rules), and collect data analytics.

 

How to perform event integration: After the event name and parameters are specified, the predefined events will be checked from the SDK. If these events meet the scenario, the event may be fired with the desired values ​​from within the application. It is important to use existing events, because you can access some beneficial industry benchmarking reports and best practises in the future.

Documentation for event firing:

 

iOS : https://netmera.readme.io/v3.0/docs/netmera-event-ios

Android : https://netmera.readme.io/v3.0/docs/eventss

 

If you want to add new parameters to an existing event, or if you want to create a completely new custom event, click on the Create New Event button on the Developers -> Events page, selecting the event name, label, description and base event if you want to extend it. You can select and add the Parameters afterwards.

 

When parameters are selected, isArray and Mandatory fields are also found beside the data type. If you set isArray to true, the parameter will be set to array. If this field does not appear when Mandatory field is selected, then event fire will be rejected and an error will be received (400 bad request). After Generate Code is selected, the codes of the classes to be added to the application are taken from the sample codes field and added to the application. After this, the event can be fired where necessary.

 

Profile attribute integration:

Profile attributes allow storing information from the user in the user model created for this user.

Profile attributes can be, for example, the name, surname, customer number, date of birth, supported team, hobbies etc.

Profile attributes allow you to identify the user, send a personalized push, target with the assigned attribute, and export it with the desired attribute.

 

How to perform profile attribute integration: In the SDK you can find the predefined attribute fields in the NetmeraUser class. You can use the updateUser method in order to set, change or delete the data in these fields. You can find the detailed information for this process at the following links;

 

Android : https://netmera.readme.io/v3.0/docs/user-1

iOS : https://netmera.readme.io/v3.0/docs/user

 

If a custom profile attribute is to be added, you can complete the creation process by selecting the attribute name, label, data type, whether it is array / or mandatory from  Create Attribute button on the Developers -> Profile Attributes page.

 

After completing the Custom attribute list, you can see the MyNetmeraUser class extended from the NetmeraUser class in the Code Samples field at the bottom of the Profile attributes page. Once you’ve integrated this class into your application, you can assign a custom profile attribute to that class with its userUpdate method.

Location integration:

Location-based targeting is required to send push notifications to a specific location and to send geofence push notifications. You can send a push notifications to the desired areas with location based push notifications. By establishing a fence determined by geo-fence to a specified area, you can automatically send push notifications at specified time intervals when the user can enter or leave the area. In order to do all this, it is necessary that the user’s permission is taken and they are sharing their locations.

 

How to perform location integration: After receiving the location permissions that should be taken on the application side, you can receive the location permission from the user by calling Netmera’s location permission methods. Afterwards, in order to perform location based targeting, you have to activate the Location History Enabled field in the Developers -> App Info -> App Config section. After this step, the device’s location information will start to flow to Netmera as often as you set it.

 

You can find the detailed document links below;

 

Android : https://netmera.readme.io/v3.0/docs/geofence-location

iOS : https://netmera.readme.io/v3.0/docs/netmera-location-manager-ios

Deeplink integration:

Deeplinks allow you to open the desired pages in the application with the desired parameters, using the defined url schemes in practice. By entering the schemes of the defined deeplinks in the application into the Netmera panel, the desired pages can be opened with the pushes sent and the parameters to be interpreted in the application can be sent.

 

How to perform deeplink integration: The schemes defined in the application are created by pressing the Create New Deeplink button under Developers -> Deeplinks with the parameters, if any. As an example, let’s say the scheme is defined in our application as follows;

 

mydemoapp://content={contentId}

 

Once you have defined the deeplink as above, you can call any click action in the what tab, you can open the content with this contentId in the application when this click happens.

You can also receive the parameter named contentId from the customDictionary field in the push object in the application.

 

Push Inbox integration:

Push inbox allows app user to save push notifications in the application, much like a message box, view them again and take actions at a later time.

 

How to perform Push Inbox integrations:

 

You can find the detailed documentation below;

 

iOS : https://netmera.readme.io/v3.0/docs/inbox

Android : https://netmera.readme.io/v3.0/docs/inbox-1

 

Sound integration:

Sound integration is necessary if you want to make a custom sound selection in push sending. In this way you can send different push notifications to the user with different alert sounds. Eg: “goal” sound when a goal happens in a game or your brand’s jingle, etc.

How to perform sound integration

 

You can find the detailed documentation below;

 

iOS : https://netmera.readme.io/v3.0/docs/sound-vibration

Android : https://netmera.readme.io/v3.0/docs/sound-vibration-1

 

REST API integration:

Rest API allows associating events in different channels & systems with the user via an external id. By using  REST API, multi channel events can be sent to Netmera, profile attributes can be assigned to existing users, push notifications can be triggered by different systems.

Rest API is very important when you want to connect different systems with mobile application. For example, if you want to set up an abandoned shopping cart reminder push notification from your mobile app, you can send an event via backend rest API to check if the sale is completed from a different channel.

 

After the integration is complete, we recommend you to setup Ip Restriction for security. You can do this in the panel by activating Enable Ip Restriction under Developers -> API -> IP Restriction Config. Once you enable this feature, you can enter trusted IPs into the table that appears on the bottom.

 

How to perform REST API integration

 

You can find the detailed documentations below;

 

https://netmera.readme.io/v3.0/docs/rest-api-error-codes  

 

Event Integration Samples for Industries

For understanding what kind of event integrations are possible with Netmera you can find the detailed documentations for some industries below;

 

For a telco app:

https://docs.google.com/a/inomera.com/spreadsheets/d/1GzewBR-qmEbNEUDokip3cvPh1o5CnViWRbkT9jI9M8A/edit?usp=sharing

 

For an e-commerce app:

https://docs.google.com/spreadsheets/d/146VplNMfl71DcEmwknK8JTSrzdiuW3uYskckE7RAQK8/edit?usp=sharing

 

For a sports app:

https://docs.google.com/spreadsheets/d/1sAD0wThUIJZNRsDbFUQhyS_f62CNv01lm7zR9cSsseQ/edit?usp=sharing

 

For an app used within an organisation:

https://docs.google.com/spreadsheets/d/1oqY99yn6ozQGP9jNOKTaSC1qP0SL6W2JPuuGsUMxnB0/edit?usp=sharing

Integration Scenario Example

Considering the integration steps, let’s say that after analyzing an e-commerce application, following scenarios were decided;

 

  1. Shopping cart reminder notification
  2. Forwarding to login notification
  3. Sale on favorite product notification
  4. Geofence notification for users who are near 100 mt of physical stores


The events and profile attributes needed for the above scenarios can be as follows;

 

  • Events
    • AddToCart
    • RemoveFromCart
    • Purchase
    • Login
  • Profile Attributes
    • FavoriteProducts

Apart from these events and profile attributes, there may be events and profile attributes for analytical and extra targeting needs. For example,

  • Events
    • ProductView
    • CategoryView
  • Profile Attributes
    • Gender
    • Email
    • Birthdate

 

Use cases

E-commerce:

Sale on Favorite product notification scenario:

The ID of the product to which the item is added is linked to the user by creating a profile attribute. This attribute can be a string array named favoriteProducts. A favorite product is added to this attribute when a product is added, and deleted from this array when a favorite product is removed. In the backend system, when this product drops its price, the REST API sends a push to the profile attribute. Thus, users with this attribute can receive this notification when their favorite products are on sale.

 

Cart reminder scenario:
This scenario is used to remind the users who have added a product into their shopping carts but the order has not been completed for X minutes.

AddToCart event is triggered when a product is added to the cart. If a RemoveFromCart event or a Purchase event that empties the basket is not received after this event arrives, the scenario is completed and a push message is automatically sent.

Notification according to weather:

Temperature data can be sent from the REST API from an API that locally tracks the weather. For example, “It is going to be rainy today. Do you want to take a look at the raincoats?”

Telco;

Top-up or upgrade scenario:

With this scenario, customers can purchase additional packages or plans without even opening the application.

When the user’s internet package is running low, an event is sent with the REST API. Then, an automated push with interactive buttons waiting for this event is triggered.

When “purchase” is clicked from interactive buttons, an API call is made to the Telco backend systems with a webhook before the application is opened, and additional data is fetched for the user. After fetching the additional data, a fulfillment event is fired and an automated push message is sent to the user confirming the upgrade or top up transaction.

 

You can check telco usecases from our blog

 

Media:

Triggering notification when user consumes all or part of a content:

Content DisplayImageComplete, ContentImage Not Complete, and ContentImageComplete events are sent from the application. Reminder messages are sent to the user, separated by a percentage, according to the completion percentage value in completed and incompleted events.

 

Submitting notifications when new content arrives in the selected categories:

The IDs of the categories that user is interested in or followed are assigned to the user as an attribute in an array. If any of these categories have new content, the REST API sends a push notifications to this attribute.

 

For more ideas or use cases you can check our blog.

 

Message types

Campaigns:

Messages sent instantly to a designated audience. You can make campaign announcements and  general notifications with this message type.

These messages can contain different types, you can find detailed information in “Campaign Types”.

Automated:

The type of message that is automatically sent when the defined scenarios are completed according to the events coming from the user.

Automated messages has 4 types of goals. These goals are:

 

Increase Retention & Engagement : sends notifications when a certain event occurs/or doesn’t occur within a certain period of time

 

Increase App Conversion & Revenue : If the 2nd event that is expected to happen after a certain time after the selected event takes place, it will send notifications (e.g: if the OrderSuccess did not come within 30 minutes after AddToCart event is received.)

 

Handle Specific Action : sends notifications when a certain event is done at a certain amount of number. For example, if the OrderSuccess event arrives for the 3rd time, it sends notifications.

 

Remind Periodically :It sends notifications at specified times of the day, on specified days of the week or on specified weeks of the month.

 

For more ideas or use cases you can check our article.

Transactional:

Personal notifications that target the person himself. Once these notifications are created in the panel, they are sent using the REST API. example scenarios: “your order has been shipped”, “your return has been approved”.

Geofence:

It allows you to create a geo-fence with a radius that you specify around a certain location, and notify users entering or leaving this fence. After creating a geofence from Targeting -> Geofences and selecting it if there is a group, you can send it to the geofence devices created with the publish to devices button. Then a notification is created to enter or exit event of the geofence. Later on, a notification is sent to the user entering or leaving this geofenced area.

 

For more ideas or use cases you can check our article

Campaign Types

Push Notification:

This is the standard push notifications available for mobile apps. This campaign format can be selected when sending normal notifications.

Push notifications can include text and photos on iOS and Android devices. Video, GIF, and audio can also be sent to iOS devices. Extra integration is required to send rich push notifications on iOS devices. You can find the documentation link describing the integration steps below:

 

https://netmera.readme.io/v3.0/docs/netmera-push-notification-ios#section-using-ios10-media-push

 

Once the integration is complete, iOS 10 Rich Push is enabled in the “What” tab of the push submission process in the panel. Title, Media URL and Subtitle can be entered in Newly opened fields respectively.

Example screenshot:

 

Interactive Push Notification:

Notifications that have buttons and offers selections to the users are called Interactive notifications. In order to use these notifications, the button set must first be created. New buttons are created by pressing the Create New Button button from the Settings -> Button Sets area of ​​the button set. After the creation is complete, press the Publish to Devices button and these buttons will be sent to the devices as a configuration.

In-App Popup:

Allows you to display any website or defined templates (image, video, map etc.) in a WebView in the application where the popup is enabled. As you can show predefined templates with popups, you can also upload custom templates you have created in your application to the dashboard. Simply send an email to support@netmera.com  to receive support regarding pop ups.

Web Push Notification:

Allows you to send notifications to your PC on iOS; to your PC and your mobile device on Android, to the users visited your website and allowed receiving notifications. You can find the Integration document below:

 

https://netmera.readme.io/v3.0/docs/quick-start-1

 

For more ideas or use cases you can check our blog.

SMS:

If the transactional pushes are not transmitted to the device within a certain time, you can make an API call to your SMS Provider to send SMS to these devices.

 

Testing Push Notifications

Netmera allows you to easily add test devices/users for testing your messages on real devices. There are 2 ways to add a Test user:

Adding test user using user details:

The user that you know the ExternalId (User ID), GSM number or Email address is searched in the Find User section under Targeting -> People. Assign as a Tester button is clicked on the upper right and the user’s devices are displayed by clicking on the Get Devices button. Then the devices listed below are added as test devices.

You can also find the Add Tester page under Settings -> Test Devices.

Adding via email invitation:

If you enter your application information in “iOS URL scheme” and / or “Android Package Name” fields under Developers -> App Info, you can add the device you want to add as a test device by email.

After that, please click on Invite Tester button in Settings -> Test Devices and enter email address and click invite. Then you need to click on the link in the following email from device you want to add as test device. In a successful operation, the link would ask you to open your application. Once the application is opened, you will see Device added to test devices successfully and you will be able receive test push notifications.

 

Sending test push notifications:

After completing the test user addition, you can create a new test campaign and click on the Test on Device button under the device previews on the right side of the What tab or GO! Page.

Other Dashboard Functionalities

SMS OTP:

You can increase security by confirming your identity with a single-use SMS code that will arrive in your phone when you login. To use this feature, you need to select the SMS OTP section in the Authentication -> General -> Control Panel section, and then apply via email to support@netmara.com . During this process the support team will ask for the application name, the login user’s mail and phone number.

Conversion Metrics:

You can define the events you expect your users to use as conversion events. So that, you can calculate how many sessions converted to conversions. We can provide this data to you.

 

Netmera can calculate conversion in 2 different ways;

1 – App conversion: Calculated when you set the application’s general conversion event. Calculates how many sessions end up as conversions. You can set the Conversion event by setting the conversion switch to ON next to Events listed under Settings -> Events.

 

2 – Push conversion: After you activate the Conversion Analytics field at the bottom of the What tab in the Push notification, you can set which events and which parameters you expect users clicking on this push to perform. For example, you expect users to buy a product in the category of women’s shoes, who click push notification. Let’s say the ID number is 123 in the women’s shoes category. Once you have selected the Purchase Line Item as the Conversion Event, then you click on the Add Event Attribute button and select Category Id from the attributes list and equate 123.

 

After this, every purchase made in the women’s shoes category will be reflected as a conversion in the push report when this push notification is clicked.

Revenue Metrics:

If there is any revenue generating action in your application, you can track and report this revenue with the events you send to Netmera.

If the transaction in the application is a purchase, you can use the Purchase event defined in the SDK. The value you assign to the grand total parameter in this event will be reflected in the Revenue & Notification and ARPU table on the panel dashboard page.

If you do not have a purchase event in the application and you have another way of generating revenue (such as displaying ads), you can make a revenue assignment, such as assigning an attribute to the event in which this view is made. Thus, you can see the revenue fields you received with this event in the panel and push reports.