As I understands it (after talking to Aaron) the intent in SR5 is this:
(most of this changed in SR6)
5E
The Office has a Local Host...
In 5th edition hosts are virtual constructs that only exists within the matrix and where the physical distance to a host, any host, is always zero. No matter where in the world you are located and no matter what grid you are currently on.
Devices are on the grid (no matter if they are not slaved or if they are slaved to a master device, being part of a PAN, or a host, being part of a WAN).
In SR5 you need to use a commlink (or cyberdeck or RCC or living persona in case of technomancer) in order to "log in" to the matrix, to get a matrix persona. If you don't have a matrix persona then you cannot take the Enter Host action nor any other matrix actions).
All work-related devices in the Office are officially company property, and thus slaved to the host.
While this is possible, this will also create a lot of potential back doors into the host (since a direct physical connection will let a potential hacker ignore host firewall rating but if he gain a mark on the unprotected device he will also gain a mark on the host... and once he enter the host he will be considered directly connected, distance of zero meters and no host firewall, to all company property slaved to the host - no matter where in the world the hacker is physically located).
Normally you would only slave devices that you can physically protect.
The camera in the public lobby is probably not slaved to the host.
The maglock on the exterior of the building is probably not slaved to the host.
The camera in the corridor behind the door marked "Private, employees only" is probably slaved to the host.
The maglock to the R&D department is probably also slaved to the host.
The problem is: if everything slaved to the host is also inside the host, how does the Spider affect the runners' gear? Nobody on either side should be able to spot the other side's icons.
The job of the decker spider is to protect the integrity of the host (by controlling Host response such as IC and also by having a matrix persona with both sleaze and attack ratings and various hacker software).
The job of the rigger spider is to protect the integrity of the facility (by being directly connected to cameras, drones, sensors, elevators, alarms etc).
Defending the grids is the job for G-Men, the Overwatch Division and its DemiGODs....
This is what Overwatch Score is for.
The way I rule it, you automatically spot a device if you have meatspace line of sight to it. "Is it slaved to a host" is a thing you can find out with a Matrix Perception hit, but not necessarily which one.
To spot a specific device that you are aware of (perhaps because you directly spot it in meatspace) is resolved with a matrix perception test. There are two exceptions to this.
1. If the device is running silent, then it get to oppose the test.
2. If not and within 100 meters then spotting is automatic.
If you attack it out on the grids then it get to defend with host ratings and noise due to distance and wireless inhabiting paint etc. But there will be no spiders or IC. Distance matter.
If you attack it directly from within the host it is slaved to you risk running into spider and IC. But in this case the device does not get to defend with host ratings and you ignore noise modifiers. Distance does not matter at all.
If you attack it with a physical direct connection then you need physical proximity, risk running into physical guards, alarms, drones etc. But you get to ignore spiders, IC and host ratings.
A good tactic is to first try to establish a direct connection to one of the less guarded slaved devices just to get a mark on the host. Then leave the site (maybe sit in the rigger van that is driving around down-town) and do the remaining hacks directly from within the host while considered directly connected to everything.
As for Host-To-Host communication
Send Message (communicating) work perfectly fine from both within and from outside a Host.
And interacting with devices out on the grid that are slaved to the host you are currently in also works (even though they are not in the host with you you are still considered directly connected to them while you are in the host).