Skip to content

Commit 64c9df7

Browse files
authored
Create readme.md
Adding readme.
1 parent d80a391 commit 64c9df7

File tree

1 file changed

+93
-0
lines changed

1 file changed

+93
-0
lines changed

readme.md

+93
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,93 @@
1+
# PowerShell Module for IT Support
2+
3+
This module is designed to help IT support staff perform common tasks more efficiently and effectively. It uses an internal JSON config file to store the settings and parameters for various systems and commands, such as ExchangeOnline, Microsoft Teams, and ActiveDirectory. This reduces the duplication of code and centralizes the configuration.
4+
5+
The module also supports tab completion via ArgumentCompleters for all commands that accept parameters. This makes it easier to enter the correct values and avoid typos.
6+
7+
The module simplifies the process of connecting to, testing, and leveraging the systems mentioned above. For example, you can use the `Connect-Exchange` function to establish a remote PowerShell session with ExchangeOnline, and then use the `Get-ITSupportMailboxMember` function to retrieve the members of a mailbox.
8+
9+
The module can also be used to send Teams chat messages via the `Send-TeamsChatMessage` function, which uses the Microsoft Graph API to communicate with the Teams service. You can use this function to notify users or colleagues about the status of their tickets, requests, or issues.
10+
11+
## Installation
12+
13+
To install the module, you need to download or clone the repository from GitHub:
14+
15+
```powershell
16+
git clone https://github.com/Titus1024/PowerShell.git
17+
```
18+
19+
Then, you need to copy the folder `PowerShell` to one of the paths in your `$env:PSModulePath` variable. For example, you can copy it to `C:\Users\YourUserName\Documents\WindowsPowerShell\Modules`.
20+
21+
Alternatively, you can use the `Install-Module` cmdlet from the PowerShell Gallery (coming soon).
22+
23+
## Usage
24+
25+
To use the module, you need to import it first:
26+
27+
```powershell
28+
Import-Module PowerShell
29+
```
30+
31+
Then, you can use any of the public or private functions in the module. The public functions are intended to be used by the IT support staff, while the private functions are used internally by the module or for debugging purposes.
32+
33+
The public functions are:
34+
35+
- `Add-ITSupportADGroupMember`: Adds a user to an Active Directory group.
36+
- `Add-ITSupportMailboxMember`: Adds a user to a mailbox or a distribution group in ExchangeOnline.
37+
- `Add-ITSupportOneDriveUser`: Grants a user access to another user's OneDrive folder in SharePoint.
38+
- `Block-ITSupportADUser`: Blocks a user from logging in to the domain.
39+
- `Convert-ITSupportMailbox`: Converts a mailbox from one type to another in ExchangeOnline, such as from a user mailbox to a shared mailbox.
40+
- `Copy-ITSupportADGroupMembership`: Copies the group membership of one user to another in Active Directory.
41+
- `Disable-ITSupportADUser`: Completely off-boards a user account in Active Directory.
42+
- `Get-ITSupportADGroupMember`: Gets the members of an Active Directory group.
43+
- `Get-ITSupportADUser`: Gets the properties of a user account in Active Directory.
44+
- `Get-ITSupportBitLockerKey`: Gets the BitLocker recovery key of a computer from Active Directory.
45+
- `Get-ITSupportLockedAccount`: Gets the locked out accounts in the domain from Active Directory.
46+
- `Reset-ITSupportPassword`: Resets the password of a user account in Active Directory.
47+
- `Start-ITSupportADUserAudit`: Starts an audit of the user accounts in Active Directory and generates a report in CSV format.
48+
- `Unlock-ITSupportAccount`: Unlocks a user account in Active Directory.
49+
50+
For more details and examples on how to use each function, you can use the `Get-Help` cmdlet:
51+
52+
```powershell
53+
Get-Help Add-ITSupportADGroupMember -Full
54+
```
55+
56+
The private functions that support the module's functionality are:
57+
58+
- `Confirm-Modules.ps1`
59+
- `Connect-Exchange.ps1`
60+
- `Connect-MicrosoftGraph.ps1`
61+
- `Connect-SharePoint.ps1`
62+
- `Format-Exception.ps1`
63+
- `Format-Output.ps1`
64+
- `Get-ADFilter.ps1`
65+
- `Get-MicrosoftGraphScopes.ps1`
66+
- `Get-MicrosoftGraphUser.ps1`
67+
- `Get-TraceOutputFile.ps1`
68+
- `Get-UserCredential.ps1`
69+
- `Get-UserInput.ps1`
70+
- `Get-WorkingDirectory.ps1`
71+
- `New-Stopwatch.ps1`
72+
- `New-TeamsChat.ps1`
73+
- `New-TraceOutputFile.ps1`
74+
- `New-WorkingDirectory.ps1`
75+
- `Send-Email.ps1`
76+
- `Send-TeamsChatMessage.ps1`
77+
- `Set-TraceOutputFile.ps1`
78+
- `Set-WorkingDirectory.ps1`
79+
- `Split-TextOnLineWidth.ps1`
80+
- `Start-Module.ps1`
81+
- `Test-Administrator.ps1`
82+
- `Test-DatabaseConnection.ps1`
83+
- `Test-ExchangeConnection.ps1`
84+
- `Test-MicrosoftGraphConnection.ps1`
85+
- `Test-SharePointConnection.ps1`
86+
- `Test-VPNConnection.ps1`
87+
- `Trace-Output.ps1`
88+
- `Update-Ticket.ps1`
89+
- `Write-SqlRow.ps1`
90+
91+
## Feedback and Issues
92+
93+
If you have any feedback, suggestions, or issues with the module, please feel free to open an issue or a pull request on GitHub. I appreciate your input and support.

0 commit comments

Comments
 (0)