Tag Archives: G Suite

Making progress (bars) with Slides Add-ons

Originally posted on the G Suite Developers Blog by Wesley Chun (@wescpy), Developer Advocate and Grant Timmerman, Developer Programs Engineer, G Suite

We recently introduced Google Slides Add-ons so developers can add functionality from their apps to ours. Here are examples of Slides Add-ons that some of our partners have already built—remember, you can also add functionality to other apps outside of Slides, like Docs, Sheets, Gmail and more.

When it comes to Slides, if your users are delivering a presentation or watching one, sometimes it's good to know how far along you are in the deck. Wouldn't it be great if Slides featured progress bars?

In the latest episode of the G Suite Dev Show, G Suite engineer Grant Timmerman and I show you how to do exactly that—implement simple progress bars using a Slides Add-on.

Using Google Apps Script, we craft this add-on which lets users turn on or hide progress bars in their presentations. The progress bars are represented as appropriately-sized rectangles at the bottom of slide pages. Here's a snippet of code for createBars(), which adds the rectangle for each slide.

var BAR_ID = 'PROGRESS_BAR_ID';
var BAR_HEIGHT = 10; // px
var presentation = SlidesApp.getActivePresentation();

function createBars() {
var slides = presentation.getSlides();
deleteBars();
for (var i = 0; i < slides.length; ++i) {
var ratioComplete = (i / (slides.length - 1));
var x = 0;
var y = presentation.getPageHeight() - BAR_HEIGHT;
var barWidth = presentation.getPageWidth() * ratioComplete;
if (barWidth > 0) {
var bar = slides[i].insertShape(SlidesApp.ShapeType.RECTANGLE,
x, y, barWidth, BAR_HEIGHT);
bar.getBorder().setTransparent();
bar.setLinkUrl(BAR_ID);
}
}
}

To learn more about this sample and see all of the code, check out the Google Slides Add-on Quickstart. This is just one example of what you can build using Apps Script and add-ons; here's another example where you can create a slide presentation from a collection of images using a Slides Add-on.

If you want to learn more about Apps Script, check out the video library or view more examples of programmatically accessing Google Slides here. To learn about using Apps Script to create other add-ons, check out this page in the docs.

Make progress (bars) in presentations with Slides Add-ons



We recently introduced Google Slides Add-ons so developers can add functionality from their apps to ours. Here are examples of Slides Add-ons that some of our partners have already built—remember, you can also add functionality to other apps outside of Slides, like Docs, Sheets, Gmail and more.

When it comes to Slides, if your users are delivering a presentation or watching one, sometimes it's good to know how far along you are in the deck. Wouldn't it be great if Slides featured progress bars?
In the latest episode of the G Suite Dev Show, G Suite engineer Grant Timmerman and I show you how to do exactly that—implement simple progress bars using a Slides Add-on.

Using Google Apps Script, we craft this add-on which lets users turn on or hide progress bars in their presentations. The progress bars are represented as appropriately-sized rectangles at the bottom of slide pages. Here's a snippet of code for createBars(), which adds the rectangle for each slide.

var BAR_ID = 'PROGRESS_BAR_ID';
var BAR_HEIGHT = 10; // px
var presentation = SlidesApp.getActivePresentation();

function createBars() {
var slides = presentation.getSlides();
deleteBars();
for (var i = 0; i < slides.length; ++i) {
var ratioComplete = (i / (slides.length - 1));
var x = 0;
var y = presentation.getPageHeight() - BAR_HEIGHT;
var barWidth = presentation.getPageWidth() * ratioComplete;
if (barWidth > 0) {
var bar = slides[i].insertShape(SlidesApp.ShapeType.RECTANGLE,
x, y, barWidth, BAR_HEIGHT);
bar.getBorder().setTransparent();
bar.setLinkUrl(BAR_ID);
}
}
}

To learn more about this sample and see all of the code, check out the Google Slides Add-on Quickstart. This is just one example of what you can build using Apps Script and add-ons; here’s another example where you can create a slide presentation from a collection of images using a Slides Add-on.

If you want to learn more about Apps Script, check out the video library or view more examples of programmatically accessing Google Slides here. To learn about using Apps Script to create other add-ons, check out this page in the docs.

ICYMI in February: here’s what happened in G Suite

While we all tuned in to see who would win gold at the Winter Olympics in PyeongChang, our teams multitasked and brought new updates to G Suite. Here’s a look at what happened in February (and okay, a final list of Olympic winners, too.).

We announced even more intelligent, connected tools

We can’t say it enough. To stay competitive, your business can’t afford to rely on decades-old legacy systems. SaaS tools—ahem, G Suite—make it easier for you to align teams, make decisions faster and to skip repetitive, manual tasks. And even better: you can do it all from one place.

This month, we highlighted new, intelligent updates in G Suite to help teams accomplish more: Hangouts Chat is available, Calendar will use artificial intelligence (AI) to suggest the best conference room for you and Quick Access in Docs will intelligently suggest files to help you build out more useful materials like it does in Drive.

ICYMI 1
Image 1 ICYMI

Now that Chat is available, you can start using it with your team to move projects forward. First thing’s first. Set up your notifications.

Go to the cog wheel at the top right of your Chat screen (chat.google.com) and select “Notification settings” to specify when and where you receive notifications on web and mobile. Choose the down arrows and select the option that’s right for you. In that same window, you can also decide whether you want to be notified by email. Once you’ve picked your preferred settings, click “ok.”

Here are more tips on how to use Chat.

ICYMI header 2

→ It’s now possible to comment on Microsoft Office files stored in Google Drive, just like you do in Docs. Comment, assign tasks or mention coworkers on Office files, PDFs and images within the Drive preview pane. Dive straight into collaborating with clients or coworkers in real-time, no matter the file.

Bloccos - Image 1

→ We’re making it easier for developers to create more engaging email experiences for their users using Accelerated Mobile Pages (AMP)—stuff like RSVPing to events, scheduling appointments or filling out questionnaires directly in email. Developers can sign up here for preview access.

→ Jamboard is coming to the European Union next month. Welcome to the Jam-fam, Republic of Ireland, The Netherlands, Denmark, Sweden, Norway, France, Spain and Finland.

→ Speaking of jamming, we also added AI-powered AutoDraw to Jamboard. This new drawing tool auto-detects what you sketch in Jamboard and pairs it with suggested images. Great for creative teams or students (or if drawing isn’t your best talent).

Autodraw

→ Now you can email coworkers within Team Drives. Click the drop-down menu next to your Team Drives name and select “Email members.” Don’t worry, it’s easy to customize who gets your email and who can access what files. Learn more.


Here’s a full list of product news (PDF version). See you next month.

Source: Drive


ICYMI in February: here’s what happened in G Suite

While we all tuned in to see who would win gold at the Winter Olympics in PyeongChang, our teams multitasked and brought new updates to G Suite. Here’s a look at what happened in February (and okay, a final list of Olympic winners, too.).

We announced even more intelligent, connected tools

We can’t say it enough. To stay competitive, your business can’t afford to rely on decades-old legacy systems. SaaS tools—ahem, G Suite—make it easier for you to align teams, make decisions faster and to skip repetitive, manual tasks. And even better: you can do it all from one place.

This month, we highlighted new, intelligent updates in G Suite to help teams accomplish more: Hangouts Chat is available, Calendar will use artificial intelligence (AI) to suggest the best conference room for you and Quick Access in Docs will intelligently suggest files to help you build out more useful materials like it does in Drive.

ICYMI 1
Image 1 ICYMI

Now that Chat is available, you can start using it with your team to move projects forward. First thing’s first. Set up your notifications.

Go to the cog wheel at the top right of your Chat screen (chat.google.com) and select “Notification settings” to specify when and where you receive notifications on web and mobile. Choose the down arrows and select the option that’s right for you. In that same window, you can also decide whether you want to be notified by email. Once you’ve picked your preferred settings, click “ok.”

Here are more tips on how to use Chat.

ICYMI header 2

→ It’s now possible to comment on Microsoft Office files stored in Google Drive, just like you do in Docs. Comment, assign tasks or mention coworkers on Office files, PDFs and images within the Drive preview pane. Dive straight into collaborating with clients or coworkers in real-time, no matter the file.

Bloccos - Image 1

→ We’re making it easier for developers to create more engaging email experiences for their users using Accelerated Mobile Pages (AMP)—stuff like RSVPing to events, scheduling appointments or filling out questionnaires directly in email. Developers can sign up here for preview access.

→ Jamboard is coming to the European Union next month. Welcome to the Jam-fam, Republic of Ireland, The Netherlands, Denmark, Sweden, Norway, France, Spain and Finland.

→ Speaking of jamming, we also added AI-powered AutoDraw to Jamboard. This new drawing tool auto-detects what you sketch in Jamboard and pairs it with suggested images. Great for creative teams or students (or if drawing isn’t your best talent).

Autodraw

→ Now you can email coworkers within Team Drives. Click the drop-down menu next to your Team Drives name and select “Email members.” Don’t worry, it’s easy to customize who gets your email and who can access what files. Learn more.


Here’s a full list of product news (PDF version). See you next month.

Develop bot integrations with the Hangouts Chat platform and API

Posted by Mike Sorvillo, Product Manager, Hangouts Chat and Wesley Chun (@wescpy), Developer Advocate, G Suite

You might have seen that we announced new features in G Suite to help teams transform how they work, including Hangouts Chat, a new messaging platform for enterprise collaboration on web and mobile. Perhaps more interesting is that starting today you'll be able to craft your own bot integrations using the Hangouts Chat developer platform and API.

Now, you can create bots to streamline work—automate manual tasks or give your users new ways to connect with your application, all with commands issued from chat rooms or direct messages (DMs). Here are some ideas you might consider:

  • Create a bot that can complete simple tasks or query for information
  • Create a bot that can post asynchronous notifications in any room or DM
  • Use interactive UI cards to bring your message responses to life
  • Use Google Apps Script to create custom bots for your colleagues or organization

For example, a bot can take a location from a user, look it up using the Google Maps API, and display the resulting map right within the same message thread in Hangouts Chat. The bot output you see in the image below is generated from the Apps Script bot integration. It returns the JSON payload just below the same image shown on this page in the documentation.

When messages are sent to an Apps Script bot, the onMessage() function is called and passed an event object. The code below extracts the bot name as well as the location requested by the user. The location is then passed to Google Maps to create the static map as well as an openLink URL that takes the user directly to Google Maps if either the map or "Open in Google Maps" link is clicked.

function onMessage(e) {
var bot = e.message.annotations[0].userMention.user.displayName;
var loc = encodeURI(e.message.text.substring(bot.length+2));
var mapClick = {
"openLink": {
"url": "https://google.com/maps/search/?api=1&query=" + loc
}
};

return {
// see JSON payload in the documentation link above
};
}

Finally, this function returns everything Hangouts Chat needs to render a UI card assuming the appropriate links, data and Google Maps API key were added to the response JSON payload. It may be surprising, but this is the entire bot and follows this common formula: get the user request, collate the results and respond back to the user.

When results are returned immediately like this, it's known as a synchronous bot. Using the API isn't necessary because you're just responding to the HTTP request. If your bot requires additional processing time or must execute a workflow out-of-band, return immediately then post an asynchronous response when the background jobs have completed with data to return. Learn more about bot implementation, its workflow, as well as synchronous vs. asynchronous responses.

Developers are not constrained to using Apps Script, although it is perhaps one of the easiest ways to create and deploy bots. Overall, you can write and host bots on a variety of platforms:

No longer are chat rooms just for conversations. With feature-rich, intelligent bots, users can automate tasks, get critical information or do other heavy-lifting with a simple message. We're excited at the possibilities that await both developers and G Suite users on the new Hangouts Chat platform and API.

New ways to help teams work faster and smarter with G Suite

Today’s workplace is vastly different than it was 30 years ago. It used to be that a business could rely on a single team in a single location to get things done. These days, business is more diverse, dynamic and distributed than ever before. Decisions have to be made fast, teams need to align quickly and time can’t be wasted on repetitive, manual tasks. Consequently, companies that rely on decades-old, legacy work systems may find they aren’t agile enough to compete and stay relevant.

Imagine that your team needs to close a major sales deal. Stakeholders in multiple locations have to be consulted on the strategy. Customer needs have to be identified, a winning pitch must be drafted and the entire team must align on the right pricing approach—all before the end of the quarter.

G Suite makes this possible. It transforms the way teams collaborate, with intelligent tools that help them solve problems faster and focus their time on work that matters. Today, we’re announcing new, intelligent updates to G Suite to give businesses even more ways to manage projects—like closing a sales deal or bringing a new product to market—from one place.

Use a new, centralized platform to stay aligned on projects and make decisions quicker.

Available today, Hangouts Chat makes it easy to collaborate efficiently so teams can make faster decisions. With team chat rooms and threaded conversations, powerful search functionality and intelligent bots that connect workflows and speed up tasks (even with 3rd party apps), you can work on projects from one spot—like opening a new store location or launching an advertising campaign. Chat has deep integrations with other G Suite apps like Google Drive, Calendar and Hangouts Meet, and built-in security to meet retention, eDiscovery and regulatory/compliance needs for enterprises. Read more about Hangouts Chat or learn how you can build your own bots.

Spend less time setting up meetings and more time accomplishing goals.

We want to make it simple to manage meetings, which is why we’ve built tools to help you surface conference room information and find times to meet. In the coming months, Calendar will use artificial intelligence to automatically suggest rooms for you to book. And because they’ll be optimized for each attendee based on their building and floor location, previous booking history, audio/video equipment needs and room capacity requirements, you can feel confident that you’re booking the right space for your team to be productive.

ARS - GIF

Solve problems face-to-face with teammates over video, right away.

Sometimes it’s best to jump into an online meeting face-to-face with colleagues so you don’t hold up progress. Now, your team can quickly transition from a conversation in Chat and join a Hangouts Meet video conferencing meeting with just a few clicks.

Spend less time searching for the right documents and more time crafting ideas.

Today, we’re bringing Quick Access to Docs to help teams focus their time on work that matters (similar to Quick Access in Drive). Quick Access uses artificial intelligence to suggest relevant files based on signals like Drive activity and information in your documents, so you can work with the most up-to-date information and create new material quickly. Let’s say your global marketing team needs a central project plan; the team can start a Doc and use Quick Access in the Explore panel to find information from related files and add it into the plan quickly.

Image 3 - Bundle

To stay relevant, businesses must transform how they operate. Try today’s updates in G Suite and empower your teams to work better together.

Move projects forward from one place—Hangouts Chat now available

Teams want to be able to get their work done in one place, which is why we introduced the Early Adopter Program of Hangouts Chat to bring teams together. Today, we’re making Chat generally available as a core G Suite service.  

From direct messages to group conversations, Chat helps teams collaborate easily and efficiently. With dedicated, virtual rooms to house projects over time—plus threaded conversations—Chat makes it simple to track progress and follow up tasks. In one place, you can:

  • Easily work with other G Suite apps. Upload items from Drive, collaborate on Docs, Sheets or Slides, join online meetings with Hangouts Meet, or use Google’s powerful search to look up room members, past conversations and shared files.
  • Use artificial intelligence to speed up workflows.When your teams collaborate in Chat, you can speed up manual work, like booking conference rooms, searching for files and more using artificial intelligence.
  • Collaborate with colleagues around the globe.Chat currently supports 28 languages and each room can support up to 8,000 members. It’s available on desktop for Windows and MacOS, as well as iOS and Android so you can easily collaborate on the go.
  • Have peace of mind with embedded security. Chat builds on G Suite’s security-first ecosystem and offers an enterprise-grade solution that’s reliable and compliant. With integrated support for Vault, admins can archive, preserve, search and export Chat-specific data.

Use third-party integrations in Chat to drive team projects

Chat also comes equipped with 25 bots to help speed up workflows, ranging from finance and human resources to CRM, project management and more. There are bots that integrate directly with other G Suite apps, like:

  • The @Google Drive bot which lets you know when files are shared with you, comments are made or when people request access to your docs.
  • The @Meet bot which integrates directly with Calendar to schedule meetings for you.

@Drive bot

Or you can build integrations on top of Chat to incorporate tools you use everyday. Building for Chat is simple. Says Prosperworks’ Chief Product Officer, Jon Aniano, “Hangouts Chat offered a terrific platform for us to build a Prosperworks Bot. We’ve since used the bot to deliver real-time CRM status updates to our sales teams, and they’ve been able to be more responsive to customer needs. Chat has made quick, intelligent collaboration a reality for our teams.”

These popular enterprise application companies have already developed bots for you to try out:

Bot integration partners - Hangouts Chat

In case you’re wondering, Chat is compatible with Hangouts and works with your existing contacts. To get started, go to chat.google.com on the web or download the app on your desktop or mobile devices. Chat will be made available over the next 7 days. Here are some handy resources on Hangouts Chat and Meet to help you get started (or just use this cheat sheet).

Google Domains: an easy way to get online

In 2015, we launched Google Domains to help businesses find and buy relevant domains. Here are a few ways we’re helping these companies build, manage and expand their online presence, including a number of key features we recently introduced.

Increased domain name options

Last year, we continued to serve customers by expanding our domain name offerings. Our more than 1.8 million domain registrations now range from traditional, well-known endings like .com, .org, and .net to many newly-released endings including .business, .online, and .design.

Expanded international coverage

At launch, Google Domains was available primarily in the United States. As of today, we are available in 14 countries in addition to the U.S. including: Australia, Brazil, Canada, France, India, Indonesia, Italy, Japan, Mexico, Netherlands, Spain, Thailand, United Kingdom and Vietnam.


One-click integration with G Suite

We recently announced one-click integration with G Suite, allowing businesses to quickly create professional branded email addresses and simultaneously access G Suite’s range of intelligent productivity tools like Docs, Calendar, Google Drive and Hangouts Meet. Benefits also include 30 GB of file storage, and 24/7 customer support. We also introduced simpler domain management settings, allowing for access to be shared among multiple authorized users.


Improved privacy and security

We know privacy is valuable for our users, so, where permitted, we offer WHOIS privacy as the free, default option for new domain registrations. This helps protect against spam and other forms of abuse because personal information is not available publicly.


Additionally, we've invested in making advanced security features easy and accessible to small businesses. For example, all domain registrations are configured with Cloud DNS by default, ensuring the domain name can be accessed quickly by users around the world. DNSSEC (Domain Name System Security Extensions) is another feature that protects domains from attacks that target users or personal information, and can be enabled for free in just one click.


Going forward, we plan to roll out newer, faster search features and integrate with other Google products to make it easier to access the Google services you know and love.


Get started today at Google Domains, and if you have any questions or feedback, please let us know!


Develop bot integrations with the Hangouts Chat platform and API



You might have seen that we announced new features in G Suite to help teams transform how they work, including Hangouts Chat, a new messaging platform for enterprise collaboration on web and mobile. Perhaps more interesting is that starting today you’ll be able to craft your own bot integrations using the Hangouts Chat developer platform and API.

Now, you can create bots to streamline work—automate manual tasks or give your users new ways to connect with your application, all with commands issued from chat rooms or direct messages (DMs). Here are some ideas you might consider:
  • Create a bot that can complete simple tasks or query for information 
  • Create a bot that can post asynchronous notifications in any room or DM 
  • Use interactive UI cards to bring your message responses to life 
  • Use Google Apps Script to create custom bots for your colleagues or organization 
For example, a bot can take a location from a user, look it up using the Google Maps API, and display the resulting map right within the same message thread in Hangouts Chat. The bot output you see in the image below is generated from the Apps Script bot integration. It returns the JSON payload just below the same image shown on this page in the documentation.


When messages are sent to an Apps Script bot, the onMessage() function is called and passed an event object. The code below extracts the bot name as well as the location requested by the user. The location is then passed to Google Maps to create the static map as well as an openLink URL that takes the user directly to Google Maps if either the map or "Open in Google Maps" link is clicked.

function onMessage(e) {
var bot = e.message.annotations[0].userMention.user.displayName;
var loc = encodeURI(e.message.text.substring(bot.length+2));
var mapClick = {
"openLink": {
"url": "https://google.com/maps/search/?api=1&query=" + loc
}
};

return {
// see JSON payload in the documentation link above
};
}

Finally, this function returns everything Hangouts Chat needs to render a UI card assuming the appropriate links, data and Google Maps API key were added to the response JSON payload. It may be surprising, but this is the entire bot and follows this common formula: get the user request, collate the results and respond back to the user.

When results are returned immediately like this, it's known as a synchronous bot. Using the API isn't necessary because you're just responding to the HTTP request. If your bot requires additional processing time or must execute a workflow out-of-band, return immediately then post an asynchronous response when the background jobs have completed with data to return. Learn more about bot implementation, its workflow, as well as synchronous vs. asynchronous responses.

Developers are not constrained to using Apps Script, although it is perhaps one of the easiest ways to create and deploy bots. Overall, you can write and host bots on a variety of platforms:
No longer are chat rooms just for conversations. With feature-rich, intelligent bots, users can automate tasks, get critical information or do other heavy-lifting with a simple message. We're excited at the possibilities that await both developers and G Suite users on the new Hangouts Chat platform and API.

Bringing the power of AMP to Gmail

For the past few years, we’ve worked to make mobile pages load faster through an open-source framework called Accelerated Mobile Pages (AMP). AMP started as an effort to help publishers, but as its capabilities have expanded over time, it’s now one of the best ways to build rich webpages. With this came the opportunity to modernize one of the most popular places where people spend their time: email.

Today, we’re bringing the power of AMP to email through the Gmail Developer Preview of ‘AMP for Email’. This new spec will be a powerful way for developers to create more engaging, interactive, and actionable email experiences.

For example, imagine you could complete tasks directly in email. With AMP for Email, you’ll be able to quickly take actions like submit an RSVP to an event, schedule an appointment, or fill out a questionnaire right from the email message. Many people rely on email for information about flights, events, news, purchases and beyond—more than 270 billion emails are sent each day! AMP for Email will also make it possible for information to easily kept up-to-date, so emails never get stale and the content is accurate when a user looks at it.

Companies like Pinterest, Booking.com and Doodle are developing new experiences for consumers using AMP for Email, and we’re excited to see what others will do soon.

GmailAMP-Pinterest-Blog-01.gif
Browse and save your favorite items in Pinterest
GMAIL_AMP_Booking.gif
View hotel rooms and up-to-date deals on Booking.com
GMAIL_AMP_Doodle.gif

Share your availability with Doodle

The AMP for Email spec is available today and we’re planning for support in Gmail later this year. To get developer preview access to AMP for email in Gmail, sign up on our site.  By bringing AMP to email, we’re opening up new possibilities for companies to engage with their audiences, and we can’t wait to see what developers will build. Because AMP for Email is an open spec, we look forward to seeing how other email clients will adopt it, too.