Last updated:
0 purchases
mautic tracking api
mautic_tracking_api #
App User Monitoring and Tracking easily for Dart and Flutter using Mautic: Open Source Marketing Automation Software.
The essence of monitoring what happens in an App is similar to monitoring what happens on a website.
In short, this package use Named Screen Path (e.g. main_screen) in your App as your page_url field in the tracker, Named Screen Title (e.g. Home Screen) as your page_title field and the Contact E-mail as unique identifier. See Mautic Contact Monitoring section for detailed instructions.
This package also use native Mautic Tracking Cookies mtc_id, mtc_sid and mautic_device_id to make Tracking more effective.
Made with ❤️ by Mautic Specialists at Powertic.
Install #
Add this package to your package's pubspec.yaml file:
dependencies:
mautic_tracking_api:
copied to clipboard
Run flutter pub get on terminal to download and install packages and import on your main.dart:
import 'package:mautic_tracking_api/mautic_tracking_api.dart';
copied to clipboard
Usage #
Create a global instance of MauticTracking and import this global instance on all your files.
var MauticTracking mautic;
copied to clipboard
On your main.dart you can setting up the MauticTracking object:
// Setting Up
void main() async {
// Start Tracking
mautic = MauticTracking(
"https://mkt.mymautic.com",
appName: "MyApp",
email: "[email protected]",
appVersion: '1.0.0',
appBundleName: 'com.mydomain.myapp',
);
// Track App Start
await mautic.trackAppStart();
}
copied to clipboard
When the App is Started, this event will be fired:
If the contact doesn't exists on Mautic, the contact will be identified by app_started.
See a complete Flutter example at example/example_app/lib/main.dart
Setting Up #
There are some options to instantiate MauticTracking:
MauticTracking(
this._base_url, {
this.email,
this.appName,
this.appVersion,
this.appBundleName,
this.closeConnectionAfterRequest = true,
this.userAgent =
'Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.0; Trident/5.0)',
});
copied to clipboard
These are the constructor options:
Property
Type
Required
Description
_base_url
String
Yes
Mautic Base URL
email
String
No
Mautic Contact Email
appName
String
No
App Name
appVersion
String
No
App Version
appBundleName
String
No
App Bundle Name
closeConnectionAfterRequest
bool
No
Close Connection after Request
userAgent
String
No
Request User Agent
Mautic Contact Monitoring #
The act of monitoring the traffic and activity of contacts can sometimes be somewhat technical and frustrating to understand. Mautic Tracking API makes this monitoring simple and easy to configure.
Tracking Screens #
Send App Screen info to Mautic.
Method Definition:
Future<void> trackScreen(String screenPath, [String screenName]) async;
copied to clipboard
Property
Type
Required
Description
screenPath
String
Yes
Unique Screen Route Path
screenName
String
No
Unique Screen Route Label
Usage:
You can send screen tracking info only with screenPath.
Create your screen paths using _ to separate words and always use small caps.
mautic.trackScreen("main");
copied to clipboard
You can also send screen tracking info using screenPath and screenName. Fell free to use space and capitalized words for Screen Name.
mautic.trackScreen("main", "Main Page");
copied to clipboard
Tracking Events #
Send App Event info to Mautic.
Method Definition:
Future<void> trackEvent(String eventKey, String eventName, String screenPath, [String screenName]) async;
copied to clipboard
Property
Type
Required
Description
eventKey
String
Yes
Unique Event Key
eventName
String
Yes
Unique Event Name
screenPath
String
Yes
Unique Screen Route Path
screenName
String
No
Unique Screen Route Label
Usage:
You can send screen tracking info only with screenPath.
Create your screen paths using _ to separate words and always use small caps.
mautic.trackEvent('click_getting_start', 'Click Get Start Button', 'home');
copied to clipboard
You can also send screen tracking info using screenPath and screenName. Fell free to use space and capitalized words for Scren Name and Event Name.
mautic.trackEvent('click_getting_start', 'Click Get Start Button', 'home', 'Home Page');
copied to clipboard
Adding Contact Tags #
Add tag to contact.
mautic.addTag({'a', 'b'});
copied to clipboard
Property
Type
Required
Description
params
Set
Yes
Set of tag names
Removing Contact Tags #
Remove tag to contact.
mautic.removeTag({'a', 'b'});
copied to clipboard
Property
Type
Required
Description
params
Set
Yes
Set of tag names
Contribute #
Please file feature requests and bugs at the issue tracker.
For personal and professional use. You cannot resell or redistribute these repositories in their original state.
There are no reviews.