Can i add property id from GA4 into branchIO instead of tracking id? - flutter

I am trying to feed branchIO campaign information to google analytics4.
BranchIo is requesting me add tracking id which is of the format UA-xxxxxxx-x , but this kind of id is not available in google analytics 4. Is it ok to use property id instead.

Google analytics UA and GA4 are two completely different systems.
Universal analytics accounts have UA Ids. GA4 Have measurment ids
No you can not. You are using the code for UA it will only work with UA accounts.
The measurement protocol used to send data to these different systems is also different. There for the code needed to send to that system should also be different
You appear to be trying to use a tracker designed to send data to UA accounts. not GA4 accounts.
No it is not okay to send the property id instead. You sould send the UA id or find the code for that system that would work with GA4 which will take a

Related

How to get the most information from a tracking pixel, google analytics, and emails

So I am trying to track more information from our order confirmation emails or shipping confirmation emails. I have read online that tracking pixels can track IP addresses, devices, locations, and so on. I have added something like the following code to our emails to track email opens:
<img src="https://www.google-analytics.com/collect?v=1&tid=UA-XXXXXXXX-X&t=event&cid=test&cn=test&cs=email&ec=pixel&ea=open&el=my_email" width=1 height=1 style="display:block;">
Is there a way to get any more data using this method? Or do I have to use some other service in combination with the code in the emails?
Is there a way to get any more data using this method?
Sure, manually crafting GA requests is called measurement protocol in Google Analytics jargon. You can add/override a wide list of fields, here's the complete list from the documentation for référence:
https://developers.google.com/analytics/devguides/collection/protocol/v1/parameters
And an article, also from official Google docs, related to email tracking with measurement prorocol (event though it is quite short):
https://developers.google.com/analytics/devguides/collection/protocol/v1/email
Bé careful for the value used with the cid parameter, as it is used to.discriminate between clients. Using the same value everywhere will count every open as coming from the same user. But I believe the value "test" provided here is just for the sake of the example.
Please also be careful not to send any PII data to GA (name, postal adress, ...)

How to store data for a household

I'm looking for a way to store data for a Google Assistant action for all devices/users in a household, without requiring voice matching to identify a user.
I know you can store data in user.storage, but I don't necessarily want to require voice matching to link to a user, and if I use user.storage the data will only be associated with one user. I just want anyone on any of the devices (Google Home) in the household to be able to use the data persisted in the action.
One approach could be to obtain the device ID (if possible) when setting up the action and store the data by device ID. Then link all other devices in the household by device ID through the list of devices associated with the original user's account (if that's possible). Any other options?
This is currently not possible, there's no way to save data and have everyone in the household access it. I'm sure you've already seen the documentation on Save Data in a Conversation.
On shared devices like Smart Displays and Speakers, personal results are turned off by default. They can be enabled again following these instructions:
Open Assistant settings on your Android phone
Select device in "Assistant devices"
Turn Personal results on.
But this means other household members can see personal results, e.g. Calendar entries.
To determine if you will be able to use userStorage, you can use the recently launched GUEST/VERIFIED flag, see documentation here.
User storage is designed to work at a user-only level. If you don't have something like voice match setup, user storage will not persist. The best approach to having family or multi-person data sharing would be to use something like Google Sign-In to get their email, and then have a companion service like a website where users can share access with other emails. Then your service can pull from a common data source.

Microsoft Teams : REST APIs

I'm interested in getting data (metadata and content of files) out of Microsoft Teams into my application using REST APIs. I have looked at Office 365 APIs and Graph APIs but, I could not find supporting documentation for Microsoft Teams.
Teams API is now added to beta endpoint in Microsoft Graph. In documentation, you can find it together with Groups. Post, Channel and Chat Thread are available.
For example, documentation for "channel" resource is here:
https://developer.microsoft.com/en-us/graph/docs/api-reference/beta/resources/channel
Microsoft Teams REST API is now included into MS Graph API
https://learn.microsoft.com/en-us/graph/api/resources/team?view=graph-rest-1.0
At the time of writing this answer there are not too many APIs around Teams. However more are being added and they are in Beta (sending messages, adding apps to team, uploading team image, and more).
https://learn.microsoft.com/en-us/graph/api/resources/team?view=graph-rest-beta
It is not recommended to use Beta APIs in production environment as they might change.
It is also worth of mentioning that Teams are actually Office365 Groups.
Please take a look at Graph API
https://learn.microsoft.com/en-us/graph/api/resources/team?view=graph-rest-1.0
https://learn.microsoft.com/en-us/graph/api/resources/team?view=graph-rest-beta
Expand "Teamwork" at left side, you can get all Teams related API
We do not have Teams APIs available at this time. Our extensibility options are limited to experiences within the Teams application.
The Microsoft Graph API is constantly changing and we're currently using the following to monitor/interact with our Microsoft Teams application:
https://learn.microsoft.com/en-us/graph/api/resources/teams-api-overview
It gives access to the following (at the time of writing this):
We also monitor the general usage via the reports section in the Graph API:
This gives access to:
Device Usage:
Get details about Microsoft Teams device usage by user.
Get the number of daily unique users by device type.
Get the number of unique users by device type over the selected time period.
User Usage:
Get details about Microsoft Teams user activity by user.
Get the number of Microsoft Teams activities by activity type. The activities are performed by Microsoft Teams licensed users.
Get the number of users by activity type. The activity types are number of teams chat messages, private chat messages, calls, or meetings.
https://learn.microsoft.com/en-us/graph/api/resources/microsoft-teams-device-usage-reports?view=graph-rest-1.0

Setup XMPP server to use other JSON API on webserver for user storage and authentication

We are developing a consumer hardware product. Each device is registered on a central webserver and the owner also have a user account to which the device is linked. The owner may also choose to share the device with other users.
Now, to solve the problem of getting through firewalls etc we are using XMPP: the user access his/her devices using an iOS/Android app. The app connects to the XMPP-server and so does the hardware devices. So the app can access the devices by sending custom XMPP stanzas.
Currently the device and the mobile app use the same JID, so the device will allow messages only from the same bare JID as itself uses. To allow for sharing devices we are planning to use the roster instead: the device will get its own JID ("hw381983829#thexmppserver.com") and will accept stanzas from all JID's in its roster.
The problem I'm having is that the users, devices and device-sharing data are stored on the webserver. I would like to use this same information on the XMPP-server: all users and devices on the webserver are allowed to login to XMPP and the roster of a device is the same as the users that may access it. This information can be accessed through a JSON API.
One way would be to mirror changes as they happen, but I don't like that idea since there are too many steps that could go wrong.
The best solution I can think of is to let the XMPP server use the JSON API instead of its builtin database. It would be read-only, but that is not a problem since all registration and sharing should be done on the webserver.
Any ideas on how to proceed? The functionality described above is more or less all that we need: we don't need S2S, offline messages, etc. We are currently using Ejabberd, but Prosody or Openfire are perhaps better alternatives?
For authentication, it looks like this ejabberd contribution does exactly what you need:
https://github.com/processone/ejabberd-contrib/tree/master/ejabberd_auth_http
For roster, it is easy to write a custom roster module that will be hitting your HTTP backend instead of query the database thanks to ejabberd API.
You can have a look at mod_roster as a guide to implement the methods: https://github.com/processone/ejabberd/blob/master/src/mod_roster.erl

Managing multiple apps with one Google Analytics account?

I've just setup a Google Analytics for Mobile Apps account and I've implemented the SDK in my iPhone app with no trouble at all. However, I haven't figured out how to manage multiple apps with one account. It seems fairly easy to setup multiple subdomains when dealing with websites and I've noticed the javascript code has a setSubdomain function that doesn't seem to be present in the iPhone SDK.
Is there any way I can have google analytics differentiate my different apps for the same account?
Set up more profiles in GA - one profile per app. You should end up with UA codes like UA-XXXXX-1 and UA-XXXXX-2 - the XXXXX is the account identifier, and the suffix is the 'web property identifier' - in this case each app will have it's own property identifier. They don't match up 1-to-1 to GA profiles, as you can have more than one profile for a web-property-identifier (so you can have profiles with different filters on the same data), but in your case I'd suggest a separate web property IDs for each application.
So the docs say:
To use the SDK, you must create a free
account at www.google.com/analytics,
and create a new website profile in
that account using a fake but
descriptive website URL (e.g.
http://mymobileapp.mywebsite.com).
Once you create the profile, write
down or keep a copy of the web
property ID that is generated for the
newly-created profile. A Web property
ID is also known as the UA number of
your tracking code and looks like
UA-xxxxx-yy, where the x's and y's
indicate the unique numbers for your
profile. You must indicate the web
property ID you'd like to use when
instantiating the tracking object. See
Web Property for more information.
Appears to me you simply setup that "fake website" such as http://myapp1.yourwebsite.com and then you'll get a new UA- number which you plug into the code within myapp1.
App2 will have a different UA- number you use.