Tag Archives: facebook

Facebook Workplace partners team to boost platform uptake

Two Facebook Workplace partners are teaming up to accelerate the adoption of the social media giant’s enterprise collaboration platform.

Talk Social to Me, based in Mill Valley, Calif., and ServiceRocket, based in Palo Alto, Calif., have launched Elevate, a program the companies said targets deskless workers in regulated industries. Talk Social to Me will contribute consulting services in such fields as compliance management, spontaneous conversation trends and influencer coaching, while ServiceRocket will provide its proprietary Moderation and Insights application.

Facebook Workplace partners have been upping their investment in the platform in recent months, with the Elevate service being one of the more recent examples. Facebook said it has 30,000 companies using Workplace by Facebook, which the company launched in October 2016. The company unveiled a partner program at that time.

Carrie Basham Young, CEO and founder of Talk Social to Me, said ServiceRocket’s Moderation offering is a customizable off-the-shelf application. The application lets enterprises set keyword monitors and velocity controls, which alert administrators when a particular conversation generates a lot of reaction in terms of comments or shares. Young said the administrators could be Workplace community managers or executives in charge of a particular employee group within a company.

Talk Social to Me, meanwhile, will help build ServiceRocket’s moderation tool into an enterprise’s crisis communication plan or community management plan, Young said. She added the company will also teach organizations how to respond to critical conversations, whether they are positive or negative.

Carrie Basham Young, CEO and founder at Talk Social to MeCarrie Basham Young

Young said the Elevate program could apply to any company that seeks to have better insight into organizational conversations. She said the industries that could prove the best fit for the program include retail, healthcare and manufacturing. In those segments, she said, “you have a majority of employees who don’t sit at a desk all day” and may rely on union leaders or local managers to convey information from headquarters.

Young said her company and ServiceRocket had previously connected several times around shared customers, with each company providing different services. The Elevate announcement, she said, formalizes that partnership and go-to-market strategy.

Logicworks rolls out cloud monitoring tool

Logicworks, a cloud and managed service provider (MSP) based in New York, is rolling out a cloud monitoring service that integrates with Amazon Web Services and Microsoft Azure.

[The Elevate program suits industries such as retail, healthcare and manufacturing where] you have a majority of employees who don’t sit at a desk all day.
Carrie Basham Youngfounder and CEO, Talk Social to Me

The offering, dubbed Pulse, is a software-as-a-service portal that Logicworks said is geared to enterprises operating mission-critical application in AWS and Azure cloud environments. Logicworks’ customers can access the portal at no charge. Pulse, according to the cloud company, includes automated industry best practice enforcement bots that scan customers’ cloud environments, custom scans for common architectural red flags that could lead to unauthorized account access, and text message alerting and notification regarding important changes to mission-critical applications. Those changes could include traffic surges or unusual usage patterns.

Ken Ziegler, CEO at Logicworks, said Pulse has its origins in software the company built for internal use. He said his company realized, as the cloud environments under its management continued to grow, it would become “impossible to keep track of all the various cloud-native services running for our customers across different platforms on a manual basis.”

Logicworks developed a programmatic way to scan for anomalies in cloud environments, with the alerts generated from the scanners distributed to internal team members, Ziegler noted. Pulse came about when customers asked to have control over the scanners and the associated notification engine.

Reliam looks to grow via acquisitions

Reliam LLC, a managed services provider focusing on public cloud platforms, plans to use a recent round of funding to pursue acquisitions. Great Hill Partners, a private equity firm in Boston, has provided an initial investment of $17 million and has reserved up to $75 million for further investment.

Reliam is looking for deeper consulting capabilities for complex cloud migrations, noted Simon Anderson, CEO at Reliam. “That is an important building block,” he said.

Anderson also said the company will look to build capabilities, through in-house efforts or via acquisition, in database management optimization. In addition, the Los Angeles company may look to make geographic acquisitions to build up sales and business development teams in different regions in the U.S.

Reliam will also use the funding to invest in automation and tooling for delivering managed services, Anderson added.

The company reported a triple-digit percentage revenue increase year over year, citing new customer growth and existing customers adding new cloud-based applications that need to be managed.

Other news

Cloud-based ERP vendor Oracle NetSuite expanded its roster of partners with consulting and implementation firms Apps Associates, BTM Global and ISP3.

Mphasis, an IT solutions provider, has selected Fortinet over Cisco and Palo Alto Networks as its cybersecurity provider. Mphasis will deploy Fortinet Security Fabric offerings in its network, which spans eight locations in India. Channel partners have been finding consulting and integration opportunities in the Fortinet Security Fabric.

Continuum, which provides an IT service delivery platform for MSPs, has entered the Southern African market through a partnership with Sovaton, a cybersecurity distributor. The Sovaton pact will offer Continuum’s remote monitoring and management platform to potential customers in South Africa, Botswana and Zimbabwe.

Skybox Security, a cybersecurity management vendor, named Uri Levy as its vice president of worldwide channels. In his new role, Levy will oversee the development of Skybox’s global reseller network and channel program. Levy’s 2018 goals include launching a new program for managed security services providers and systems integrators, according to Skybox.

Market Share is a news roundup published every Friday.

Apple Pay Cash

Getting in a bit late on Facebook Messenger, Google Wallet, and PayPal’s action, Apple Pay Cash is the latest peer-to-peer payment system from a tech giant. Apple’s mobile operating system has long had a tie-in with your credit card, thanks to the Apple Wallet app. Starting with iOS 11.2, however, the new Apple Pay Cash service lets the company play an even greater role in your finances. For those who are passionately dedicated to the Apple ecosystem, it has an appeal. But if you want to pay someone who doesn’t have an Apple device, you’re better off with a competitor, like Venmo, that offers cross-platform options, as well as more advanced payment features.

Similar Products

What Is Apple Pay Cash?

Since iOS 8.1, Apple Wallet has let you pay participating stores and websites from your iPhone, touch-free, using a credit card that you connect with the service. It hasn’t, however, been able to let you pay friends directly, as you can with Facebook Messenger, Google Wallet, PayPal, Venmo, and some bank apps. Unlike the previous Apple Wallet functionality, with Apple Pay Cash, you can actually store money in an Apple account, rather than just using Apple Pay as a conduit for a credit or bank card.

Getting Started With Apple Pay Cash

If you haven’t already done so, you first need to download and install iOS 11, specifically 11.2. You can force the update by visiting Settings > General > Software Update. If not, a slider switch in the Wallet & Apple Pay section of Settings lets you enable Apple Pay Cash. Once you slide this switch, you have to enter your Apple ID and password and accept a legal agreement stating that the services are provided through Green Dot Bank. The terms point out that Apple Pay Cash comprises two services: a virtual payment card and the funds transfer service.

Pay Cash works with every Apple phone back to the iPhone 6, and on iPads starting with the Air 2 model. If you have a MacBook with Touch ID, you can use Apple Pay Cash, or you can connect an older Mac to your iPhone and pay that way. The service also works with all versions of the Apple Watch. Androids and other non-Apple devices are not supported.

Note that you’ll only be able to send money to other iOS users who have accepted the agreement, and you both have to have two-factor authentication set up for your Apple ID. Two-factor authentication provides additional security, but it’s stricter than the other payment services’ setup requirements. Note that setup also requires re-entering your credit card digits.

After I completed these steps, I was asked to add a debit card so that money could be transferred to my new bank account. You don’t have to do this to use the service, though—I didn’t. In all, however, the setup isn’t more involved than it is with Venmo, though Facebook Payments is easier than either.

Using Apple Pay Cash

As with Facebook Messenger’s Payments app, you send money via the Apple Messages app; the option is in the app tray at the bottom of the Messages’ screen. Just tap the A icon to open it. You then see a dollar amount that you can increase or decrease, and you can switch between paying and requesting. Venmo and Google Wallet require you to open their separate apps to make payments; so that’s a plus for Facebook and Apple, in that you access payments from an app you’re probably using regularly already.

When I tapped Pay to send $1 to a colleague and then hit the Send up arrow, I had to approve the transaction with a Touch ID finger press (of course, iPhone X users will use Face ID). For sending this dollar, I paid a 3 percent fee (the same as with Venmo and other services), but that’s because the payment was via credit card. If you use a bank debit card, however, you can avoid that fee. The chat entry says Pending until the recipient receives the funds.

You can also use Siri to pay someone, but that’s something also offered by Venmo. Apple Pay Cash, thankfully, doesn’t by default share your every transaction with a special-purpose social network, as Venmo does. With Venmo, unless you change privacy settings, any of your contacts can see exactly who you paid in a feed of transactions. Some may like like this, but it seems like an invasion of privacy to me. However, Venmo offers a couple of important advantages over Apple’s system: You can scan a QR code to verify your payee, and you can attach notes along with a payment. Venmo also lets you pay amounts smaller than $1, Apple’s minimum. Google Wallet, also available for iOS, adds the ability to split payments among multiple recipients.

If you receive money from a contact, it goes into your Apple Pay Cash virtual cash card. You can use that balance either by dumping it back into a connected bank account or to pay for something else via Apple Pay or Apple Pay Cash.

Apple Pay Cash, Venmo, and can all be used to shop at online retailers; PayPal (which also owns Venmo) may have the upper hand here, as the leading internet payment service. The biggest advantage of Venmo, PayPal, and Facebook Payments, however, is that they’re platform-independent—with any of them, you can send money to anyone, regardless of the operating system they use. And with any of them, you can make and receive payments from a web browser—not so with Apple Pay Cash. If you’re using Apple’s system and want to pay an Android user, you’re going to have to hand over dirty old dollar bills, for now.

Should You Pay the Apple Way?

Apple Pay Cash offers a relatively easy and secure way for iOS users to make peer-to-peer payments. But the tech giant is a bit late to the party, and, as with many things in Apple’s history, the service lives in too closedof an ecosystem. In addition to that, Venmo, our Editors’ Choice payment app, offers a richer slate of payment options. If and when Apple adds the ability to pay Android users, we’ll update this review.

Facebook, IBM, Microsoft collaboration developments released

Facebook, IBM, Microsoft and Zoho turned to their market strengths this week to try to stand out in the crowded field of vendors building cloud-based platforms for team collaboration in the workplace.

Microsoft announced at its Ignite developer conference in Orlando, Fla.,  that it would slowly replace Skype for Business Online with its Teams user interface, making the latter the core communications client for Office 365 — the online business productivity suite with 60 million commercial customers. Analysts expect the online version of business Skype to disappear by 2020.

A key advantage Microsoft has over competitors is the significant number of businesses using the Office 365 suite. Having everything in the same package makes it easier for companies to deploy individual products enterprise-wide, analysts said.

Many collaboration vendors have struggled to make companywide deals, but Facebook showed the advantage of having a social network used by billions of people. Facebook said Wal-Mart Stores Inc. planned to roll out across its workforce the business version of the social network, called Workplace. The retail giant has 2.3 million employees worldwide.

“Both Workplace by Facebook and Microsoft Teams are positioning themselves as solutions best suited for companywide deployments,” said Alan Lepofsky, an analyst at Constellation Research, based in Cupertino, Calif.

The Teams and business Skype merger trims the Microsoft collaboration portfolio from four to three products. The remainders include Yammer and Office 365 Groups. The consolidation will make the product line less confusing, analysts said.

IBM leans on Watson

IBM is another collaboration provider going after enterprise-wide deals. To differentiate itself from rivals, IBM has integrated its cloud-based cognitive computing platform, Watson, with its Workspace group-messaging client.

Both Workplace by Facebook and Microsoft Teams are positioning themselves as solutions best suited for companywide deployments.
Alan Lepofskyanalyst at Constellation Research

This week, IBM released Watson-powered analytics that organizes Workspace group posts into categories, so people can find shared information faster. The features had been available only as a technology preview.

Finally, Zoho gave its suite of cloud-based productivity software a boost with the integration of a team-messaging app the company called Cliq. The software provides features that are standard with the genre, such as group chat, file sharing, and audio and video calling.

In general, the announcements this week showed each vendor delivering a product stamped with technology that leveraged individual strengths. “[But] at the end of the day, it comes down to which platform is going to be easiest to use and which platform you can trust, ” said Jon Arnold, an independent analyst and strategy consultant based in Toronto.

Marea: The future of subsea cables

Microsoft, Facebook and Telxius complete the highest-capacity subsea cable to cross the Atlantic

People and organizations rely on global networks every day to provide access to internet and cloud technology. Those systems enable tasks both simple and complex, from uploading photos and searching webpages to conducting banking transactions and managing air-travel logistics. Most people are aware of their daily dependency on the internet, but few understand the critical role played by the subsea networks spanning the planet in providing that connectivity.

Read more

ICYMI – Six Updates and a New SDK

Dev Center Acquisition & Engagement Platform

Successful developers use various channels to spread the word about their apps, such as Facebook, Twitter, popular blogs or Windows Dev Center’s own “Promote your app” feature. We’ve grown this solution over the past two and a half years, evolving it into a complete platform with machine-learning algorithms to maximize user acquisition and engagement campaign ROI.

Adding UWP Features to Existing PC Apps

In addition to Windows Store distribution and modern deployment technology, the Desktop Bridge enables you to use exciting Universal Windows Platform (UWP) features and capabilities that were previously unavailable to existing PC software.

Creator’s Update is next week!

Join our livestreamed event on February 8, 2017 to see what’s new for developers in the Windows 10 Creators Update, what it means for your apps and games, and more about Microsoft’s latest developer products. Whether you’re building for the web or UWP, the latest consumer app or line-of-business tool, there’s something in it for you.

Advertise Across Premium Platforms

The first and most important reason to use premium platforms is wider reach. Microsoft premium platforms such as MSN, Outlook, Skype and Solitaire collection are used by millions of users daily, and now your ad campaigns have a chance to showcase your awesome app when they interact on these platforms.

A triple-win with Playtem

Playtem’s monetization strategy is really interesting. The platform, currently available for Unity games deployed to UWP, iOS and Android, combines both ads and in-app purchases.

The latest Desktop Converter update is now in the Windows Store

Desktop App Converter is a tool that enables you to bring your existing desktop apps written for .NET 4.6.1 or Win32 to the Universal Windows Platform (UWP). You can run your desktop installers through the converter in an unattended (silent) mode and obtain an AppX package that you can sideload on your machine or upload to the Windows Store.

Windows 10 SDK Preview Build 15021!

Check it out here: http://wndw.ms/KEXB94

The Windows team would love to hear your feedback. Please keep the feedback coming using our Windows Developer UserVoice site. If you have a direct bug, please use the Windows Feedback tool built directly into Windows 10.

A complete user acquisition & engagement platform

With so many apps getting published to the Windows Store daily, it can be a challenge to attract and acquire new customers. Successful developers use various channels to spread the word about their apps, such as Facebook, Twitter, popular blogs or Windows Dev Center’s own “Promote your app” feature. We’ve grown this solution over the past two and a half years, evolving it into a complete platform with machine-learning algorithms to maximize user acquisition and engagement campaign ROI.

Major milestones during the user acquisition & engagement platform journey

Our platform now lets you use objective-driven ad campaigns, where you can choose to acquire more customers or re-engage with your existing customers. With the recent launch of Universal campaigns, your app can get in front of customers interacting with Microsoft premium surfaces such as MSN, Outlook, Skype, Microsoft solitaire collection, etc.

The Dev Center user acquisition and engagement platform capabilities are tailored to meet the needs of every developer. You can start with zero dollars using community ad campaigns to advertise your app for free in other apps (in exchange for showing ads for other apps in yours).

You can also promote one of your apps in your other apps using house ad campaigns – again, for free. Even more effective are our paid ad campaigns, with a great return on investment for both app install and app re-engagement campaigns.

In addition, we have recently released our APIs so that you can use the campaign creation/update and reporting information with your organization’s built-in tools.

Universal user acquisition & engagement platform

Finally, for developers interested in running larger ad campaigns, we provide extra support with additional features:

  • $50,000 per campaign limit instead of the regular $5,000
  • Higher thresholds for billing campaigns
  • 1:1 product management team support to help tune your campaigns
  • Third-party tracking SDK support
  • Custom campaign dates
  • Custom user segment generation for huge volume goals

For info about qualifying for these features, reach us at aiacare@microsoft.com.

Whether you’re a developer just starting your journey with the Windows app ecosystem or a top developer looking to find users for your next hit title, the Dev Center user acquisition and engagement platform can help you reach more customers and grow your success.

How do I get started?

If you haven’t already used the app promotion capability, follow these steps to create a new ad campaign:

  • Click on the “Dashboard” after your log in to your Windows Dev Center account.
  • Click on the “Promotions” tab under the Main menu.
  • Click on “New Campaign” to create a new user acquisition or user engagement campaign.

Check out the documentation for more details, then give it a try! If you’ve got suggestions to make these features even more useful, please let us know at Windows Developer Feedback.

Going social: Project Rome, Maps & social network integration (App Dev on Xbox series)

The Universal Windows Platform is filled with powerful and unique capabilities that allow the creation of some remarkable experiences on any device form factor. This week we are looking at an experience that builds on top of the Adventure Works sample we released last week by adding a social experience with the capability (1) to extend the experience to other devices that the user owns through the Project “Rome” APIs, (2) to be location aware using the powerful Maps API, and (3) to integrate with third-party social networks. As always, you can get the latest source code of the app right now on GitHub and follow along.

And if you missed last week’s article on how to enable great camera experiences, we covered how to build UWP apps that take advantage of camera APIs on the device and in the cloud through the Cognitive Services APIs to capture, modify, and understand images. To read last week’s blog post or any of the other blog posts in the series, or to watch the recordings from the App Dev on Xbox live event that started it all, visit the App Dev on Xbox landing page.

Adventure Works (v2)

screen-shot-2016-10-27-at-1-42-33-pm

To give you a quick recap of the sample app, we released the Adventure Works source code last week and we discussed how we used a combination of client and cloud APIs to create a camera app capable of understanding images, faces and emotion, as well as being able to modify the images by applying some basic effects. Building on top of that, the goal for Adventure Works is to create a larger sample app that extends the experience, to add more social features in which users can share photos and albums of their adventures with friends and family across multiple devices. Therefore, we’ve extended the sample app by:

  1. Adding the ability to have shared second screen experiences through Project Rome
  2. Adding location and proximal information for sharing with the location and Maps APIs
  3. Integrating with Facebook and Twitter for sharing by using the UWP Toolkit.

Project Rome

Most people have multiple devices, and often begin an activity on one device but end up finishing it on another. To accommodate this, apps need to span devices and platforms.

The Remote Systems APIs, also known as Project Rome, enable you to write apps that let your users start a task on one device and continue it on another. The task remains the central focus, and users can do their work on the device that is most convenient for them. For example, you might be listening to the radio on your phone in the car, but when you get home you may want to transfer playback to the Xbox One that is hooked up to your home stereo system.

The Adventure Works app takes advantage of Project Rome in order to create a second screen experience. It uses the Remote System APIs to connect to companion devices for a remote control scenario. Specifically, it uses the app messaging APIs to create an app channel between two devices to send and receive custom messages. Devices can be connected proximally through Bluetooth and local network or remotely through the cloud, and are connected by the Microsoft account of the person using them.

In Adventure Works, you can use a tablet, phone or even your desktop as a second experience for a slideshow displayed on your TV through the Xbox One. The slideshow images can be controller easily on the Xbox through the remote or controller, and the second screen experience allows the same. However, with the second device, the user has the ability to view all photos at once, select which one to show on the big screen and even take advantage of the capabilities of the smaller device otherwise not available to the Xbox, such as enabling inking on images for a collaborative experience.

screen-shot-2016-10-27-at-1-42-54-pm

Adventure Works uses Project Rome in two places to start the second screen experience. First, when a user navigates to a collection of photos, they can click on Connect at the top to see available systems and connect to one of them. Or, if the Xbox is already showing a slideshow, a companion devices will prompt the user to start controlling the experience.

screen-shot-2016-10-27-at-1-43-36-pm

For these scenarios to work, the app needs to be aware of other devices, and that is where Project Rome comes in. To start the discovery of devices, use the RemoteSystem.CreateWatcher method to create a remote system watcher and subscribe to the appropriate events before calling the Start method (see code on GitHub):


_remoteSystemWatcher = RemoteSystem.CreateWatcher(BuildFilters());
_remoteSystemWatcher.RemoteSystemAdded += RemoteSystemWatcher_RemoteSystemAdded;
_remoteSystemWatcher.RemoteSystemRemoved += RemoteSystemWatcher_RemoteSystemRemoved;
_remoteSystemWatcher.RemoteSystemUpdated += RemoteSystemWatcher_RemoteSystemUpdated;
_remoteSystemWatcher.Start();

The BuildFilters method simply creates a list of filters for the watcher. For the purposes of Adventure Works we chose to limit the discovery to only Xbox and Desktop devices that are available in proximity.

We wanted to be able to launch the app on the Xbox from any other device and go directly to the slideshow. We first declared a protocol in the app manifest and implemented the OnActivated method in App.xaml.cs to launch the app directly to the slideshow. Once this was done, we were able to use the RemoteLauncher.LaunchUriAsync command to launch the the slideshow on the remote app if it wan’t already running (see code on GitHub).

var launchUriStatus =
    await RemoteLauncher.LaunchUriAsync(
        new RemoteSystemConnectionRequest(system.RemoteSystem),
        new Uri("adventure:" + deepLink)).AsTask().ConfigureAwait(false);

To control the slideshow, we needed to be able to send and receive messages between the two devices. We covered AppServiceConnection in a previous blog post, but it can also be used to create a messaging channel between apps on different devices using the OpenRemoteAsync method (see code on GitHub).


var appService = new AppServiceConnection()
{
    AppServiceName = "com.adventure",
    PackageFamilyName = Windows.ApplicationModel.Package.Current.Id.FamilyName
};

RemoteSystemConnectionRequest connectionRequest = new RemoteSystemConnectionRequest(remoteSystem);
var status = await appService.OpenRemoteAsync(connectionRequest);

if (status -= AppServiceConnectionStatus.Success)
{
    var message = new ValueSet();
    message.Add("ping", "");
    var response = await appService.SendMessageAsync(message);
}

Once the app is running, both the client and the host can send messages to communicate status and control the slideshow. Messages are not limited to simple strings; arbitrary binary data can be sent over, such as inking information. (This messaging code happens in SlideshowClientPage and SlideshowPage, and the messaging events are all implemented in the ConnectedService source file.)

For example, in the client, the code to send ink strokes looks like this:


var message = new ValueSet();
message.Add("stroke_data", data); // data is a byte array
message.Add("index", index);
var response = await ConnectedService.Instance.SendMessageFromClientAsync(message, SlideshowMessageTypeEnum.UpdateStrokes);

The message is sent over using ValueSet objects and the host handles the stroke messages (along with other messages) in the ReceivedMessageFromClient handler:


private void Instance_ReceivedMessageFromClient(object sender, SlideshowMessageReceivedEventArgs e)
{
    switch (e.QueryType)
    {
        case SlideshowMessageTypeEnum.Status:
            e.ResponseMessage.Add("index", PhotoTimeline.CurrentItemIndex);
            e.ResponseMessage.Add("adventure_id", _adventure.Id.ToString());
            break;
        case SlideshowMessageTypeEnum.UpdateIndex:
            if (e.Message.ContainsKey("index"))
            {
                var index = (int)e.Message["index"];
                PhotoTimeline.CurrentItemIndex = index;
            }
            break;
        case SlideshowMessageTypeEnum.UpdateStrokes:
            if (e.Message.ContainsKey("stroke_data"))
            {
                var data = (byte[])e.Message["stroke_data"];
                var index = (int)e.Message["index"];
                HandleStrokeData(data, index);
            }
            break;
        default:
            break;
    }
}

As mentioned above, the user should be able to directly jump into an ongoing slideshow. As soon as MainPage is loaded, we try to find out if there are any devices already presenting a slideshow. If we find one, we prompt the user to start controlling the slideshow remotely. The code to search for other devices, below (and on GitHub), returns a list of AdventureRemoteSystem objects.


public async Task<List<AdventureRemoteSystem>> FindAllRemoteSystemsHostingAsync()
{
    List<AdventureRemoteSystem> systems = new List<AdventureRemoteSystem>();
    var message = new ValueSet();
    message.Add("query", ConnectedServiceQuery.CheckStatus.ToString());

    foreach (var system in Rome.AvailableRemoteSystems)
    {
        var reponse = await system.SendMessage(message);
        if (reponse != null && reponse.ContainsKey("status"))
        {
            var status = (ConnectedServiceStatus)Enum.Parse(typeof(ConnectedServiceStatus), (String)reponse["status"]);
            if (status == ConnectedServiceStatus.HostingConnected || status == ConnectedServiceStatus.HostingNotConnected)
            {
                systems.Add(system);
            }
        }
    }

    return systems;
}

An AdventureRemoteSystem is really just a wrapper around the base RemoteSystem class found in Rome and is used to identify instances of the Adventure Works app running on other devices like Surface tablets, Xbox One and Windows 10 phones.

Make sure to check out the full source code and try it on your own devices. And if you want to learn even more, make sure to check out the Cross-device experiences with Project Rome blog post.

Maps and location

As part of building out Adventure Works, we knew that we wanted to develop an app that showed a more social experience, so we added a way to see the adventures of out fictional friends and the location of those adventures. UWP supports rich map experience by providing controls to display maps with 2D, 3D or Streetside views by using APIs from the Windows.UI.Xaml.Controls.Maps namespace. You can mark points of interest (POI) on the map by using pushpins, images, shapes or XAML UI elements. You can use location services with your map to find notable places and you can even use overlay tiled images or replace the map images altogether.
screen-shot-2016-10-27-at-1-43-54-pm

The UWP Maps APIs provide powerful yet simple tools for working with and customizing location data. For instance, in order to get the user’s current location, you use the Geolocator class to request the current geoposition of the device:


var accessStatus = await Geolocator.RequestAccessAsync();
switch (accessStatus)
{
    case GeolocationAccessStatus.Allowed:

        // Get the current location.
        Geolocator geolocator = new Geolocator();
        Geoposition pos = await geolocator.GetGeopositionAsync();
        return pos.Coordinate.Point;

    default:
        // Handle the case if  an unspecified error occurs
        return null;
}

With this location information in hand, you can then create a MapIcon object based on it and add it to your map control.


if (currentLocation != null)
{
    var icon = new MapIcon();
    icon.Location = currentLocation;
    icon.NormalizedAnchorPoint = new Point(0.5, 0.5);
    icon.Image = RandomAccessStreamReference.CreateFromUri(new Uri("ms-appx:///Assets/Square44x44Logo.targetsize-30.png"));
                    
    Map.MapElements.Add(icon);
}

Adding the friends on the map is similar but we used XAML elements instead of a MapIcon, giving us the ability to focus through each one using the controller or remote on the Xbox.


Map.Children.Add(button);
MapControl.SetLocation(button, point);
MapControl.SetNormalizedAnchorPoint(button, new Point(0.5, 0.5));

Directional navigation works best when focusable elements are layed out in a grid layout. Because the friends can be layed out randomly on the map, we wanted to make sure that the focus experience works great with the controller. We used the XYFocus properties of the buttons to specify how the focus should move from one to the other. We used the longitude to specify the order so the user can move through each friend left and right, and down will bring the focus to the main controls. To see the full implementation, take a look at the project on GitHub.


foreach (var button in orderedButtons)
{
    button.XYFocusUp = button;
    button.XYFocusRight = button;
    button.XYFocusLeft = previosBtn != null ? previosBtn : button;
    button.XYFocusDown = MainControlsViewOldAdventuresButton;

    if (previosBtn != null)
    {
        previosBtn.XYFocusRight = button;
    }

    previosBtn = button;
}
if (orderedButtons.Count() > 1)
{
    orderedButtons.Last().XYFocusRight = orderedButtons.First();
    orderedButtons.First().XYFocusLeft = orderedButtons.Last();
}

While the Adventure Works app only uses geolocation for the current device, you can easily extend it to do things like find nearby friends. You should also consider lighting up additional features depending on which device the app is running on. Since it is really more of a mobile experience than a living room experience, you can add a feature like finding great nearby places to take photos but only enable it when the app is installed on a phone.

Facebook and Twitter integration (and the UWP Community Toolkit)

What’s more social than being able to share adventures and photos to your favorite social networks, and the UWP Community Toolkit includes service intergration for both Facebook and Twitter, simplifying OAuth authentication along with your most common social tasks.

The opensource toolkit includes new helper functions; animations; tile and toast notifications; custom controls and app services that simplify or demonstrate common developer tasks; and has been used extensively throughout Adventure Works. It can be used with any new or existing UWP app written in C# or VB.NET and the app can be deployed to any Windows 10 device including the Xbox One. Because it is strongly aligned with the Windows SDK for Windows 10, feedback about the toolkit will be incorporated in future SDK releases. And it just makes common tasks easy and simple!

screen-shot-2016-10-27-at-1-44-11-pm

For instance, logging in and posting to Twitter can be accomplished in only three lines of code.


// Initialize service, login, and tweet
TwitterService.Instance.Initialize("ConsumerKey", "ConsumerSecret", "CallbackUri");
await TwitterService.Instance.LoginAsync();
await TwitterService.Instance.TweetStatusAsync("Hello UWP!", imageStream)

The Adventure Works app lets users authenticate with either their Twitter account or Facebook account. The standard UWP Toolkit code for authenticating with Twitter is shown above. Doing the same thing with Facebook is just as easy.


FacebookService.Instance.Initialize(Keys.FacebookAppId);
success =  await FacebookService.Instance.LoginAsync();
await FacebookService.Instance.PostPictureToFeedAsync("Shared from Adventure Works", "my photo", stream);

Take a look at the Identity.cs source file on GitHub for the full implementation in Adventure Works, and make sure to visit the UWP Community Toolkit GitHub page to learn more. The toolkit is written for the community and fully welcomes the developer community’s input. It is intended to be a repository of best practices and tools for those of us who love working with XAML platforms. You can also preview the cap­­­­abilities of the toolkit by downloading the UWP Community Toolkit Sample App in the Windows Store.

That’s all for now

Make sure to check out the app source on our official GitHub repository, read through some of the resources provided, watch the event if you missed it and let us know what you think through the comments below or on Twitter @WindowsDev.

Don’t miss the last blog post of the series next week, where we’ll share the finished Adventure Works sample app and discuss how to take advantage of more personal computing APIs such as speech and inking.

Until then, happy coding!

Resources for Hosted Web Apps

 

Announcing UWP Community Toolkit 1.1

Today we are releasing the first update to the UWP Community Toolkit. To see the updates, first:

In under a month since the first release, we are humbled by the positive feedback we have received so far and are excited to see all the contributions the community has made, including:

  • 39 community contributors
  • 188 accepted pull requests
  • 173 issues closed
  • 678 stars
  • 159 forks

Thanks to all the contributors that were involved with this release!

Here’s a summary of what’s new in V1.1:

  1. .NET Foundation. We are excited to announce that the UWP Community Toolkit has joined the .NET Foundation, a vibrant community of open-sourced projects focused on the future of the .NET ecosystem.
  2. Updates and new features. The focus of this release is to improve the quality of the toolkit by addressing feedback we received through GitHub and the Store Sample App. Full list available in the Release Notes, including:
    1. Services: added LinkedIn service (i.e. read user profile and share activity), Microsoft Graph service (i.e. send and read emails from UWP via Office 365 or explore Azure Active Directory graph) and updates to the Facebook and Bing services
    2. Controls: added Blade, GridSplitter and DropShadowPanel controls
    3. Animations: new FadeHeaderBehavior
  3. Sample app. The UWP Community Toolkit Sample App has been updated to include the new features of this release. The Sample App is the best way to preview the features of the toolkit.
  4. Documentation. As the project joins the .NET Foundation, we moved the documentation to a new location, directly connected to GitHub.

imagenew

If you want to use it in your projects, visit the Getting Started page. If you are already using the toolkit, we recommend updating to the latest release.

You can find the roadmap of next release here.

If you have any feedback or are interested in contributing, see you on GitHub!

Download Visual Studio to get started!

Facebook, Messenger and Instagram apps coming to Windows 10

Today, we are excited to share that the official Facebook app and Messenger app for Windows 10 PCs and Tablets, and the official Instagram app for Windows 10 mobile are rolling out and will be available later today in the Windows Store.

Designed to run quickly and easily within Windows 10 and have the most up-to-date features, Facebook built Windows-only experiences into all three of these apps such as Live Tiles, which lets you quickly see new posts, messages and photos right from your home screen.

Facebook

Facebook for Windows 10

Facebook for Windows 10

Facebook for Windows 10

Keeping up with friends is faster than ever with the new Facebook app for Windows 10, the best way to experience Facebook on Windows. With Live Tiles, you can easily find out what your friends and family are up to at a glance. And now, reading and sharing articles from News Feed is quick and easy with an in-app browser. Other features include Reactions, stickers in comments, notifications so that you don’t miss important updates, and a right-hand column that shows birthday, event reminders and trending topics.

Messenger

Messenger for Windows 10

Messenger for Windows 10

Along with many of your favorite features of Facebook’s Messenger — like photo sharing, stickers, group conversations and GIFs — Messenger for Windows 10 PCs has desktop notifications so you never miss an important message. And when you pin the app to your Start menu you’ll get notified of new messages with Live Tiles.

Instagram

Instagram for Windows 10

Instagram for Windows 10

The team over at Instagram is rolling out Instagram for Windows 10 mobile with all of the community’s favorite features — including Direct Messaging, updated Search and Explore, Videos and Account Switching. Instagram also supports Live Tiles, so if you pin the app to your home screen you’ll get notifications from Instagram right on your start screen.

We’re thrilled to have this collection of apps available from Facebook for Windows 10 users coming to the Windows Store to download for free today and we’re excited to share that more great experiences from Facebook will be coming to Windows 10 mobile soon – stay tuned. Learn more about today’s news by heading to Facebook’s Newsroom and the Instagram Blog.

*The new Facebook app will replace the existing Windows desktop Facebook app once fully rolled out in the store in the coming hours. For those on Windows 10 mobile, the new Facebook app is coming soon. The new Instagram app will replace the current Instagram (beta) app on Windows 10 mobile.

Facebook Messenger gets a nice update for Windows Phone

Facebook has released an update yesterday for their Messenger app on Windows Phone. This update brings the ability for you to message people you may not be Facebook friends yet. All you need to do is tap “People” in the app to sync with your phone contacts. Then, when you want to message someone you’re not Facebook friends with just use their phone number. You also have the ability to add colorful drawings and text-to-photos from photos in your camera roll before you send them. Aside from these two new features – this update also brings improvements and bug fixes to make the app faster.

wp_ss_20141113_0001

Download Messenger from Facebook for Windows Phone here.