Xamarin.Forms How to get user name on mobile device - mobile

I am trying to receive the user name on a mobile device. I have tried
Plugin.DeviceInfo;
but i get info only about the device. I need to get info about the name and the number that the user has. Any suggestions?

Getting the User name will not work with Plugin.DeviceInfo; Plugin. This plugin is used to access DEVICE INFORMATION, such as OS, Device type...
If you want to get the user name on Xamarin.Forms, you should do it separately on each platform and call the appropriate implementation with the Dependency Service.
HERE is a great blog post which describes fully how to get the user name of a device owner with Xamarin.Forms. I think it is exacltly what you are looking for.

Related

Google smart home action : where to trigger a requestSync?

I created a smart home action and I have to implement the requestSync feature for certification.
But I don't understand from where to call it : from my backend fulfillment ? or from elsewhere ?.
In the documentation, I saw :
You must trigger a SYNC request:
- If the user adds a new device.
- If the user removes an existing device.
- If the user renames an existing device.
- If you implement a new device type, trait, or add a new device feature.
But all these user interactions are from the Google side (in the Google Home app), so I don't understand why Google doesn't trigger the sync itself, and how could my backend know that the user changed something ?
Can someone help me with this feature ?
Thank you !
But I don't understand from where to call it : from my backend fulfillment ? or from elsewhere ?
It definitely should come from backend.
But all these user interactions are from the Google side (in the Google Home app), so I don't understand why Google doesn't trigger the sync itself, and how could my backend know that the user changed something ?
This isn't a case to use the "requestSync". And your backend doesn't need to know about it if your users operate their devices from Google Home app
Here I will explain some example use case for you.
Imagine that you have your own application for controlling your devices. Then you develop the smarthome action project to make your device be able to controlled over voice. When your devices are linked with HomeGraph and you change your device's name, add or remove it from your own application. This is the time that your backend system should make "requestSync".
Even if your system doesn't allow user to make such of those changes on the device unless using Google Home app, google requires your system to be able to send them the "requestSync" for the case that when you "Implement a new device type, trait, or add a new device feature". This is the way that allows you(as developer) to update your users' devices without them(your users) unlinking and relinking their account.
And if you are not clear about "Implement a new device type, trait, or add a new device feature". Just thinking of case that you want to add more traits for your devices and you want to make update on all devices that has been linked before to be able to use a functionality from your new trait. You will need "rquestSync"
Hope this help. Goodluck :)

Custom Slot for Full Name of User and Linking multiple account in Single alexa skill

I have two queries related to Alexa Skill -
I am using the Account Linking feature, But when I logged in with one account I am unable to login with another account, any idea? for more information on this please refer here
https://forums.developer.amazon.com/questions/233563/how-to-delinking-an-linked-account-from-my-alexa-s.html
For User Full Name I have created a custom Slot, but unable to fetch Exact Full Name spoken to Echo show device by the user, for example, Use speaks Danny Stone but Alexa device capture it as "Danny", Dannys tone", "Danni" etc.
Any help would be appreciated
For the name, do a two or three slot response pattern on that intent. First name can use Amazon's built in first name slot type. For the other(s), you'll need custom slots with lots of examples.
For unlinking an account, check out this option: https://developer.amazon.com/en-US/docs/alexa/account-linking/skill-activation-api.html#disable-and-unlink
I read your query on the other forum. I would suggest you clear the cache of your Alexa app if you are logging on to your phone. If it does not help then open an incognito browser and disable enable the skill and link the desired account.
Use custom AMAZON.FirstName intent or AMAZON.Person intent for the names. I am not sure that it will be able to recognize some tricky names.

Identify the BSSID of the AP that user is currently connected to

Working on a project for class specific to the college network.
The idea is that if we can fetch an identifying characteristic of the web session/connection on campus, we can map out and associate the AP with their location coordinates and plot them on a map. More specifically, we're trying to determine which AP the device is connected to.
Basically the user would bring up a webpage on the intranet from a wi-fi enabled device (preferably an iPad or iPod Touch), and either on the page load or through an action event an unique identifier is captured; which we could in turn associate with lat & long coordinates. The idea here is that the unique identifier would be sent and stored into to a DB field (almost like a guestbook submission). Then, externally on a separate public webpage - viewers would be able to see these unique identifiers returned and translated as the most recently visited locations plotted on a map. This would translate to a manual "check-in" tracking service.
Capturing the IP address will not work as they are not static.
BSSID is part of the active connection attributes set and as such is stored inside the client networking component of the OS. You need to query it by calling the appropriate API of your OS (e.g., in Windows it would be WlanQueryInterface). You'll also need to be able to call this API from script, you can find some info about this here: How to call Windows API functions in JScript?

how do I set up passkit entitlements in Xcode

I have created a pass id in the provisioning profile, generated the certificate and private key, and our server code can generate passes. However I cannot figure out how to make the project entitlements work with passkit. How do you associate a pass id with your app id or bundle id or something? XCode shows the option "Use pass type identifiers from the provisioning profile". Yet it doesn't appear to be anything in the portal to connect a profile with a pass id.
I can run things in debug on my local device, but how without the entitlements I can't distribute this to anyone.
Clearly I am missing some magic and all the docs talk about is building passes and using them, but nothing about building entitlements. Any ideas?
Apparently the answer is, nothing. The Xcode user interface is confusing but apparently you don't have to do anything to support any pass id that your organization created. Passes are unique to your developer account, not any specific of your apps.
For once I wish Apple would actually document new features in the XCode UI.

Calling a specific contact endpoint with Lync

I'm trying to develop a Lync application that allows a user to select which of a contact's endpoints they would like to call. For instance, if User A has two phones listed, then User B can choose between those two options and call whichever he likes to try and get in contact with them. I know with the regular Lync Client(not suppressed) this appears to be possible, but Im not sure how to accomplish it programatically in UISuppression mode. Any ideas?
I may be mistaking your question for something different ... but is this not just the difference between calling a sip uri and calling one or more tel uris.
So... in the Lync client, people can "Call Lync" me, which will start a call to my sip uri, or they can see my Work and Mobile numbers, and place a call to either of those, which will then call a tel uri call.
If I sign into Lync on my mobile (creating two endpoints) then other people still only see one option to "Call Lync" me, and it's down to my own settings whether I get simultaneous ring or forward-ring, or whatever.
You can get a contacts tel URI details from their contact object, and place calls just as you would a sip uri call, however instead of placing a call to sip:user#domain.com you use tel:+4412345654321 etc.

Resources