Skip to content

Instantly share code, notes, and snippets.

Created September 1, 2020 15:00
Show Gist options
  • Save TheCloudArch/44e51ecc190a8569e0c95e7406d4d316 to your computer and use it in GitHub Desktop.
Save TheCloudArch/44e51ecc190a8569e0c95e7406d4d316 to your computer and use it in GitHub Desktop.
Episode 46
Chris Goosen 0:19
Welcome to the cloud architects podcast, a podcast about cloud technology and the people using it.
Nicolas Blank 0:26
The cloud architects podcast is sponsored by Kemp Technologies. Choose Kemp to optimize your multi cloud application deployments and simplify multi cloud application management. A single pane of glass for application delivery, Kemp provides a 360 degree view of your entire application environment, and even third party ADCs. Download Kemp360 for free today at
Welcome to another episode of the cloud pockets podcast. You're here with myself Nicholas blank. And my co host Warren du Toit and Chris Goosen.
Warren du Toit 1:05
Hello, everybody. Good to be back. I missed I missed the last recording and I'm really upset. But it's good to be here.
Chris Goosen 1:12
It is it's, you know, another Corona addition, I guess. Yes recording or episode of the show. But we're super excited today because we have someone who I've been personally wanting to get on the show for a long time and someone whose work I've really enjoyed kind of watching over the last little bit, and I've used a lot of it myself. So we have Lee Ford on the show Lee, you wanna say hi.
Lee Ford 1:33
Hello. Hello, everyone.
Chris Goosen 1:34
Well, thank you for joining us really appreciate it. It's a afternoon time for you guys in the three of you in in Europe and South Africa and morning here in Texas. Lee, do you want to tell the folks at home those who don't know you kind of who you are what you do?
Lee Ford 1:50
Absolutely. Yes. So my name is Lee Ford. I'm based in Birmingham in the UK. I'm solution architect for a company called Symity who predominantly on Microsoft 365 house. And I mainly work in the teams part of Microsoft 365. And that's around migrating people from Skype for Business to teams, maybe helping with the bits around the edges around automation and scripting and application development. So it's kind of a as you know, teams is such a wide net these days pet something like Skype for Business where it was just sort of meetings telephony and, and I am now it's, yeah, it's, it's pretty much the centerpiece of, of Microsoft 365. So yeah, that's pretty much where I spend most my time working.
Chris Goosen 2:43
Awesome. Yeah, that's, um, you're right, it is. And it's getting wider, right? It's not just where it was like six months ago or a year ago and it just continues to improve and increase and get wider and I noticed this week there was an announcement about some advanced licensing which seems to be ruffling some feathers Which we could probably get into Warren might have some some opinion on that. But so did you come from a traditional like from the Skype or Lync world? Or is teams kind of your kind of where you got into working with, I guess the that productivity stack?
Lee Ford 3:17
Yeah, so traditionally, I came from when I first started I did PBX So, things like Mitel and Avaya PBX is Mitel Well yeah, what a while ago now but that's kind of where a scary Phone Guy Yeah, I'm very funny. Yeah, you either come from Windows Server or you come from like telephones and I came from the telephones side. And and this new product Lync or OCS, I guess came in and we will Oh, well Cisco anything's and we want to have a have a bit of a poke around and see what it is if it's any good or, and that was kind of it really, from that point on, you know, I've just sort of that's where I want it to be. You know, that's many, many years ago now and yeah, so it's kind of been through the evolution of ACS link of the Skype for Business server and Skype for Business Online. And then obviously teams is where we are now. So yeah, it's kind of been there a little while now been doing it. But traditionally, it was a PBX, which does come in handy when you're doing PBX migrations, and you know, they've got PBX that you're familiar with you. Oh, great. Yeah, I can, I can help out here.
Chris Goosen 4:27
It's to me that is so so your background is very, very similar to Greg Sheridan, who I think you know, and he's a close friend of mine. We worked together for many years. Back in Australia, very similar, but I think what makes that awesome is that people coming from that voice background. When you look at an SBC or like a telephony gateway, you just go Yeah, this makes perfect sense to me. Whereas for me coming from you know, messaging background and and the way like SMTP routing works, I log into an order codes and like the stuff does not make any sense whatsoever to be right. So it's always interesting when I kind of need help on you know on a sonar or something or whatever they call themselves this week. I call I call Greg for for help, but it works the other way as well. Right he you know if he if he has some DNS or some weird Yeah, it's always DNS, but if you have some weird, some weird thing that he likes troubleshoot, then you know, he'll ping me and so we've had that kind of collaborative relationship for a long time. But you know, especially because I've never met anyone else who's come that far along out of that kind of PBX moto world.
Lee Ford 5:35
Yeah, no, absolutely. Like, you know, I remember when I first started many, many years ago, over 20 years now, it was Yeah, running cables for telephones, you know, where I sort of first started you know, and you know, that just is unheard of now, it's just seems such a such a far away thing, really. Whereas now everything's virtual. You can work from home, you can work anywhere and with Coronavirus. It's Yeah, it's more than welcome isn't it really
Warren du Toit 6:03
and those big cabling cabinets with those piers and you know they're like 100 pair cable or 400 pair cable and there was like literally it was like this bare
Lee Ford 6:16
bones set Yeah, absolutely yeah that's a number that I think I've probably stole but the tool somewhere but every so often someone I go You know, I've got an old telephone line that needs moving or something like that and yeah, I'm still still always keep the tools just in case you need them.
Chris Goosen 6:31
It's a separate track the skill set that's that's where I started right my my old man still does do data data networks and now it's he's moved away from like, PBX stuff and phone cabling, right but it's still data networking, because obviously all of this stuff runs off a data backbone now and fiber and I mean, I was you know, I was in like primary school. Boot every every school Holliday, that's what I was doing. I was pulling cables and terminating cabinets and stuff, right. And I think starting at that sort of very, very, very ground level gives you a real appreciation of where we've gotten to now. So yeah, that's, that's super fascinating. And I forget how I was gonna say it's a super handy skill set. Because now when I need a cat six drop in a room somewhere, I'm like, I just do that. It's good.
Warren du Toit 7:20
Yeah, so lately,
Chris Goosen 7:22
I'm getting really good at fixing drywall holes now too, because every time I need to do this, I need to cut a hole in my wall. And so
Nicolas Blank 7:30
Warren du Toit 7:31
so you saw Well, we've we've got bricks here. Yeah, mate.
Chris Goosen 7:38
So moving, moving back to teams, I guess. So we're in this place now where obviously team's adoption has skyrocketed over the last you know, well, since March is right in like every time I look at the numbers, they just astounding. I mean, last time I saw it was like 75 million, I think but it's probably gone up since then. What about the PBX side of teams? Are you seeing your experience are customers using it? Is it something that people are actively getting rid of their, whatever is left for Avaya Mitel type stuff in using teams.
Lee Ford 8:09
apps? Absolutely. That's the case.
Not and but pre COVID. That was also the case that, you know, people are looking to move away from your fixed phone on a desk, you know, they want to be, you know, to the ability to, you know, have that, you know, their desk or their landline number. That'd be a transact call on a mobile, if they're working from home or, you know, wherever they are in the world. And they can sort of take those calls. And especially now with COVID, where, you know, offices are either closed or running at a reduced capacity. There's a lot of desk phones sitting there idle, and people aren't able to use their telephones. So yeah, absolutely. We're seeing a massive increase of people wanting to move away from traditional PBX is and move over to teams where it just gives them the flexibility that they can just use the number or ever and yeah, we are seeing sizeable uptake in in telephony, and not only is it people wanting it, but they're wanting it yesterday, you know that they want it now. You know, with COVID It's, it's, it's gone from being Yeah. Or we will do that in 12 months, 18 months. Well, we'll, we'll write out our PBX as long as we, you know, as long as we can. So we need it now we need, you know, we've got key numbers that need to be, you know, terminating on users work from home PBX can't do it. How can you help? So absolutely. Fair enough.
Chris Goosen 9:35
Yeah. So I think that's, I mean, that is that is interesting, right? Because if you think about all of the logistics that go into a company just closing its premises, right? I mean, you know, it's easy to go Okay, well, guys, like us, we've been lightly working or working remotely. And I should say folks like us have been working remotely for a while. And so we're used to being able to just carry a number around with us, whatever. But if you think about the situation where You know, you have some sort of inbound calling number or reception number or something like that, like the logistical and I had to think about this just the other day cuz someone asked me a question about, like, Oh, we, we have to shut up our office. And so like, someone has to look after that phone number, like what do we do with that? Right? It's interesting. I mean, if it's just a line sitting, you know, a prep terminating in your premises, that's gonna be a lot harder to do. I guess call forwarding is always an option, right, but still makes it much more convenient when you can do something like that. Bring it into into teams.
Lee Ford 10:34
Absolutely. Yeah, there's, yeah, we're having customers at the moment, literally just forwarding calls to to Microsoft Teams number just as a quick win, you know, with with the with the prospect of moving those numbers properly and importing those numbers at a later date, but just with time is of the essence they need to need to move across quickly. Yeah, so absolutely. That that you say there's a lot of logistics involved with Closing in office and telephony is absolutely one of those ones. Especially when you've got things that you know, emergency hotlines and things like that, that you know, you can't have downtime. You can't have people not answering the phone. It is it is a key service really.
Chris Goosen 11:13
Okay. So sorry, Nick, you go Go ahead.
Nicolas Blank 11:17
Yeah, I wanted to ask you since you have the the scary Phone Guy background and we say scary Phone Guy, because as Windows people, we look at like all the standards that you guys just find so easy and codecs and everything else. And it's like, no, that's scary. So excuse me Phone Guy. So if you look at the the commercial side of the house, if you look at the cost of a traditional PBX and those folks now moving over to teams, do you find that there's a massive upside from a moving my voice over to teams point of view that those folks are getting that they couldn't get on the traditional PBX is of the world
Lee Ford 12:00
From a from a cost perspective, there probably is some say. I mean, there's obviously two types, two left teams, you've got calling plans and then you've also got the the direct routing. Certainly with direct routing, that there is a cost there can be a cost saving by moving to that rather than sticking with the PBX, you know, coming up for renewal. And a lot of the times you know that they might be on E five, in which case they've already got phone system built in and I think recently has been out so that in some regions, there's also minutes bundled into the five that all of a sudden is like, well, we're already paying for it. Why are we not using it? So yeah, we see that people are Oh, yeah, it's it's a win win. Really, we've already got the licenses we need to replace our PBX teams is the natural choice. When it comes to teams from a functional level filling the need of the PBX. It's ever improving things like call queues and auto attendance are getting better their features are being added almost All the time. There is obviously going to be cases where, well, my old PBX did this in a particular way, we need the same. And you can't always offer that. But you might be better off or something, you know that the old PBX couldn't do that maybe better. So it's always a balance between managing what you can do and what they should probably do. With regards to PBX replacement, but yeah, I think a lot of people are like, we've got licenses, let's use it, let's go.
Warren du Toit 13:29
What are the people that don't have licenses? I mean, like, I'm finding it sometimes the teams actually works at a more expensive number one, and I use that that's sort of like easy to my next question is, like, so in South Africa, we've got no choice, right? We have to use direct routing. Yeah. Because routing apparently is a bad word in some parts of the world. In Australia. Anyway, so like, we've got a choice right? So that's, that's fine. I mean, but like If you have to consider what phone system costs on an E three, it's actually pretty expensive. I mean, you can get a hosted PBX number, like through a little portal, you can click a click, and it's really not that however, like, if you have to look at Call Quality Dashboard.
And the improvements that have been done there. Your article, which was released a month ago was yesterday, now a month ago. June. Yeah, yeah. Yeah, that's a great article, man. And you can't do that sort of like with a hosted PBX or something like that, and you wouldn't be able to get these sorts of statistics. And I guess, having an all in one box. So my questions would be like, Are there any features that you think Microsoft's forgotten about? Or, I mean, like, I find that they're really, really like that teams, admin centers getting packed full of stuff every day. And I think it's, I think it's going well, but I mean, do you think anything's missing? Do you think anything's like, do you think that direct routing should have been configured with the admin By now.
Lee Ford 15:02
Yeah, I mean, yeah, absolutely. So I think previously, certainly when it first launched, it was pretty much PowerShell is the way you need to do a lot of it only Yeah, yeah, a PowerShell only. And now they've added things like normalization rules and voice routes. And I mean, I'm a PowerShell. Guy. So I always generally still do it via PowerShell. But I'm pretty sure you configure the whole thing for direct routing, maybe not all of it, but let's say 95% of it via the admin center now, and I think that's intentional, because they want to get people that maybe on PowerShell experts to want to be able to just quickly click, you know, you will even just make changes, I want to be able to click a couple of tweaks, something like a normalization or, you know, regular expression. Not everyone's gonna know what regular expressions are. They've made that easier where it builds the regular expression for you a bit like they did with Skype for Business server.
Warren du Toit 15:56
So it was a reason I failed my 333 exam. Those damn regular expressions, man. Yeah. is different.
Lee Ford 16:08
Yeah, absolutely. I mean, I'm not an expert on regular expressions. I do kind of get enough. But yeah, even even, I think everyone still has to use some sort of online tool, just because I need this particular pattern. And it's Yeah, when you break it down, it makes sense. But then when you put it all together, it's and just look at string. It's Oh, hang on what'shappening here? so much.
So So yeah, I think I think it's getting there. I've been sent. I think with direct routing, they're adding pretty cool features like LMS, a local media optimization, where the media from the team's client doesn't have to go up to Office 365. It can get media bypass. Yeah, yeah. Media bypass via the local SBC while and having to go out and back in. So there are improvements. I think there probably could be improvements in the voice applications, things like cool pickup, so there's They have a term I think it's called group pickup, which is kind of I wouldn't call it pickup group personally, like you would on traditional PBX. It's more, it rings the, if you divert your call to another user and their phone doesn't ring, but it audibly flashes that's classed as a pickup call pick up that's not really a pick up group in my eyes, but the things that I think they could potentially improve on. But I think on the whole it's Yeah, I think it's, it's, it's if someone was going, we want to move off, move away from our PBX, we want to get your teams, I really would never have any hesitation in going Yep, sure. Let's go. I don't think they'd be like, Oh, hang on a minute. Are you doing this? Are you doing that without routing, which makes it kind of answers all those edge case questions around things like dect phones or Analog Devices or anything like that, that you have to keep.
And you couldn't do that we call them fans and all of a sudden direct routing gives you that extra option.
Chris Goosen 17:56
So I think both the both of you guys have actually kind of queued up for segwayed the question I was gonna, I was gonna ask earlier, which is, how is teams differing in the regions, though, right? And this was actually gonna be a question to both Warren and you, Lee, because I know like, here in the US, we just take things for granted that like, because when the feature comes out, we just have it. But But there are other regions. I know, Australia is one of those regions as well, it's sometimes lags a little behind what's possible, what's not possible. So, I mean, are we getting to a point where things are being released across everywhere, like all the regions now or, Warren, you alluded to the fact that that may in South Africa right now you can only do direct routing, so there's no Copeland stuff available?
Warren du Toit 18:38
No, so he said, it's, it's, it's a complicated thing, because you see, in order to become a teller in order to become a telco, you need like a telco license, right. And like, apparently, it costs doesn't want to use Microsoft Word, or whatever the case would be, so they can't like sort of legally be a calling plan provider. At least that's sort of what they've said when I when when when Microsoft gives you an answer about where the calling plans are available or not. So it costs
Chris Goosen 19:07
a governing body for
Warren du Toit 19:10
the governing body for communications in South Africa. So you know, like, yeah, so, but again, you know, the strange thing is, is obviously, and Lee you can, you could probably attest to this is that even though calling plans are available in the States, I mean, when I was working at the team's booth at Ignite last year, I got so many questions about direct routing purely because guys wanted to use their existing Cisco call manager or they had this massive investment in an existing PBX that they couldn't just get rid of right now. And and they wanted to connect the two together and direct routing is the way I mean calling plan sort of that so so direct routing is like sort of a more like, like a multi tier approach when it comes to that sort of integration because these guys like they don't I mean, you'd be surprised how many people like all over the world I mean, like jabber jabber is such a thing, man. I don't know how why but jabber is a thing.
Lee Ford 20:09
Yeah. I've never touched it. But yeah. It's, it's,
Warren du Toit 20:17
it's under, it's an on prem investment. Like, like, they use.
Yeah. And you know, like I don't even know if they have a proper hybrid model. As far as if you want to move from let's say jabber to WebEx, which is, you know, hosted. And then you get your calling plan from WebEx. I don't even know if there's, there's a hybrid model.
Lee Ford 20:41
Like Yeah, so I don't know. Yeah, so so on the calling plans versus direct routing. So calling plans available and I think eight countries that didn't any been added for at least a couple of years and I think Japan or maybe Australia with the last couple to be added and in those last They think they had to partner with Sony in Australia that depart with I think Telstra. So, Telstra don't actually provide the service Telstra do. And there's like a specific skew you have to have. It's not your traditional license. It's like a Telstra based license. So that way they've kind of got around having to be a provider in that location. I think that I think there's some of seeing somewhere that that they're planning schildt they are so planning to roll out to other countries. But that's not to say there hasn't been for a couple of years. But even in the UK, with finding that most people go direct routing, and that's because like you say you have a PBX and you want to do a gradual migration or you've got an existing agreement with a provider. That's, you know, yeah, too cost prohibitive to actually want to move away from it when you add on the calling plan cost. And typically, like say calling plans we're finding that people are rather put that money into an SBC and and stick with their current provider of money. Gives them extra flexibility to switch providers down the road and whatnot. So what we're finding
Warren du Toit 22:07
which leads me to my next question is why audio codes? Like I'm also like, I mean really like the great products and stuff. However, they're not cheap. You have to look at like a like a any node SBC. I mean that things like literally attend to the brass.
Lee Ford 22:25
There's really I've never actually so I know ran out, you know, Randy Chairman, he's he's talked about any node before he works, where I do. And he's saying, Oh, you know, you should have a look one day and you know, he's got a blog post about it, but
Warren du Toit 22:40
I don't really is pretty. I mean, the console looks like AWS. Okay. Yeah.
Lee Ford 22:48
Yeah. Yeah, no, it's it's um, yeah, I mean, to be fair, the audiocodes ui used to look horrendous.
Warren du Toit 22:54
Back load was better.
Lee Ford 22:56
So when people go it's really bad about hard to use. Now. Thinking You want to use it like five years ago? It was something else. So, yeah, I've never touched a ribbon. What I think where I work, there's a kind of a 5050 split between audiocodes and ribbon. Its expertise. And I'm sure ribbon is just as good as audiocodes it's just Yeah, I've always been the audiocodes that will the code side of the, of the camera. Yeah, it's difficult to sort
Warren du Toit 23:26
of transition from one sort of tiller, like sort of provided to the next because they are very different. And like, if you look at interfaces and commands and what has to be run on a and the way, like the flows work and what one thing's called on the one side, and one thing's called on the other side, you can get incredibly confused. I mean, sometimes they don't I mean, like, on an any node, it's called a trunk. Right? But audiocodes doesn't really use the word trunk ever.
Lee Ford 23:57
Unless it's ISDN I think Yeah. Which technically isn't But yeah, it means Yeah. They were like sardines and sip interfaces and all those direct good things. Yeah,
Chris Goosen 24:09
this is this I've always wondered this and it's always fascinated me right? I wonder if this is also a little bit of a regional thing because I know like ever since I've I've lived here in the US it's always been audiocodes, right? Like where I've worked in the past that the guys don't even people don't even look at anything else. But when I was when I was working in Australia, every partner I've ever worked for it was always so not open ribbon. Yeah, as an alkaloid. So I wonder how much of that is regional versus just
Lee Ford 24:38
I think it is. It's interesting. Yeah. Okay. Yeah,
Warren du Toit 24:41
South Africa they use Asterix because it's free.
Chris Goosen 24:49
So, shifting gears just a little bit here. I so at least one of the things I think and so Bobby, the reason we got to know each other was I was I was working on a project a couple. This would have been probably about a year ago now. And I was trying to do some funky stuff with like, exporting conversation history out of teams conversations. And, and I was at the time, the way I tried I was trying to do this was I had done a discovery search of the mailbox of the team mailbox, dump that to PST, and then I was interrogating the PST through PowerShell to try and pull the messages out, which actually did kind of work except the problem was, I couldn't figure out how to link the threads together, right. So I could pull out the individual messages, but they would just be individual messages. They weren't threaded in any way. They just have funky gooeys. And this doesn't seem to be any key that links them together. So I reached out to to Greg Sheridan, I was like, hey, Greg, here's what I'm trying to do. I realized this is really weird, but I have a specific use case that I need to work on. And this is what I need to do. And he was like, Oh, I'm Lee has a script for that. I was like, what really? He's like, yeah, check this out. And he sent me your backup teams backup team script, which then just blew my mind because it basically did everything that I needed to do. And so I guess one of the one of the things that I wanted to kind of ask you was, you have a ton of stuff on your on your blog, and to me Still, it's the go to resource for anyone who wants to do any PowerShell stuff with teams, I always send them to your blog comverse, the virtual conference that was on a couple weeks ago, I actually presented a team's PowerShell. So PowerShell session at the conference, and I demoed a bunch of stuff. And I had like a whole block snippet of your scripted, which was great. It was great. Yes. But, but I was and I kind of sent everyone to your blogs, like, Look, if you need stuff that involves PowerShell in teams, you got to go to Lee's blog, right. Did you do you have some sort of developer background? I mean, we talked about you coming out of the PBX world, but the way I think you approach a lot of the coding I mean, it's it's it's it's actually pretty Incredible and and you look at the stuff and you go this stuff was written by someone who is, you know, a full time developer. But that's not the case with you though,
Lee Ford 27:06
right? No, it's absolutely not afford, you know, there's bits that I would need to do for paid work where, you know, we just need to script something or write rapport or something like that. But typically now it has been, I'm doing other How do I do something? Or I, I'm doing this thing. It's taken me a really long, long amount of time to do manually. How can I script? How can I automate it? And it is purely just a hobby is probably not the right word. But it is just something I enjoy doing. I like writing a bit of code. But certainly I'm not a formal developer. I haven't been on any training courses or, you know, my job title isn't developer. So it's purely just a passion for wanting to do it really. And yeah, I quite enjoy buying a bit of code.
Chris Goosen 27:57
And so we fought I think because I wanted to I want to I want But to kind of get your thoughts on the, the graph PowerShell SDK, but before we jump into that, do you mind just running down or running through a couple of the the scripts that you actually do have a new blog? Just for folks, for folks who haven't come across your work yet and are sitting there going, how am I going to solve this problem? Because so you have the backup team script, right, which is essentially just goes and interrogates the the org and I haven't used it in in a little while now. But it goes interrogate all the teams in the org and basically dumps all of the content into an archive.
Lee Ford 28:31
Right? Correct. Yes. So what it will do is it will you log in to bonds, run the PowerShell script, you log into it, and then it will list all the teams within your tenant. And then you choose like I want to backup this team or you want go actually I want to backup all the teams. And then it will go through and it will grab the team. It will download all the files within that team or the chat history. And any settings that were set against the team is basically anything within that team. And puts in a zip file like saying, including all the attachments. And what it allows you to do then is actually, if you wanted to, you could recreate that team on the same tenant or a different tenant. And it will try and put the file upload the files back into the team. And if it's the same tenant without the members back in on the owners back end of that original team so it's it's a way
Warren du Toit 29:24
Why do I need to go by F point then? Well,
Lee Ford 29:29
no, no actually doing any SLA. Your own risk, but yeah, I mean, it was kind of just a, it's a, I was just thought this should be something that's just built into the Amazon alphabet to just go on, kind of capture this team download as a file as a backup. And then you know, I've got that for for charity. And if that team goes by, by by accident or whatever, then then you've got a copy of it a set point. So that's kind of the need really there. And yeah, it was it was great fun writing it to be able to do it's written in PowerShell. With I think it's just graph. I don't think there's any, any teams your show, purely just graph.
But not the SDK is impressive.
Nicolas Blank 30:16
Yes. That's awesome.
Chris Goosen 30:19
And so in here's why I think it's so cool. Right is because and again, I, you know, my my history or knowledge on this is probably about six months out of date now, because I haven't been doing migrations for a little bit now with my new role. But historically, this there's a challenge. There's been a challenge in getting conversation history out of teams, right. There's no real like, API that you can query, at least they never there wasn't, I guess, at the time when you can query to get that data out or to replay it. And so what I've seen certain vendors doing is their approaches that they they use, there's a slack migration thing that they use to replay the cart, the Conversations back. But you lose all the metadata. So you end up having the the author of the conversation have a very chat is whatever the migration service account is. Right. And, and what's what's, what was what's super sneaky about that is, is that when I saw this demo, they had named a migration service account like a person's name like john smith. That was every conversation authored by john smith. john smith is our service account. But that's, that's even worse.
Lee Ford 31:32
Migration told us a bit more obvious to know that Oh, yeah, this isn't actually
Chris Goosen 31:35
exactly I just feel like it's so sneaky because they they were trying to like, I'm not accusing anyone of anything. I just feel like it was kind of a way for them to not pay draw attention to the fact that that and I picked up on a straightaway and so the other approach obviously, she dumped everything into a file archive like you like you do with an HTML file. That thing can just be viewed later. Right. Which, which I think is is pretty
Lee Ford 31:58
sorry. That's That's why Yeah. So it's just an HTML file and it almost looks like a conversation, you've got sort of the, the chat bubbles, if you want to think of it like that. And then you can kind of when you look, okay, let's have a conversation history, you can either open an HTML file or if you restore that team or recreate that team, I guess, into into the tenant, it will then be available. Yeah, within that team as an HTML file that you can just open within teams and look at the previous conversation history. So you're not gonna lying to anyone that you know, that conversation took place naturally, you know, that the previous conversations were in this fight if you do need to get back and view them. So. But the main reason for that is more just want to look at a team or look at the whole conversation from a backup purposes rather than a recreation.
Chris Goosen 32:45
Right? Yeah, absolutely. And it makes a lot of sense, but I think there's definitely sort of an application for it in backup slash migration places as well, right? If you need to move between tenants or whatever, this is a really handy way to say where Here's what we can do, here's what we can't do. And we can't give you an archive of all of that stuff. Because sometimes the conversations in within the team are not super valuable to anyone, like from a longevity perspective, right? Like everyone's talking about their lunch order doesn't isn't something that the business needs to keep. But there may be some other conversations within a that are really handy. And so be able to get them in that archive is, is pretty cool. So yeah, thank you for that. There was another one, you have a just a backup team's config one as well.
Lee Ford 33:27
Right there. Yeah. backuptrans config. Yeah. So that that effectively does a, it uses the Skype online PowerShell. But you can also do the team's on my power show now, but it basically connects via PowerShell and downloads, all the configs and all the policies and all pretty much any configurable option within teams from a PowerShell point of view. And then you can download that and it puts into another archive file. And then each type of let's say, you know, there's a client policy or something about you can open the HTML file. for that client policy and view it kind of in in table format so it's a bit easier to view than than looking through a PowerShell export. And what I've also done is included the PowerShell exports the the CLA XML files, which means that you can then go back and compare a backup to a live service and it will go through line by line and compare any differences so if you make someone's made a change you can go well let's see what it was compared to this back watch it two weeks ago Hang on a minute this is this this policy has changed and now this value is set to true is now set to false
Warren du Toit 34:36
son of he's gonna get fired that going chiz yeah salaries salaries are you right at right
Lee Ford 34:44
now? No, no, no. It's all just my for my Yeah, just just just just keep it should be changing. Yeah. So
Nicolas Blank 34:55
anyway, you How difficult was it for you to get going with graphs and moving away from What PowerShell couldn't do is to dig around in graph figuring out what you wanted to solve in terms of problems, and then figuring out how to put that all together.
Lee Ford 35:11
Yeah, it was a little bit of a challenge to begin with, just because at the time, there was no PowerShell SDK and not being a former developer, now having to work out things like auth, and, you know, authorization codes and tokens and all that sort of stuff to to be able to log into graph. And, yeah, that took a little bit of time, but it was worth it in the end. And it is certainly something that I do find useful or almost on a daily basis to know about so. But yeah, that that was the biggest challenge was kind of getting into graph. Once you in graph. It's kind of just like any other API really, you're sending requests to an API with with a token saying, you know, I'm allowed to ask this question and then you're getting data back or you know, your push your or you're placing data or putting To in, in graph and, you know, you get response back to, to that. So, yeah, that that was a bit of a, from going from, you know, dedicated commandlets that, you know, would have been pre built almost having to create your own commandlets or your own custom connections and things like that. Yeah, that that took a little bit more time. Not coming from that, you know, background
Warren du Toit 36:24
very cool. I mean, I said, I'm gonna, like, go away completely off on a tangent. Tell me about the spider man in the background. I'm a huge Spider Man fan.
Lee Ford 36:37
I'm not actually. So my Mike. Mike. My kids. I'm not really into sleep.
Warren du Toit 36:44
Oh, he's a good guy is gonna grow up to be a champ.
Lee Ford 36:47
Yeah. Yeah, I'm not really. Yeah, I'm not into super. Yeah, I'm probably shouldn't be saying things like that. But I'll probably get kicked off podcasts and things. But yeah, I'm not really into superhero film. Or I've never seen Star Wars things.
Warren du Toit 37:04
Yeah, no, it's okay. Okay within them. There must be something that you're into right like a conscious be graph.
Lee Ford 37:10
Yeah Now watch graph movies. Yeah, yeah.
Warren du Toit 37:17
see your YouTube.
Lee Ford 37:19
Yeah, I just watched YouTube tutorials every day, but
it's not quite like documentaries and
yeah, science fiction I think. So I probably should watch Star Wars but yeah, things like that. You know, I'm happy to watch that but yeah, superhero movies I've tried I have tried but it just didn't do it for me.
Chris Goosen 37:41
So again, getting back to slight tangent screw. Well, let's get back, get back to graph. I think what you've said is kind of exactly been my experience right because I like you I don't really have any formal development background but I I'm a mentor As a fan of automation in PowerShell, and I literally like if, if I could find a job where all I did was just PowerShell to it like all day long, I'd be super happy. It was quite funny I was. This is just a little little story. Yeah, Nick and I were at Ignite one year, and we were talking to a mutual friend of ours, dog. And I and I just met him. And I didn't really know what he did. And we started talking, he was like, Oh, I like PowerShell. I said, Yeah, I said, Why I wish I wish I could find a job, or I just did PowerShell all day long. And he was like, that's my job. That's what I do. And he actually ends up, you know, running a whole bunch, you know, he had a company that he did, started to build some apps and stuff. And it was all PowerShell based, which is very cool. But I also find it really hard and really difficult to when you start working with JSON and having to kind of parse and construct those queries, it becomes really difficult or can be interesting, right to learn. But then I, you know, with the, the the, the graph PowerShell SDK, that's come out In the last six months or so, that's made that significantly easier because now, I feel like you have all of the graph magic without any of the, you know, having to construct, you know, invoke web request. Right. Have you found that? I mean, I've seen you've been doing some some work with it and on it and I think you actually have some tutorial videos on Yeah, as well.
Lee Ford 39:26
Yeah, I think I have a getting started video and and just, yeah, an accompanying blog post. And it's pretty good. Actually, it takes away a lot of the playing Previously, we had to work out how to authenticate with graph using PowerShell. And you don't have to do any of that you used to be type Connect pipe and graph and say what I'm doing graph you have these things called scopes, which kind of permissions what what do I want to have access to in graph you specify those, and then you log in with the device code like you do on other PowerShell modules. You connect it and that's it. And then you can just run, you know, get typhon mg user or something like that. So it's I was always mg prefix, but bit like there is a CS prefix with Skype and teams. And effectively, yeah, takes away a lot of the guesswork and kind of how to construct like, say, JSON objects to post. And when you're requesting data is literally just writing that it feels much more natural as from a PowerShell point of view while they're doing to kind of create your own wrapper, but photograph now i think it's it's very, very useful. Really cool. I do probably need to put it into some of my scripts actually, because I need to go back and update them to use the module. But no, it's super cool. I don't think it's 1.0 just yet, but they are working on it and yeah, it's improving all the time. And it's super cool.
Chris Goosen 40:56
Yeah, I definitely the I really like it and what i what i love about it is that I, because I'm a Mac user, I can do everything on my Mac now. Right? Like I don't I mean, I still do. But I technically I don't need a VM to be able to do things anymore because I can take, I can access all of graph through this module that runs great in PowerShell Core, and I can do it straight up my Mac. And that was part of the demo that I did on the converse was taking, I took a script that another MVP, Nathan O'Brien had written. And I ported it to use what I bought it as much of it as I could to use the the SDK, and then I ran the one in Windows, and then I ran the other one on on my Mac. And it's for one, it's significantly quicker, right to run and versus the module. But it's fantastic stuff. I'm super excited by that. I'm struggling a little bit with the lack of documentation on some things, because it's not, you know, it's not as easy to find. If you know, if you want to interrogate a particular property somewhere to go and find exactly how you do that, you kind of have to dig through the the API reference and then try and work it out. At least that's how I've been Been doing it but
Lee Ford 42:00
grass was only a module of the SDK for the SDK? Yes. So the the SDK isn't sort of hand built. It's it's, it's kind of auto generated, right? I can't I think it might be called Open API or something like that, where they they use a method where it's kind of looking at a graph and working at all right, there's a, there's a graph endpoint for user. Okay, based on that I can create a list of commandlets to wrap around that that API call. So they're not having to write each command line manually. I think there are literally are thousands of them. So so you're probably going to struggle to get documentation like you would, let's say, with a traditional PowerShell module has been written by someone. It's It's so that's Yeah, where you're going to struggle. I think you kind of almost looking to look at the graph API reference to work out what the object is going to be when you when you run your request. And kind of work backwards from there really, so yeah,
Chris Goosen 42:56
yeah, that's, that's, I guess that's been my approach of trying to kind of figure it out. And eventually we'll kind of get to that way of thinking, I think it's just a, it's a familiarity thing, right? You know, if you're looking to find anything related to a user be, you know, in the in the Azure module, it'd be, you know, get Azure AD user, and it's going to be a property in there somewhere. But it doesn't, it doesn't translate like that to the SDK, you can't do get mg user and see all of us and properties. Sometimes you have to query a different command I found but I think once we start wrapping our head around that, it's, it's just gonna be super because now it really becomes cross platform. And that's really good for me. So I want to kind of move any future scripts I write all the same here to to do that. Yes, it just seems to make a lot more sense. So
Warren du Toit 43:42
XML as long as XML is out of the picture Life is good. I'll take JSON or XML
Lee Ford 43:49
Yeah, I think it's moving that way, isn't it? It's It's It's all JSON and open standards and annex one is an open standard, but it's, yeah, everything's everything's heading that way. And Things like what you say have been not fixed. I've got to use Windows PowerShell. For this module, you know, I think slowly but surely that's moving away. Like in the team's preview PowerShell module, they've added the bilytica Skype for Business. So you can use in Skype for Business PowerShell using core by then empties Windows PowerShell. So they are moving slowly, which is common.
Nicolas Blank 44:24
So we're coming up to the top of the show. And before we let you go, I would like to ask you, what is it that you'd like to plug either in terms of Twitter handles, blogs? Anything else that you'd like to call out? Absolutely. Nothing goes as long as we get a cut of it.
Lee Ford 44:42
Yeah, of course. And so yeah, you can you can follow me on Twitter. My Twitter handle is @lee_ford. And my blog is I'm not sure how so I've got it has to blow to play. As my blog capacity and Twitter on my blog, you'll probably find everything that I'm working on really. So yeah, that's, that's it for me.
Chris Goosen 45:10
Awesome. We really appreciate having you on the show. And, you know, maybe we'll do a follow up sometime. kind of see how things are going and what you what else you busy with, but yeah, really appreciate you coming on and taking the time.
Lee Ford 45:22
No worries. Yeah, thanks. Yeah, geez, we got to talk about Yo, we got to talk about Yo,
Warren du Toit 45:27
yeah, we got to talk about adaptive cards, and we got to talk about all that stuff. So yes, thank you so much for the time.
I know. Everyone, before you go, we just wanted to say thank you for listening. We really enjoy putting this podcast together for you every two weeks, please visit us at the architects cloud. Alternatively, drop us a tweet. We'd love to hear what you have to say @thecloudarch
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment