Chris Goosen: Welcome to the cloud architects podcast, a
podcast about cloud technology and the people using it.
Nicolas Blank: 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 kemptechnologies.com.
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: 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: 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: Hello. Hello, everyone.
Chris Goosen: 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: 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: 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: 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: 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: 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: 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: 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: 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: Yeah, so lately,
Chris Goosen: 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: just
Warren du Toit: so you saw Well, we've we've got bricks here.
Yeah, mate.
Chris Goosen: 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: 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: 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: 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: Okay. So sorry, Nick, you go Go ahead.
Nicolas Blank: 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: 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: 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: 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: So it was a reason I failed my 333 exam.
Those damn regular expressions, man. Yeah. is different.
Lee Ford: 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: 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: 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: a governing body for
Warren du Toit: 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: Yeah. I've never touched it. But yeah. It's,
it's,
Warren du Toit: 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: 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: 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: 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: I don't really is pretty. I mean, the console
looks like AWS. Okay. Yeah.
Lee Ford: Yeah. Yeah, no, it's it's um, yeah, I mean, to be
fair, the audiocodes ui used to look horrendous.
Warren du Toit: Back load was better.
Lee Ford: 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: 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: 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: 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: I think it is. It's interesting. Yeah. Okay. Yeah,
Warren du Toit: South Africa they use Asterix because it's
free.
Chris Goosen: 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: 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: 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: 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: Why do I need to go by F point then? Well,
Lee Ford: 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: Yes. That's awesome.
Chris Goosen: 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: Migration told us a bit more obvious to know that
Oh, yeah, this isn't actually
Chris Goosen: 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: 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: 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: 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: son of he's gonna get fired that going chiz
yeah salaries salaries are you right at right
Lee Ford: 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: 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: 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: 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.
Yeah.
Lee Ford: I'm not actually. So my Mike. Mike. My kids. I'm not
really into sleep.
Warren du Toit: Oh, he's a good guy is gonna grow up to be a
champ.
Lee Ford: 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: Yeah, no, it's okay. Okay within them. There
must be something that you're into right like a conscious be
graph.
Lee Ford: Yeah Now watch graph movies. Yeah, yeah.
I
Warren du Toit: see your YouTube.
Lee Ford: 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: 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: 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: 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: 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: 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: XML as long as XML is out of the picture Life
is good. I'll take JSON or XML
Lee Ford: 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: 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: Yeah, of course. And so yeah, you can you can follow
me on Twitter. My Twitter handle is @lee_ford. And my blog is
lee-ford.co.uk. 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: 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: No worries. Yeah, thanks. Yeah, geez, we got to
talk about Yo, we got to talk about Yo,
Warren du Toit: 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