298 – Make your website voice enabled, with Convoworks

Interview with Tihomir Dmitrović and Nathan Wrigley.

Today we have a podcast about making your WordPress websites voice enabled. I’m joined today by Tihomir Dmitrović from Convoworks and he’s going to try to explain to me how their service works.

Usage of the voice enabled services is constantly rising. It is not just that Amazon and Google are pushing their own smart speaker/home products, there is an even stronger rise in voice assistant usage through the mobile phones. On the other hand, we have WordPress, which powers 40% of the Internet, but does not participate in the voice market almost at all. Why is that that way?Because there are no perfect tools for WordPress users.

Firstly, Amazon and Google are very concentrated on NodeJs, Python and other cloud compatible solutions, and secondly, it is not an easy task to make a tool which will be able to handle the diversity that we have on the WordPress market.

There are several WordPress based plugins, created in 2017/18 which are capable of producing Alexa skills, but they are covering just a few use cases and they have almost no ability to extend their functionality (Shoutworks, The Voice Designer, WP Alexa Flash Briefing).

Convoworks is from the beginning designed to address diversity of use cases. It defines conversation workflow on the high level and the way how to manage it through GUI. All other concrete things are just a matter of the enabled component packages which are implementing required logic.

In many ways you can compare it with Elementor or even WordPress itself. By default it is shipped with many generic components (http client, WordPress posts, sql access …) but the true power is in enriching existing WordPress plugins with optimized components which are able to expose their own functionality in optimal way. Nice overview how we actually started to work on Convoworks https://hackernoon.com/why-using-voice-assisted-technologies-to-enhance-your-websites-user-experience-is-your-next-move

Voice interface specifics

So, with Convoworks we finally have the right tool, but there are few things that we have to be aware of when planning to enable our services through smart speakers. Data and services access which are used on a regular basis are great for voice access. Meaning, it has to be something that users will use on a daily or at least weekly basis. Something like listening to music, finding sports results, buying groceries or cosmetics.

Another important thing is that there is something called voice conversation design. There are dos and don’ts if you want to have a really engaging voice interface. To overcome this design issue, we are creating solutions which consist of two parts: our generic part and concrete part on the plugin’s side. Appointment scheduling is our last example created in that manner.

Convoworks & 3rd party plugins integrations

Convoworks has an appointments package which includes components for creating and managing appointments. It also includes a full service template that you can use, but it does not know exactly which appointments plugin you are using and what its structure looks like. That part, a single data source component which implements required appointments source interface, in ideal case, should be created by appointments plugin developers. Currently, we have concrete implementations for the SImply Schedule Appointments and Easy Appointments plugins.

The latest Convoworks WP version includes support for working with form builders. Like with appointments, functionality is split in two parts. Generic part contains CRUD components (with search form entries as addition), while we concrete implementations are implementing just datasource component. Our first intgration is with Formidable Forms.

Alexa enabled appointments blog post – https://convoworks.com/appointment-scheduling-on-your-wordpress-website-now-with-amazon-alexa-skill/

Easy Appointments plugin – https://wordpress.org/plugins/easy-appointments/

SImply Schedule Appointments plugin – https://wordpress.org/plugins/simply-schedule-appointments/

Besides appointment scheduling, we have covered some other integration use cases:

Alexa trivia skill with Quiz And Survey Master plugin – https://convoworks.com/using-quiz-and-survey-master-for-wordpress-or-open-trivia-db-quizzes-for-your-alexa-skill/

Alexa podcast skill with Seriously Simple Podcasting plugin – https://convoworks.com/seriously-simple-podcasting-for-wordpress-now-with-your-own-amazon-alexa-skill/

Convoworks & generic WordPress components

Less optimal, but still much more powerful that anything else on the market, are our generic WordPress components. We have components for accessing custom wp tables and for querying post type data. Post type data is particularly interesting because we are mimicking the WordPress Loop enabling the usage of loop specific functions inside conversation workflow. We even have custom blocks for displaying search results and post details, with navigation included (next, prev, select, back to results ..). We also support the WordPress media library as a source for audio players.

WordPress Loop example – https://convoworks.com/look-ma-no-hands-wordpress-loop-is-running-on-alexa/

WordPress Media library example – https://convoworks.com/build-your-own-audio-player-or-sounds-skill-with-amazon-alexa-and-wordpress-website/

Convoworks & PHP Convoworks is actually an Open Source PHP framework, which can be implemented in any PHP application. We have two implementations of it. One is a simple example app called Convoworks Prototype and can be downloaded from our website, and the second is Convoworks WordPress which we will monetize in the future. Convoworks core library on the GitHub – https://github.com/zef-dev/convoworks-core

Convoworks prototype – https://convoworks.com/downloads/

Convoworks WP – https://wordpress.org/plugins/convoworks-wp/

Tihomir Dmitrović
  • What is the point of this?
    • voice market is growing and usage is still increasing
    • as the tech is improving, it is expected to grow in the future even more
    • chatbots are quite similar technology
  • Is there a genuine need for this? Explain how a user of an Alexa device would make use of this.
    • convenient usage – user do not need to reach for phone to access information or do some action 
    • Elders, people with disabilities 
  • Tell us about the use of voice activated devices over time.
    • services/apps that are used frequently have very high user retention. 
  • Do you need to be authenticated on Amazon’s end?
    • just as on your phone, you have to have an account to enable device
    • when using a skill, it is up to skill to require authentication data. There are two types of authentication: It can be delegated to Amazon and users can be authenticated against your website. Amazon is a good case if you are aiming to gain new users. Your website is if you already have large use base and you just want to give them voice enabled access to your services. 
  • Tell us about the use cases that have been most useful / effective.
    • default – weather, music, podcasts, meditation sounds, news
    • retail, food delivery/restaurants, local services, making reservations – but again, only if users are accessing it frequently. E.g. shop with electronics is a severe case, but shop with cosmetics or grocery is a good use case.
  • Can you make your content some kind of default in Alexa? So… “play my favourite WordPress content” would play your content.
    • not so easy, default music and podcast players are just for the big players 
  • Are there any situations where you would not advise this?
    • if the need for it is not regularly
    • if there is too much information that user has to “enter” or populate.

The WP Builds podcast is brought to you this week by…


Omnisend is the top-rated email and SMS marketing platform for WordPress. More than a hundred thousand merchants use Omnisend every day to grow their audience and sales. Ready to start building campaigns that really sell? Find out more at www.omnisend.com

GoDaddy Pro

The home of Managed WordPress hosting that includes free domain, SSL, and 24/7 support. Bundle that with the Hub by GoDaddy Pro to unlock more free benefits to manage multiple sites in one place, invoice clients, and get 30% off new purchases! Find out more at go.me/wpbuilds.

The WP Builds Deals Page

It’s like Black Friday, but everyday of the year! Search and Filter WordPress Deals! Check out the deals now

Transcript (if available)

These transcripts are created using software, so apologies if there are errors in them.

Read Full Transcript

[00:00:00] Nathan Wrigley: Welcome to the WP Builds podcast, bringing you the latest news from the worth Rest community. Now welcome your hosts, David Walmsley and Nathan Wrigley.

Hello there and welcome once again to the WP Builds podcast. You've reached episode number 298 entitled Make Your Website Voice Enabled with Convoworks. It was published on Thursday the 6th of October, 2022. My name's Nathan Wrigley and just a tiny bit of housekeeping before we. . First thing to say is if you enjoy WP Builds, please feel like sharing it in whatever way you feel fit.

Our Twitter handle is at WP Builds, and of course, feel free to just share it on any social platform that you like. The URL for the website is WP Builds.com, and if you really want to go the extra mile, we would appreciate some reviews on your podcast. Player of Choice. Apple Podcast seems to be a popular way of reviewing the podcast.

That would be most welcome. Thank you very much. Another couple of things. If you are into WP Builds and you want to keep up with what we do, head over to WP Builds.com/subscribe and you will find all of the ways that you can keep in touch. , we have just launched our Black Friday page. It's a popular destination each and every year.

You will be able to find increasingly large amounts of deals over there. I'm already in contact with various plugin and theme developers to see what kind of deals we can get onto that page. You're gonna find it at. WP Builds.com/black. That's WP Builds.com/black. Once again, if you feel like sharing that, I'd be most grateful and keep checking back book market and as the days roll towards Black Friday, hopefully there'll be more and more deals on there.

If you are a product owner and you would like to sponsor that page, you'll see a section at the top where we're going to be putting our promoted posts, and if you fancy joining the conversation about that and you want to get your product up there, then there's some buttons on the website, yellow buttons. Click on those and let me know.

The WP Builds podcast was brought to you today by GoDaddy Pro. GoDaddy Pro, the home of managed WordPress hosting that includes free domain SSL and 24 7 support. Bundle that with The Hub by GoDaddy Pro to unlock more free benefits to manage multiple sites in one place, invoice clients and get 30% off new purchases. You can find out more by going to go.me/WPBuilds. That's go.me/WPBuilds. And we sincerely thank GoDaddy Pro for their continuing support of the WP Builds podcast.

Okay, so on the podcast today we have T Hamer, Dmitri Vich. He is from Convoworks, and Convoworks is a new graphical user interface to allow you to create things so that.

Okay. On the podcast today we have Tamiya, Dmitri Vich. He's here from Convoworks, and it's all about voice interactions. This time around, he has got a product. It's a graphical user interface to allow you to create complicated things so that your website can interact via voice. It all sounds very curious.

It's very difficult to explain, and so in the show notes, I've allowed T Hamir to. But in the podcast, he goes into how it all works, how you can get your devices in your home to interact with your website. What kind of scenarios might this be useful? It's definitely not gonna be for every website, and there are specific use cases which are recommended, but it's a fabulous, interesting episode and probably I would imagine we're staring into the future here somewhat.

I hope that you enjoy it. I am joined on the podcast today by t Hamer, Deit Travi. Hello.

[00:04:15] Tihomir Dmitrović: Hello, Nathan. Nice to

[00:04:16] Nathan Wrigley: meet you. Yeah, really. We've had a, we've had a couple of attempts at this. We've had audio problems and all sorts, but we've thought on through them. And we're gonna talk today about a really interesting part of the technology landscape and that is voice enabled services.

And t Hamir is a bit of an expert in this. He works with, I dunno if it's a founder of. But there's a company called Convoworks. And right at the outset of this podcast, I'm gonna go and say, check out Convoworks.com. That's C O N V O W O R k s.com. That will probably get rid of some of the clouds, some of the mystery at the beginning in terms of what we're gonna talk about.

But firstly, umt, would you mind just telling us a little bit about who you are, what it is that you've been doing in technology over the recent times, and how come you've got a WordPress thing? Why WordPress in part.

[00:05:09] Tihomir Dmitrović: Basically I'm involved in the computers who hold my life. Since I first get my hands on first video game, I said I wanted to be computer engineer.

And once I've finished the college I had a chance and started working immediately in the web develop. In that time it was called Fusion. But basically through, through all my career I was working in the web through various technologies. I was also working in Jssp and Java. But I settled down in php.

I like that lightness that PHP has. And once those cms. Cms frameworks that they started rising through 2000. For me verus was from the early days very clear choice to wait to go. In the times when it was just something like holding about 10% of the market verus is just create things to work.

[00:06:30] Nathan Wrigley: it's it's definitely grown a lot since then, hasn't it? Back in the day when it was 10%, it felt like it would already dominating and now we're into the low forties. Yeah, it was definitely with good luck and a bit of coincidence there. I think we, we both picked the right platform, but we're not here to talk about WordPress per se, all.

Press is gonna feature very heavily later on in the conversation, I think because what you've built is completely compatible with WordPress via a plugin. But we're here today to talk about the opportunity, which probably most of us have not taken much account of, and that is the idea of enabling voice services.

On your website. Now, I confessed to you just before we hit record, that I am probably not super qualified to hold this conversation because I do have some of those devices in my home. We've got the likes of Google and Amazon and Apple and Microsoft. They've all got different products that you can speak to.

But I have, for reasons that I don't quite understand, I've never really gotten into doing things with them. At best, I ask it to turn up the volume or turn down the volume to music that might be playing, but I don't book appointments. I don't ask it challenging questions. I don't seek facts and things like that on it, but I know that all of these things are possible.

Would you just like to paint a picture of where we're at right now? What is the, what are the capabilities that these. These technologies from these companies can do because I don't know if I'm normal or abnormal in not using them very much.

[00:08:13] Tihomir Dmitrović: Important thing to know about this kind of technologies, particularly about smart speakers.

It's quite much similar, like when you are buying a smart. . So when you buy a smartphone service, you have to have account with this sponsor. You are, you just bought or Apple or Google. And when you seriously initial, when you start your device, it's already shipped with, I don't call couple of dozens of applications, which are built in into.

And then you have then you have application store when you can add more features, more applications from custom providers. So basically that's the same thing with smart speakers. When you buy them, you have to enable to connect that with your account. And they are shipped with quite a lot of builtin features.

You can ask them various questions and they have support for them. But there is also that possibility to third party developers to develop own applications in the term of Amazon Alexa. They're called Alexa Skills, and you can create your application. Upload the, register that on the app store and the end users can enable your applications.

[00:09:49] Nathan Wrigley: So the, I guess the thing there that I find curious is that in most cases I discover that a particular application is available in voice through a visual interface. So as an example, when I open up the Google Home app on my phone, it will indicate to me, Look, did you know that you can ask questions of Spotify?

So I have a Spotify account and I can ask the speaker to play me songs, but I kinda wouldn't have known that unless I went into the phone and saw it on the phone. I, I was able to visually make. The connection between Spotify and now my speakers and the same may be true for other services.

I'm not so sure the point being that I, I was able to see that somewhere. And I guess the difficult thing for me is that if we're trying to, and we'll get into this in a minute. If we're trying to enable a voice types services on websites, how would anybody know? That your website let's create a fictional business.

Let's say that I am a dentist in my local town. I have a WordPress website already, and I would like to make it possible for people to book my appointments via the voice, the voice technology sitting in their kit, people's kitchens. How would they know that the booking system was available through voice.

Where does that discoverability come?

[00:11:22] Tihomir Dmitrović: You will certainly do some blog post or a newsletter send to your, or already to, to your customers. You already have your users, right? Yep. And okay. You are contacting me usually for the website. You have contacted me through mobile, through the phone line, which is not that much op optimal.

Web is better and, okay. Hey, my users here is the new ability. If you have Alexa enabled device, now you can check your reservations or create new booking. With your smartest

[00:12:09] Nathan Wrigley: speaker? Yeah I guess it's akin to when the internet started. At that time, if I wanted to book my local dentist, I phoned them up 100% of the time.

I would phone them up and make the reservation and without really thinking about it. Over the last 20 years, all of that has moved online and. I now would assume that I could book my appointment for the dentist online. I've never been com contacted by them to do it that way. I've just grown accustomed to everything moving in that direction.

And I guess in a sense that's your hope, is that. Voice will become so ubiquitous, so common that people will start to assume that they can book their local dentist or whatever it might be because it's just become more and more popular.

[00:13:06] Tihomir Dmitrović: Yeah, it'll it will it will come through the time, but as I said, one of the easiest way to, to.

To overcome that is just for example, next time when you are booking a point and you will see be okay, also available Alexa skill. Yeah. So I don't think there is too much literacy about

[00:13:32] Nathan Wrigley: that. Yeah, that's interesting as well. And I wonder if in the future, Google. And other search engines will present some kind of badge, as you say on the search results to say that, from now on, if you wish to do this over here, I don't know, I dunno if it's in Google's interest to promote voice.

But again, we'll get into that a little bit later. Okay? What are the kind of things that you can actually do online? Like I said, my experience is very limited. I can turn the music up, I can turn the music down, I can ask questions and so on and so forth. But I haven't really pushed the boundaries. I haven't explored the sort of things that you can do with voice Would you mind just painting a picture of the kind of things that are possible now and maybe even stray into the future and tell us a bit about what might be possible in the near future?

[00:14:25] Tihomir Dmitrović: Sure. These couple use cases you mentioned are falling into that category of the building features, what they already have, and what they already have by themselves. Creating some searches on the Google or those huge music providers or smartphones. So this is all that category of the built in stuff.

But basically whatever you are doing through the website, you can translate that and have that on voice, be theoretically. It's the same technology, right? User gives some inputs system gets that, do some validation. Okay? Maybe you have to create some values and then it inserts that into system or here is the system to give you results.

Basically everything, what you are doing through the. .

[00:15:29] Nathan Wrigley: So at the moment the only expectation that I would have if I asked Google something on my home device, the same could be true of Amazon and Apple and what have you. The only expectation I have of. Discovering a website is literally reading out content.

I may ask a question about cats and then Google will tell me that on this website they say, and then they'll, literally read out some scraped content. So in that way we are just reading out the text on the page, but obviously the web is evolving and is much more complicated.

There's forms, we can book all sorts of appointments. We can ask fill out contact details and, and hope to get emails in return. And there's lots and lots of complexity. You are saying all of that in the future. So filling out forms, booking things, asking questions, and so on and so forth.

You're saying all of that will become available either now or in the near. .

[00:16:30] Tihomir Dmitrović: No. . No. You can actually it's just question of the convenience. If you have something entering data and if it requires, I don't know 10, 10 dozen items of the data, then it's maybe too much helpful to do that. Super Bowls.

[00:16:52] Nathan Wrigley: Yeah. So a perfect example of that would be I've just re redone my car insurance and, oh, I don't know that form probably had about 50 fields that I had to click on. I had to agree to this, and I had to type in the registration number, and I had to say, How many years I don't own the car, and all of this.

Clearly the expectation is that probably that's out of bounds. It's gonna be too tricky. To keep track of what you've done so far, but in, in more straightforward cases, you're saying that all of this is possible right now. Okay, That's interesting. So if it is possible, if all of this is possible now, why do we not see it all over?

Why are people not engaging in this on mass? Everybody sh why is everybody not doing it? Is it because the implementation at the minute is too difficult?

[00:17:43] Tihomir Dmitrović: It's quite a different technology. It's quite a different technology. It requires it, it consists of some strange new keywords what they're using into that.

And basically it's all cloud based technology to, and it's not that much simple. It's not that much simple and especially for the classic web developers.

[00:18:14] Nathan Wrigley: So the likes of Spotify with their billion dollar industry, that they can do this because they can employ staff who are highly technical and the, their enterprise is just to make search work with these smart speakers.

But smaller organizations, my local dentist or whatever it may be, The technical barriers to that are too difficult. There's new things to learn. It's complicated. It's new, it's hard. And so is that what Convoworks is trying to do? Are you trying to bridge the gap between that complexity and the possibilities of having voice?

Is that the point? It's a bridge. Exactly that

[00:18:56] Tihomir Dmitrović: voice for the S.

[00:18:58] Nathan Wrigley: Okay. Oh, nice. I like it. That's a nice little strap line. Okay. Tell us what it is. If we were to go to Convoworks and we get involved with your products, what is it that we are doing? How do we see that in our WordPress website?

What are the steps that we need to go through? And I know that's gonna be really difficult because we're having to describe things which. Gonna be very visual in nature, I imagine. But just walk us through the process that we might have. And let's pick out a use case and you can come up with one yourself, but I'm gonna suggest something like a booking system or something like that.


[00:19:32] Tihomir Dmitrović: It's important to to point out right now we are mostly concentrated on Amazon later. So I will talk just about a Amazon rolling. That's fine. So when you install Convert first thing is to connect your installation with your Amazon developer account. You have to have Amazon account if you have all extra devices, we also have to have that is the same account.

Okay? And the first thing is to connect your installation with the Amazon, This classic open authentication. You have to enter some data on the Amazon side. Some data on our side, we have hints, so you can just copy past that and enter on the Amazon side. You connect that and in after that we are able to remotely manage your future Alexa skills from your workplace.

Install. So you don't have to go on Amazon side anymore.

[00:20:42] Nathan Wrigley: Okay. So the primary thing you need, and we'll stick to Amazon that's fine, is an Amazon developer account, and you basically connect the two bits. And from that moment on, we are in WordPress. Yeah. Yeah. Okay. And then, so you mentioned skills, This is a word which I've heard before, but I'm not really familiar with what the scope of skills are just.

Briefly run through that. What is a skill? Is that kind of I'll let you explain. Application.

[00:21:09] Tihomir Dmitrović: Yeah. It's a voice application. They just call that skill. It's actually quite convenient then and what's important with the skill is that it has your, it, it has its own invocation name. So when you are trying to interact with that skill, you'll say something like Alexa, Open WP.

[00:21:33] Nathan Wrigley: It's on everybody's lips. Everybody's gonna be saying that

[00:21:41] Tihomir Dmitrović: So you have to name it. And there is also tricky part on that. If you have some strange name or there can be a problem solve, you have to tune it up what's most practical for your

[00:21:54] Nathan Wrigley: users. Okay. Alright. So I'm beginning to understand a little bit more. So the skills, they're created by Amazon and you have access to them?

No. You are creating skills. I apologize. It's my application,

[00:22:08] Tihomir Dmitrović: John. Sorry, dentist. For,

[00:22:10] Nathan Wrigley: Okay, so I think I misspoke there. I said words that I didn't mean to say. What I mean is that the capabilities that the skills can have are created by Amazon. In other words, you are interacting with things that are predesigned by Amazon.

So you can do things within that application, but they're bound by what Amazon has already built. ?

[00:22:34] Tihomir Dmitrović: No. Okay. They have framework. They have framework how to create that skill. They have also user interface when you can enter that. And they have own way how to do that. For example, default way, how you are implementing logic for your Alexa skill is in aws London.

In the cloud, and they're doing that mostly in no js. Okay. Okay. But basically, as I said it's a framework it's a framework and most important thing in that what they have what they are offering there is you are actually grouping utterances, example phrases that your user can.

and you are grouping them into something that is called intense user intent. And when you have the skill user says something to that skill what Amazon is doing actually is matching. One of those examples you provided. Okay. I found that example. It is schedule, appointment intent, and they triggered the web hook on your handler.

With that information user said he wants to schedule appointment.

[00:24:09] Nathan Wrigley: Okay. So that's really interesting. So you are grouping these intentions, these intents, and so presumably you would go in let's take the booking example. You would go in and fill it up with all of the possible variations that you can think of.

Schedule appointment, book something, make an appointment. All of the possible variations that people could say, and you would then group them together under this intent of, okay, schedule something. And then Amazon would return, you said from a web book it would return something, which then leads you down another path later in the convers.

Yeah, exactly. And does Amazon does it of, does it bring, its sort of AI to bear on this? In other words, if there's no direct exact match for booking, let's say, I just, I dunno, stumble over the words or have a curious and unusual way of saying that phrase, is Amazon intelligent enough to go? Okay. I think the intention there was to book something.

Let's go in that direct.

[00:25:15] Tihomir Dmitrović: Yes. They're doing quite a good job on that. Okay. It's always better to have more examples but they're also inter that and they're giving quite good results.

[00:25:27] Nathan Wrigley: Yeah. And I'm imagining over time with the quantity of data that they're getting, they're probably modeling that better and better as the years go by.

So the chances of going wrong are pretty small. If at this point though, there is a moment of confusion where Amazon doesn't really know what to do with the phrase that you said. What do we do at that point? Do we have to design an intent for, we're not sure what's going on, or is it possible to return something which just says, I don't know.

Let's, can you say that again or something?

[00:25:55] Tihomir Dmitrović: Yes. They send you for event fallback intent. They couldn't match anything. And then we'll say, send you on your web hook again folic intent, and then you can respond with, Okay, sorry, I didn't understand it. Please say this or this.

[00:26:13] Nathan Wrigley: Okay. So I've just had what I think is a bit of an epiphany, and that is to say it this, Feels to me a lot.

Like when I, so the chat bot that we've seen all over the internet where you can, you click on the little icon in the bottom right of the website and it opens up and you're obviously not chatting with a human, but you are interacting with something, some little robot, and you type in a response, it gives you something back and essentially what you are embarking on is a journey a along a massive tree diagram.

Where what you reply leads you in one direction, and if you reply in a different way, you go in another direction. Is that basically what we're doing if we were to look at your system? Is it essentially a massive tree diagram with choices of where to go given responses? . Yeah, basically it's the classic programing.

Okay. Yeah. Perfect. Okay. So I've got a grip on that. Okay. Let's go a little bit deeper into this. What are the kind of things that, what are the kind of intentions that we're able to use? We've mentioned booking, I, I'm aware that I can turn the volume up, turn the volume down, and so on and so forth, but what are the kind of intentions that are available, if that's the right word?


[00:27:26] Tihomir Dmitrović: You can actually type what. Whatever you want, whatever, whatever makes sense for your end users.

[00:27:34] Nathan Wrigley: I think therefore I'll rephrase that question. What are the kind of things in Convoworks you can do to guide that conversation? So obviously if we hear somebody express an intent to book something that takes us in the booking direction, what are the other things that, what are the other directions that we go in, can go.

[00:27:59] Tihomir Dmitrović: Really, whatever you usually want for from some website. For example how many new comments do I have to take, for example? Are there any replies to my comment or to my blog post? Are there any there is views on these products or something like really whatever you would like to do with your.

you can just if you can say that and phrase it, you can type in that kind of examples, cage them and response with the appropriate

[00:28:39] Nathan Wrigley: information. Yeah. I'm guessing the, there's an, the s e o industry is massive because people want to optimize their content incredibly well. So it's surfaced by search engines, but also just so that.

Easy to, easy for a human to read, and I'm just wondering if there's a bit of that at play here as well. Presumably it would be quite easy to go through your UI and get yourself in a bit of a model. There's probably quite a lot of work to be done in the beginning to figure out how this tree diagram is going to look and carefully manage expectations and phrase questions in a certain way so that it's obvious what the next thing to do.

[00:29:23] Tihomir Dmitrović: Basically what we actually tried do with the Coworks we tried to make it as much more similar to building a website. Once you open the com works and we have something like dozen templates of already ready to use Alexa skills. all services, how we are going adapt In the converts you will see on the right hand.

It's something like site turn and you are something like building a webpage. If you are on the Contact US webpage, you cannot search products on the pitch, right? Yeah. So this is something like that. You have stages in the conversation and we have this is not no code tool, right? We haven't mentioned that yet.

, it's not code tool. You have Cs, you are drag drop using drag and drop to place them in a particular place. You have properties pop up to adjust how they should behave. . And that's it, like building

[00:30:45] Nathan Wrigley: the website. Let's just talk about the UI because we haven't mentioned that so far.

And it is, as you described, it's a drag and drop ui. Just talk us through how we would, how, what are we presented with and how do we actually build these these routines. I'm gonna call.

[00:31:06] Tihomir Dmitrović: . So basic thing, what we have in our conversation, Mayism is called step. So steps through conversation.

This is something like excitement. So we usually have home this is the first one. When someone opens the skill this is what we will inform and use it. Okay, welcome to our skill. You can do that, and that. And then we are waiting for the user response. And, Sorry, go on. When user response, he user is here on that step.

And we are catching intent. Once we catch intent, expected intent we are using go to component and we are moving focus on some, another step in the conversation. And then again, on that step we have that, the initial phase when we are saying, Okay, you choose that Part of our conversation now, we are expecting you to say which day you want to schedule appointments or which time, for example, And then we are waiting and user is on that step scheduling date.

[00:32:26] Nathan Wrigley: and, Okay, so what I'm imagining then is a UI where you've got the option to drag in different things and then bind them to other things. And then, like you said, if you say you want to book an appointment, then you hop, you go to the next step and the website if you like, just waits for a another response and so on and so forth.

And we just keep going through until. Succeeded and done whatever it is that we want to do. What do we do in the event where because there's quite a lot of pausing, isn't there, Do, does it just sit there and wait for a response and if nothing happens, does it reset itself or does it ask for the information again?

In other words, how do we get people to go through our lead magnet all the way to the. So

[00:33:12] Tihomir Dmitrović: here's one, one thing basic concepts. Once you start the skill, it's called the session. Again, something similar to work development. It's called the session. And it's, it has session, has turns. Trustee wife says something then expects user to say something.

And there is the mehan we have on when we are developing those skills, we have also repro. If the user doesn't replies in the one minute, we will send him repro. And it can be the same message as initially it can be another message. Okay. Please tell me that inform. . Okay.

[00:33:58] Nathan Wrigley: Okay. Okay.

Yeah I'm starting to, I'm starting to get it a little bit more now. This is really interesting

[00:34:03] Tihomir Dmitrović: and again, if we have time out, then session will. Second on time, if you don't time, the handle session ends and a user will have to start the skill. Yeah.

[00:34:13] Nathan Wrigley: Okay. And, okay, so on the web, if I'm looking on my screen, I can see that, usually I get some sort of prompt which says, session is timed out.

Do you do you typically warm the user that the session is about to time out or when they come back and finally say the 18th of June at 9:00 AM please, it just says no, we're right at the start again and we have to begin.

[00:34:35] Tihomir Dmitrović: So it's again on on the developer. Okay. Okay. And I can store that data, what we had from before.

I can store that in some persistence. We have several scopes. We have session call. So you can persist data through the session. But we also have installations. So the data will be preserved on that device all the time. And we also have user scope. It's tied to your user account, so it will be remembered on any device which is tied to your account.

[00:35:17] Nathan Wrigley: It's interesting as well, just suddenly GDPR came into my head just then, and and obviously if you are, I don't know, send, would, do you ever even give your email address across this kind of thing? Is there any sensitive data that's possibly flying over here? And do we need to be mindful of that? What if we pick up something?

Which is not intended to be said, and it somehow gets consumed by the website. Where is it all being stored? In other words, where's the data being held?

[00:35:48] Tihomir Dmitrović: Okay. Couple of things here. First when I Amazon sends that information to your web hook, you are getting just intent.

And there are also one, another thing, it could be slot ways. For example, is I expecting the date? Yeah. Then I will have slot called date and I will get the actual date. But we don't have the exact text. What user said so interesting. This is quite important. It. We just we just have that resolution.


[00:36:29] Nathan Wrigley: came out? So it's pared. It's pared by Amazon and they only send you the bit. And so the GDPR bit if you like, is that mainly on them?

[00:36:38] Tihomir Dmitrović: Or something like that? But you can ask the user for his information. What's,

[00:36:47] Nathan Wrigley: I'm just another curious question. What's in this for. Why are they building all this out?

What is the, Because it's a business, right? And if they're doing all of this, and presumably maybe there's a fee, I don't know, maybe you have to pay a fee per query or an annual developer fee or something like that. What's in this for Amazon? Is it just a, are they just sweeping up data and giving away a service for free?

[00:37:13] Tihomir Dmitrović: They're selling the smart speakers, that's for sure. And the fire TVs and all this stuff. So it's actually a huge ecosystem, what they are hearing and they just released a couple of months ago a robot. Who's driving, and they purchased the Roomba. Yeah.

[00:37:40] Nathan Wrigley: Now that's an interesting play, isn't it?

Because they can have an awful lot of data about the shape and size of your house. Because of that,

[00:37:47] Tihomir Dmitrović: They're playing huge care, right? So when you're doing this custom skills, this default regular customer skills, it's all free. It's all free for you. Interesting. You can monetize your skill.

Through Amazon. You, your apps, they already have Amazon account. All data is in the place and you can say, Okay, this part of the skill is free. You can use it if you like it, you can, I don't know, five bucks and you can access this another part of the skill with even more information. And they are getting c that whole.

But Amazon also has couple more serious programs Amazon for hospitality. Oh, wow. So you have, Yeah. You have hotel and you have installed devices all around place. And when you are developing for that stuff then you don't have able to have that invocation. You can program that on a lower.

And they also have Amazon stroke for business for large corporations. and for Amazon for business, you are paying the per user account and per device to be able to use that Amazon for business.

[00:39:09] Nathan Wrigley: It's really interesting. I didn't realize that the grandeur of the whole project really, the fact that there's an enterprise, but it has, it's huge.

Yeah. It has felt to me over the recent period with things like the acquisition of rumor and so on, that really what the, what these companies are trying to do. Is create an os for the home. So rather than it being bound to a computer and a screen that more or less the house with its multiple tendrils, the device over here and the TV over there, and the the smart speaker over here the house itself will become an operating system, if you can just yeah. Data, vision start solution. So in a sense,

[00:39:50] Tihomir Dmitrović: It's called Multimodel device, not

[00:39:53] Nathan Wrigley: just voice. And it feels excuse me, you'd be able to instruct your, I don't know, oven to turn on by speaking when you're upstairs in the bedroom or you'd be able to get the kettle to boil or, all of these things, which sound a bit Star Trek, but all interconnected, The house being an operating system.

Yeah. Give us some insight into what people have actually done already. With your WordPress plugin, cuz all of this sounds very ground and amazing, but it might be nice to ground it a little bit and just give us a few concrete examples of things which have already happened that might give us some orientation

[00:40:37] Tihomir Dmitrović: besides examples that we've done and you can find them quite easily.

As I said, we have templates. When you create. When you are creating new skill, you have already done templates for playing music and trivia games and that kind of stuff. You can also check on our blog for a few more examples. We have one quite interesting thing. We have customer who built their system on the WordPress formidable forms augment automated membership plugin, cup root collars, plastic WordPress huge website.

And they built their system for he. for elder people who are entering those people or their family members, they can enter blood pressure pools and those simple health information. They have couples more models but and we created a skill when they want to enter that information and they want to do that couple of times a day they don't have to go on the computer to enter that they're doing that through Alexa.

[00:42:06] Nathan Wrigley: That's absolutely fascinating and you can really understand why the voice interface in that exact scenario is the perfect interface. Because you're just dealing with people there who, it's gonna be so much more convenient to say these things out loud than to fumble around and try and find a device and then find the right webpage.

It's just right there. You just start speaking and you're. . Yeah.

[00:42:35] Tihomir Dmitrović: And that, that's also one good example because they're doing that couple of times per

[00:42:43] Nathan Wrigley: day. Yeah. And also I was just saying there that you short circuit the process of finding the website. If I wanted to fill out the form with that exact same data, I would have to first of all pick up the device, navigate to the correct page, and I'd either have to remember the URL for that or do some kind of Google search, load that page up, locate the form, and then start typing in the data.

Whereas all of that discovery bit, once you've found that voice enabled service, you can presumably access it again and go directly to it. So you'd have to do all the searching and fumbling around to. .

[00:43:26] Tihomir Dmitrović: What's also interesting in our implementation, how we are doing these kind of integrations with additional ver plugins.

The entry which is created through Alexa is the equally capable as the one entered through. So what I want to say yeah. Yeah. They have, for me, the performs, they have a couple actions hooked up to that sending emails sending the data on another one place. So everything works. Same as they're doing when they're doing through the

[00:44:07] Nathan Wrigley: web.

Yeah. That's a really interesting point, isn't it? Because everything that we've described more or less until a couple of minutes ago has been working on the assumption that you are just doing one thing, you're interacting with one thing and it's giving you information back. But what you are saying is that, The whole WordPress ecosystem, all of the different plugins.

If you've got the convo work system going, you can interact with those. So WooCommerce is in scope, forms are in scope. All of this stuff is in scope, and that just offers so much promise because of the massive ecosystem of plugins and functionality that WordPress has.

[00:44:45] Tihomir Dmitrović: Yes. We don't have right now any direct integration with the whole convert.

Just to mention that we have generic components, for example, for accessing a database. Okay. And a table in the WordPress for accessing both type data. But this is, just direct database interaction.

[00:45:11] Nathan Wrigley: Yeah. So it's all within scope and that's the point. Yeah. Everything's available, but maybe not in the gooey.

[00:45:19] Tihomir Dmitrović: You cannot. Add new recording the database because if you do that directly, you will meet out all those hoops and triggers that they are doing that. Yeah. So when we are trying to do integration, and right now we have a couple of them, as I said, we have a couple of scheduling appointments plugins covered, and we have just formidable forms from the form builders.

We are actually adding new package. and new components, which are calling the functions from the plugin. And when we are creating entry, we are calling the plugin function, create entry. So ensuring that everything triggers right. So that's the idea. Yeah. If we have full integr. . Yeah.

[00:46:11] Nathan Wrigley: Yeah. Fascinating subject.

Unfortunately, we're running out of time, so In order to get in under the allotted time, I'm just gonna ask you, is there anything that we didn't stray into that you thought at the outset that you would've liked to have talked about? And if so, just launched into that? .

[00:46:29] Tihomir Dmitrović: I would just okay, this is said we are right now more sweep concentrated on Alexa, but what we have also online for the future voice conversation is they shared chat bot with the microphone and speaker.

So we can have we plan for the future to have a chat bot support so you can have chat bot on your. Which is capable to really recognize your users to to get most out of the system you already have. We are also planning to have onsite voice search, so microphone on the web, so it's again, just small extension to the chat.

And there is also one thing which is very interesting that arm Amazon supports. Its HTML five applications. And basically what we are doing in the web, everything is HTML five right now. No. Yep. And this sounds that, Come in the future. And I think that the WordPress community could do a great things with that.

Rear vape guys, right? Yeah. Yeah.

[00:47:54] Nathan Wrigley: It's a really interesting field. Like I said at the top of the show, it's not really one that I've stray into before. I've firmly fixed myself with the screen and the computer. But the op, the of. Options in the future I think are gonna be extraordinary. It almost feels like we're just taking baby steps at the moment.

We haven't really worked out where voice fits in our world and where it fits in our home and what we want it to be able to do. But it sounds very much like you are in this for the long haul I'm just gonna say one more time. Go to Convoworks.com. C o n v o w O r k s.com. They've got a whole load of documentation, including tutorials on how to get started and really just illustrating what all this is about, what's possible, how you might begin, and so on.

Just wanna ask you very final question. Where would we get in touch with you personally if we wanted to take this conversation a little bit?

[00:48:55] Tihomir Dmitrović: You can find me on Twitter, on LinkedIn, and you can always use the conduct form on the website. So I'm responding to all inquiries. Okay. And be free to con reach us.

[00:49:10] Nathan Wrigley: Yeah. Thank you very much. T Hamir, thank you so much for joining us today. I really enjoyed that chat.

[00:49:16] Tihomir Dmitrović: Thank you Nathan to hearing me here. And I really also enjoyed.

[00:49:21] Nathan Wrigley: I hope that you enjoyed that episode. It was very nice chatting to T Heier all about Convoworks. If you have any thoughts about that, whether you want to find out a little bit more, then please head over to the WP Builds website.

You can find episode number 298 in the archive, which is in the menu at the top on the homepage, and write us a comment there. Alternatively, join our Facebook group, WP Builds dot. Forward slash Facebook, and don't forget that we'll be back on Monday. We've got another show, it's called this Week in WordPress.

I'm joined each week usually by three other guests, and it's very nice when people join in live in the commentary. And if you want to hear more about that, you can subscribe to our podcast, WP Builds.com forward slash subscribe. Don't forget to share the Black Friday link, WP Builds.com/black. That's gonna be your homepage from now on for all things WordPress for Black Friday.

That's it for this week though. I'm gonna fade in some cheesy music and say, Stay safe, Byebye for now.

Support WP Builds

We put out this content as often as we can, and we hope that you like! If you do and feel like keeping the WP Builds podcast going then...

Donate to WP Builds

Thank you!

Nathan Wrigley
Nathan Wrigley

Nathan writes posts and creates audio about WordPress on WP Builds and WP Tavern. He can also be found in the WP Builds Facebook group, and on Mastodon at wpbuilds.social. Feel free to donate to WP Builds to keep the lights on as well!

Articles: 949

Please leave a comment...

Filter Deals

Filter Deals


  • Plugin (77)
  • WordPress (42)
  • Lifetime Deal (15)
  • eCommerce (14)
  • SaaS (6)
  • Theme (5)
  • Other (4)
  • Admin (3)
  • Design (3)
  • Hosting (3)
  • Security (2)
  • Training (2)
  • Blocks (1)
  • Content (1)
  • Maintenance (1)

% discounted

% discounted

Filter Deals

Filter Deals


  • WordPress (39)
  • Plugin (33)
  • Admin (30)
  • Content (18)
  • Design (11)
  • Blocks (6)
  • Maintenance (6)
  • Security (5)
  • Hosting (4)
  • Theme (3)
  • WooCommerce (3)
  • SaaS app (2)
  • Lifetime Deal (1)
  • Not WordPress (1)
  • Training (1)

% discounted

% discounted



WP Builds WordPress Podcast



WP Builds WordPress Podcast
%d bloggers like this: