Firebase experiment does not show custom event as goal metric - ab-testing

I am using firebase to do some A/B testing on my app. Currently, I am trying to validate if the experiment is setup correctly. I am facing the following issues:
I have 3 variants A,B and C. I can see that on the debug devices, users have been assigned to each of the variants. However, there is not data for the goal event on any of the variants
Some of the events that have been passed to firebase do not appear in the list of events to select as the goal.

Related

Test fail in IFTTT with "returns at least three items"

I'm creating my own service and in the endpoint test fails here and this error is shown:
"returns at least three items"
This error comes from the trigger part.
Can somebody share a sample value of output with three items in it. Please help
IFTTT Expects you to send at least 3 result items, to skip just clone the same object twice with different ids.
From the FAQ section;
My service fails the returns at least three items endpoint test. Why does IFTTT require three items? We require three items during the
testing phase to make sure your API behaves like a timeline of events,
not a state engine.
This requirement might seem strange when you think of your integration
with IFTTT as something that is entirely realtime in nature, like “IF
Button Pressed, THEN Turn On Lights”— what good would come from
anything but the current state of the button?
But what about the Applet “IF Button Pressed, THEN Log to
Spreadsheet”? In this case it would be important to store and return
multiple event items because there is no guarantee that we’ll call
your API (even with the Realtime API) at the moment the event occurs.
By keeping and returning a list of events, IFTTT users are more
assured they won’t miss a thing.

Track data for my own action dimension in Matomo (without custom dimensions plugin)

I need to track some user activity like special clicks, scrolls, and mouse drags, combined with the data I get from the website's back-end.
At first I did it using custom events and created a plugin to read them and generate the reports. But events have their own limitations (like number of archived table rows, ...) and did not fit my use case. Besides events get shown on other reports and views and I don't want to clutter them by my too many events which do not have any meaning out of my plugin's reports.
Using the custom dimensions plugin would not work for me. It is limited and I want to develop and publish my own plugin to my customers.
So I created my own action dimensions.
My plugin works well with the action dimensions I added, and can receive the data from user's activity if I use my previous custom events to send the data. But I don't know how to send my tracking data to it without using events.
I searched for it in Matomo forum, just found some similar questions beening unanswered for a long time.
So my main question is:
How I can send the data of user actions to my plugin's dimension without using events?
Also, am I on the right track? Is creating my own action dimension the correct way to do it?

Best way to trigger notification in flutter

My flutter app allows users to schedule events and needs to notify them when the time comes. These events involve multiple users and may be deleted. I am looking for the best way to trigger the notifications.
So far, I have found 2 packages that may be able to achieve this: firebase_messaging and flutter_local_notifications.
With firebase_messaging, I thought of creating a cloud function that would be triggered when an event was created in firestore, which schedules another cloud function to be run during the event, checking whether the event still exists in firestore, and triggering notifications accordingly. However, I am unsure of whether it is possible to schedule a cloud function from within another.
With flutter_local_notifications, my issue is that user B may create events involving user A or the event may be deleted whilst user A's app remains terminated. As such, the scheduled notifications for user A have no way of being adjusted accordingly.
What do you think is the best approach?
If you need to involve multiple people , flutter local notifications isnt for you. It is not build for that.

Map Widgets recibing data from different Context Brokers and the workspace tabs

In my Wire Cloud mashup I want to use two different maps, each maps get data from a different operator and each operator consult a different instance of ORION context broker.
When I put this two operators and the two maps in differents workspaces, this components work fine. If I put all this components in the same mashup and the same tab, also works fine. In this two cases, I recieve the data from the context broker, the operator send this data adapted for the map and this one represent the data perfectly.
My problem occurs when I put these operators and maps in the same mashup but in different tab each one. In this case i always obtain the following error:
Exception catched while processing an event that reached the "notiCAM" input endpoint fdcae15cbdc8.js:775
log fdcae15cbdc8.js:775
propagate fdcae15cbdc8.js:853
_notifyLoaded fdcae15cbdc8.js:744
After many hours trying to fix this case, I can´t find why this maps and operators does not work in this third case, is someone in this same situation? which solution worked in your case?
thanks
P.D: For my maps im using google maps API
I'm assuming you're not using the "Map Viewer" widget available on the FI-LAB store.
The problem seems to be related to the way your map widget handles incoming events. Take into account that:
Widgets are loaded when the tab where they are located is displayed or when a first event arrives on any of their input endpoints
Any event arriving on an input endpoint of an unloaded widget/operator gets queued until that widget/operator is fully loaded
WireCloud assumes widget/operators are fully loaded by capturing the "load" event of their iframe
The Google Map API is usually loaded asynchronously, making your widget unable to manage those incoming events until that API get ready (some time after the load event).
Currently, the only viable solution is to buffer events arriving on the "notiCAM" endpoint after the load event but before the google maps api is loaded, handling them just when that api notifies you that it's ready.

Realtime backend platform for reporting / dashboards?

I will build a dashboard system for my apps, where a page will have several widgets that draw charts, tables and glyphs representing potentially unrelated data.
The client will be HTML5 and I can push for only modern web browser.
My big problem is what backend use for this. I want to store "tables" for use in the charts and in real-time update the widgets.
For example, a invoicing widget will show how much $$ have been collected today. In the "table" will have a row for each total of the invoice:
inv = 1; total = 50
Total: 50
and the widget will draw that. When new data is pushed:
inv = 2; total = 100
Total: 150
The widget will show in realtime the total to the end-user.
The data is private for the user company. Eventually I will need to purge too old data (ie: I only need to keep as much data is necessary to proper evaluation of the info need for the end-user. For example, only keep 1 month of invoicing totals).
I'm thinking in use something like http://www.firebase.com/ or http://pusher.com/ but I suspect only solve the "notify in realtime" part of the equation. As far as I understand, they not let me get past data (ie: If the data is update in the weekend and the user open his dashboard to see what happened)
Then I see http://derbyjs.com/ and the possibility to use mongodb.
I wonder which backend/platform will bring me closer to the build of this system. I have experience with python/django/.net/postgress but could accept the use of something else if solve best this kind of app behavior.
Firebase offers both the "notify in relatime" part that you mention, as well as persistent data storage. Take a look at the tutorial, which walks you through building a real-time persisted chat app (the past chat messages are stored in Firebase and are sent back to the client every time you reload). And you can do much more complicated stuff like the real-time charts / widgets that you mention as well.
The big limitation with Firebase right now is that we're in closed beta and the data is currently unprotected (anybody can read and write your data). The security features are coming soon though.
Some other backend platforms you may want to evaluate are: Meteor and Simperium. Firebase and Simperium are cloud services where your data is stored in the cloud and you don't have to manage any servers of your own, while Meteor and DerbyJS are platforms that you have to install and run on your own server.
I would recommend signalR. It's amazing and you can literally do anything with it. Check it out: www.signalr.net and if you have any problems simply go to www.jabbr.net You will find a very helpful community there. I implemented a notification mechanism similar to facebook together with real time monitoring and a small chat in the same web site.