# vx_req_account_login

> Reference the Vivox Core SDK API.

**Module:** **[Logging In and Logging Out](./group__login.md)**

[More...](#detailed-description)

`#include <VxcRequests.h>`

## Public Attributes

|                                                                           | Name                                                                                                                                                                                                                             |
| ------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| [vx\_req\_base\_t](./_vxc_8h.md#typedef-vx_req_base_t)                    | **[base](./structvx__req__account__login.md#variable-base)** The common properties for all requests.                                                                                                                             |
| [VX\_HANDLE](./_vxc_8h.md#typedef-vx_handle)                              | **[connector\_handle](./structvx__req__account__login.md#variable-connector_handle)** The handle returned from a successful \[vx\_req\_connector\_create] request.                                                               |
| char \*                                                                   | **[acct\_name](./structvx__req__account__login.md#variable-acct_name)** The user's account name.                                                                                                                                 |
| char \*                                                                   | **[acct\_password](./structvx__req__account__login.md#variable-acct_password)** The user's account password.                                                                                                                     |
| [vx\_session\_answer\_mode](./_vxc_8h.md#enum-vx_session_answer_mode)     | **[answer\_mode](./structvx__req__account__login.md#variable-answer_mode)** Control how the SDK responds to incoming voice calls.                                                                                                |
| [vx\_text\_mode](./_vxc_8h.md#enum-vx_text_mode)                          | **[enable\_text](./structvx__req__account__login.md#variable-enable_text)** Determine whether the user will enable text for all sessions.                                                                                        |
| int                                                                       | **[participant\_property\_frequency](./structvx__req__account__login.md#variable-participant_property_frequency)** An integer that specifies the maximum number of participant property events the SDK sends while in a channel. |
| int                                                                       | **[enable\_buddies\_and\_presence](./structvx__req__account__login.md#variable-enable_buddies_and_presence)** An integer that determines whether to enable and allow buddy and presence information.                             |
| [vx\_buddy\_management\_mode](./_vxc_8h.md#enum-vx_buddy_management_mode) | **[buddy\_management\_mode](./structvx__req__account__login.md#variable-buddy_management_mode)** Determine how the SDK handles incoming buddy subscriptions.                                                                     |
| int                                                                       | **[enable\_client\_ringback](./structvx__req__account__login.md#variable-enable_client_ringback)**                                                                                                                               |
| int                                                                       | **[autopost\_crash\_dumps](./structvx__req__account__login.md#variable-autopost_crash_dumps)** If this is set to 1, then the SDK posts crash dumps that occur on SDK threads to Vivox so they can be automatically analyzed.     |
| char \*                                                                   | **[acct\_mgmt\_server](./structvx__req__account__login.md#variable-acct_mgmt_server)** Override the account management server set in \[vx\_req\_connector\_create].                                                              |
| char \*                                                                   | **[application\_token](./structvx__req__account__login.md#variable-application_token)** An application token that is provided by the developer.                                                                                  |
| char \*                                                                   | **[application\_override](./structvx__req__account__login.md#variable-application_override)** A unique string value that identifies the application that is integrated with the SDK.                                             |
| char \*                                                                   | **[client\_ip\_override](./structvx__req__account__login.md#variable-client_ip_override)** The actual client IP address to pass in requests to the Vivox network.                                                                |
| int                                                                       | **[enable\_presence\_persistence](./structvx__req__account__login.md#variable-enable_presence_persistence)** Determine whether to enable presence persistence.                                                                   |
| char \*                                                                   | **[account\_handle](./structvx__req__account__login.md#variable-account_handle)** The preferred account handle.                                                                                                                  |

## Detailed Description

```cpp
struct vx_req_account_login;
```

**See**: [vx\_resp\_account\_login](./structvx__resp__account__login.md)

**Note**: This can only be called after connector initialization has successfully completed.

## Public Attributes Documentation

### variable base

```cpp
vx_req_base_t base;
```

The common properties for all requests.

### variable connector\_handle

```cpp
VX_HANDLE connector_handle;
```

The handle returned from a successful \[vx\_req\_connector\_create] request.

### variable acct\_name

```cpp
char * acct_name;
```

The user's account name.

### variable acct\_password

```cpp
char * acct_password;
```

The user's account password.

### variable answer\_mode

```cpp
vx_session_answer_mode answer_mode;
```

Control how the SDK responds to incoming voice calls.

* mode\_verify\_answer - the default setting.
* mode\_auto\_answer - this setting is deprecated and should not be used.
* mode\_busy\_answer - automatically answer every call with a 486 busy.

### variable enable\_text

```cpp
vx_text_mode enable_text;
```

Determine whether the user will enable text for all sessions.

* text\_mode\_enabled - text will be enabled.
* text\_mode\_disabled - text will not be enabled. The default value is text\_mode\_enabled.

### variable participant\_property\_frequency

```cpp
int participant_property_frequency;
```

An integer that specifies the maximum number of participant property events the SDK sends while in a channel.

If this is set, then the SDK attempts to generate an event at the given frequency, but does not generate two identical events in a row. If this is not set, then the default is "on state change", which means that events are sent when the participant starts talking, stops talking, is muted, or is unmuted. The following list details valid values for this integer:

* 0 - Never
* 5 - 10 times per second
* 10 - 5 times per second
* 50 - 1 time per second
* 100 - On participant state change (this is the default value)

### variable enable\_buddies\_and\_presence

```cpp
int enable_buddies_and_presence;
```

An integer that determines whether to enable and allow buddy and presence information.

If this is set to 0 (the default value), then buddy lists and presence status are not retrieved by the SDK, and any command relating to buddies or presence that is submitted to the SDK is rejected. Setting this to 1 enables buddy and presence functionality.

### variable buddy\_management\_mode

```cpp
vx_buddy_management_mode buddy_management_mode;
```

Determine how the SDK handles incoming buddy subscriptions.

The following list details valid values:

* 0 - mode\_auto\_accept
* 1 - mode\_auto\_add
* 2 - mode\_block
* 3 - mode\_hide
* 4 - mode\_application

### variable enable\_client\_ringback

```cpp
int enable_client_ringback;
```

**Deprecated**:

This flag does not affect anything.

### variable autopost\_crash\_dumps

```cpp
int autopost_crash_dumps;
```

If this is set to 1, then the SDK posts crash dumps that occur on SDK threads to Vivox so they can be automatically analyzed.

### variable acct\_mgmt\_server

```cpp
char * acct_mgmt_server;
```

Override the account management server set in \[vx\_req\_connector\_create].

If this is set to NULL or empty, the account management server is set to what is used in the [vx\_req\_connector\_create](./structvx__req__connector__create.md) command.

### variable application\_token

```cpp
char * application_token;
```

An application token that is provided by the developer.

**Note**: This is required if the acct\_mgmt\_server is configured to require app tokens. This ensures that one application cannot use the resources of another application when sharing the same backend.

### variable application\_override

```cpp
char * application_override;
```

A unique string value that identifies the application that is integrated with the SDK.

**Note**: This is an optional value that is provided by Vivox. If this is set, then this overrides the corresponding value in connector create. Any value passed in on this field is present on events received by others that pertain to your identity:

* vx\_evt\_message\_t
* vx\_evt\_subscription\_t
* vx\_evt\_buddy\_presence\_t
* vx\_evt\_session\_added\_t

### variable client\_ip\_override

```cpp
char * client_ip_override;
```

The actual client IP address to pass in requests to the Vivox network.

**Note**: This is only supported in the server SDK, and is otherwise ignored.

### variable enable\_presence\_persistence

```cpp
int enable_presence_persistence;
```

Determine whether to enable presence persistence.

* When this is set to 1, the buddy and watchers list is downloaded from the Vivox backend.
* When this is set to 0, the application is responsible for setting buddies and watchers by using the appropriate requests. The default value is 1.

### variable account\_handle

```cpp
char * account_handle;
```

The preferred account handle.

**Attention**: This cannot match any existing handle (for example, account\_handle or session\_handle). This is a string. This must include at least one non-numeric character. If this is empty, then a handle is automatically generated.
