Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

110 webex builder #115

Merged
merged 17 commits into from
Sep 18, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions docs/SUMMARY.md
Original file line number Diff line number Diff line change
Expand Up @@ -159,6 +159,7 @@
* [🔢 Remove Numbers](docs/features/scripter/remove-numbers.md)
* [🔑 Bulk Password Reset](docs/features/scripter/bulk-password-reset.md)
* [📜 Service Provider Trunking Capacity](docs/features/scripter/service-provider-trunking-capacity.md)
* [💻 Webex Builder](docs/features/scripter/webex-builder.md)
* [📈 Reporter](docs/features/reporter/README.md)
* [🤙 Call Flow](docs/features/reporter/call-flow/README.md)
* [🔑 Node Key](docs/features/reporter/call-flow/node-key.md)
Expand Down
67 changes: 67 additions & 0 deletions docs/docs/features/scripter/webex-builder.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,67 @@
---
description: api.scripter.webex_builder()
---

# 💻 Webex Builder

This script will build a webex device for a user either as a primary device or as a Shared Call Appearance.

An email and alternate user id is set, then an optional feature pack can be assigned for billing.

Next, Integrated IMP is enabled in the user services (This is needed for the integration with Cisco). Furthermore, the device is built to the device profile you set using `device_type` parameter and then added to the user either as a primary device or SCA.

{% hint style="warning" %}
```
Before running ensure your user has correct licensing for Shared Call Appearance if secondary device. Furthermore, make sure all prerequisites for the group to have webex users have been taken.
```
{% endhint %}

### Parameters 

* service\_provider\_id (str): Service Provider ID where group is hosted.
* group\_id (str): Group ID where target user is hosted.
* user\_id (str): Target user to build and add webex device.
* device\_type (str): Name of the device profile to apply.
* email (str): Email of user. This will be used to sign into the webex client.
* primary\_device (bool, optional): Setting to False will assign as SCA, True is primary. Defaults to True.
* webex\_feature\_pack\_name (str, optional): Feature pack to assign for Webex services. Defaults to None.
* enable\_integrated\_imp (bool, optional): Enables Integrated IMP service for the user if True .Defaults to True.

### Return

* dict: Webex user/ device details. Includes webex client username and password, and if primary device, device type set.

### How To Use:

{% code overflow="wrap" %}
```python
from odins_spear import api

my_api = api.Api(base_url="https://base_url/api/vx", username="john.smith", password="ODIN_INSTANCE_1")
my_api.authenticate()

my_api.scripter.webex_builder(
service_provider_id="serviceProviderId",
group_id="groupId",
user_id="userId",
device_type="Businness Communicator - Mobile",
email="[email protected]",
primary_device=True,
webex_feature_pack_name="Webex Mobile",
enable_integrated_imp=True
)
```
{% endcode %}

### Retuned Data (Formatted)

{% code overflow="wrap" fullWidth="false" %}
```
{
'username': '[email protected]',
'password': '{YdQb8',
'primary_device': True,
'device_type': 'Business Communicator - PC'
}
```
{% endcode %}
66 changes: 66 additions & 0 deletions docs/docs/methods/hunt-groups/delete-group-hunt-group.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
---
description: my_api.delete.group_hunt_group()
---

# 💔 DELETE - Group Hunt Group

Deletes the specified hunt group.

### Parameters 

* service_user_id (str): The service user ID of the hunt group to be deleted.

### Returns

* Dict: Profile of the deleted hunt group.

### How To Use:

{% code overflow="wrap" %}
```python
from odins_spear import api

my_api= api.Api(base_url="https://base_url/api/vx", username="john.smith", password="ODIN_INSTANCE_1")
my_api.authenticate()

my_api.delete.group_hunt_group(
service_user_id = "[email protected]"
)
```
{% endcode %}

### Example Returned Data (Formatted)
```json
{
"serviceInstanceProfile": {
"name": "test_hunt_group",
"callingLineIdLastName": "Hunt Group",
"callingLineIdFirstName": "Test",
"hiraganaLastName": "Hunt Group",
"hiraganaFirstName": "Test",
"language": "English",
"timeZone": "Europe/London",
"timeZoneDisplayName": "(GMT+01:00) Greenwich Mean Time",
"aliases": []
},
"policy": "Regular",
"huntAfterNoAnswer": False,
"noAnswerNumberOfRings": 5,
"forwardAfterTimeout": False,
"forwardTimeoutSeconds": 10,
"allowCallWaitingForAgents": False,
"useSystemHuntGroupCLIDSetting": True,
"includeHuntGroupNameInCLID": True,
"enableNotReachableForwarding": False,
"makeBusyWhenNotReachable": False,
"allowMembersToControlGroupBusy": False,
"enableGroupBusy": False,
"applyGroupBusyWhenTerminatingToAgent": False,
"serviceUserId": "[email protected]",
"resellerId": None,
"serviceProviderId": "ExampleServiceProvider",
"groupId": "ExampleGroup",
"isEnterprise": True,
"agents": []
}
```
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
---
description: my_api.get.group_hunt_groups_available_users()
---

# 👩‍👩‍👧‍👧 GET - Group Hunt Groups Available Users

Deletes the specified hunt group.

### Parameters 

* service_user_id (str): The service user ID of the hunt group to be deleted.

### Returns

* Dict: Profile of the deleted hunt group.

### How To Use:

{% code overflow="wrap" %}
```python
from odins_spear import api

my_api= api.Api(base_url="https://base_url/api/vx", username="john.smith", password="ODIN_INSTANCE_1")
my_api.authenticate()

my_api.get.group_hunt_groups_available_users(
service_user_id="[email protected]"
)
```
{% endcode %}

### Example Returned Data (Formatted)
```json
{
"serviceInstanceProfile": {
"name": "test_hg",
"callingLineIdLastName": "hg",
"callingLineIdFirstName": "test",
"hiraganaLastName": "test_hg",
"hiraganaFirstName": "Hunt Group",
"language": "English",
"timeZone": "Europe/London",
"timeZoneDisplayName": "(GMT+01:00) Greenwich Mean Time",
"aliases": []
},
"policy": "Regular",
"huntAfterNoAnswer": false,
"noAnswerNumberOfRings": 5,
"forwardAfterTimeout": false,
"forwardTimeoutSeconds": 10,
"allowCallWaitingForAgents": false,
"useSystemHuntGroupCLIDSetting": true,
"includeHuntGroupNameInCLID": true,
"enableNotReachableForwarding": false,
"makeBusyWhenNotReachable": false,
"allowMembersToControlGroupBusy": false,
"enableGroupBusy": false,
"applyGroupBusyWhenTerminatingToAgent": false,
"serviceUserId": "[email protected]",
"resellerId": null,
"serviceProviderId": "Example Service Provider ID",
"groupId": "Example Group ID",
"isEnterprise": true,
"agents": []
}
```
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
---
description: my_api.post.group_hunt_groups_remove_user()
---

# 👋 POST - Group Hunt Groups Remove User

Removes the specified user from all hunt groups in which it currently exists.

### Parameters 

* service_provider_id (str): The service provider ID in which the target user exists.
* group_id (str): The group ID where the user exists.
* user_id (str): The User ID of the user that is to be removed from the hunt group(s).

### Returns

* List: Service user ID's (str) of the hunt groups from which the specified user has been removed.

### How To Use:

{% code overflow="wrap" %}
```python
from odins_spear import api

my_api= api.Api(base_url="https://base_url/api/vx", username="john.smith", password="ODIN_INSTANCE_1")
my_api.authenticate()

my_api.post.group_hunt_groups_remove_user(
service_provider_id = "Test Service Provider ID",
group_id = "Test Group ID",
user_id = "[email protected]"
)
```
{% endcode %}

### Example Returned Data (Formatted)
```json
["[email protected]", "[email protected]"]
```
42 changes: 42 additions & 0 deletions docs/docs/methods/services/get-user-service-settings.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
---
description: my_api.get.user_service_settings()
---

# ⚙️ GET - User Service Settings

This method grabs all of a Broadwork entity's service settings.

### Parameters 

* user\_id (str): User ID of the target Broadworks entity.

### Returns

* Dict: Broadworks entity and all service settings.

### How To Use:

```python
from odins_spear import api

my_api= api.Api(base_url="https://base_url/api/vx", username="john.smith", password="ODIN_INSTANCE_1")
my_api.authenticate()

# updating a users service pack
my_api.get.user_service_settings(
"[email protected]"
)
```
{% endcode %}

### Example Data Returned (Formatted)
```json
{
"userId": "[email protected]",
"Advice Of Charge": {
"isActive": false,
"aocType": "During Call"
}
}
```
```
Loading