Desarrollo de Módulo de Provisionamiento para WHMCS Integrado con la API de Voip.ms

Job ID: 39117972

Budget: €30 – €250 EUR

Estamos buscando un desarrollador experimentado para crear un módulo de provisionamiento personalizado para WHMCS que se integre con la API de Voip.ms. Este módulo permitirá automatizar la creación, suspensión, reactivación y eliminación de cuentas de Voip.ms para nuestros clientes de reventa de servicios VoIP.

### **Requerimientos Detallados:**

#### **1. Configuración del Módulo:**
- **Nombre del Módulo:** `voip`
- **Opciones de Configuración:**
- **API Username:** Campo de texto para ingresar el nombre de usuario de la API de Voip.ms.
- **API Password:** Campo de contraseña para ingresar la contraseña de la API de Voip.ms.

#### **2. Funcionalidades Principales:**
- **Crear Cuenta:**
- **Endpoint API:** `createSubAccount`
- **Parámetros Obligatorios:**
- `username`: Generado automáticamente como `#` seguido del número de cliente de WHMCS (Ejemplo: `#12345`).
- `protocol`: Protocolo utilizado para la subcuenta (valores según `getProtocols`).
- `auth_type`: Código de tipo de Autenticación (valores según `getAuthTypes`).
- `device_type`: Código de tipo de dispositivo (valores según `getDeviceTypes`).
- `lock_international`: Código de restricción de llamadas internacionales (valores según `getLockInternational`).
- `international_route`: Código de ruta (valores según `getRoutes`).
- `music_on_hold`: Código de música en espera (valores según `getMusicOnHold`).
- `allowed_codecs`: Lista de Codecs permitidos, separados por punto y coma (Ejemplo: `ulaw;g729;gsm`).
- `dtmf_mode`: Código de modo DTMF (valores según `getDTMFModes`).
- `nat`: Código de modo NAT (valores según `getNAT`).
- **Parámetros Opcionales:**
- `description`, `password`, `ip`, `callerid_number`, `canada_routing`, `allow225`, `record_calls`, `sip_traffic`, `max_expiry`, `rtp_timeout`, `rtp_hold_timeout`, `ip_restriction`, `enable_ip_restriction`, `pop_restriction`, `enable_pop_restriction`, `send_bye`, `transcribe`, `transcription_locale`, `transcription_email`, `internal_extension`, `internal_voicemail`, `internal_dialtime`, `reseller_client`, `reseller_package`, `reseller_nextbilling`, `reseller_chargesetup`, `parking_lot`, `transcription_start_delay`, `enable_internal_cnam`, `internal_cnam`, `dialing_mode`, `tfcarrier`.

- **Suspender Cuenta:**
- **Endpoint API:** `suspendSubAccount`
- **Parámetros:**
- `username`: Nombre de usuario de la subcuenta (`#IDCliente`).

- **Reactivar Cuenta:**
- **Endpoint API:** `unsuspendSubAccount`
- **Parámetros:**
- `username`: Nombre de usuario de la subcuenta (`#IDCliente`).

- **Eliminar Cuenta:**
- **Endpoint API:** `deleteSubAccount`
- **Parámetros:**
- `username`: Nombre de usuario de la subcuenta (`#IDCliente`).

#### **3. Requisitos Técnicos:**
- **Lenguaje de Programación:** PHP
- **Framework:** Compatible con la versión actual de WHMCS.
- **API:** Integración completa con la API de Voip.ms según la documentación oficial: [Voip.ms API Documentation](https://voip.ms/m/api.php)
- **Seguridad:**
- Almacenamiento seguro de las credenciales de la API.
- Comunicaciones con la API deben realizarse a través de HTTPS.

#### **4. Experiencia y Habilidades Requeridas:**
- **WHMCS:**
- Experiencia previa desarrollando módulos de provisionamiento para WHMCS.
- Conocimiento profundo de la estructura y hooks de WHMCS.
- **Integración de API:**
- Experiencia integrando APIs RESTful con cURL o herramientas similares.
- **PHP:**
- Dominio avanzado de PHP y buenas prácticas de programación.
- **VoIP:**
- Conocimiento básico de servicios VoIP y terminología asociada es una ventaja.

#### **5. Entregables del Proyecto:**
- **Código Fuente:**
- Módulo completo `voip` listo para ser instalado en WHMCS.
- **Documentación:**
- Instrucciones detalladas para la instalación y configuración del módulo.
- Descripción de cada opción de configuración y su uso.
- **Pruebas:**
- Realización de pruebas funcionales para asegurar que todas las funcionalidades trabajan correctamente.
- Informe de pruebas con casos de prueba ejecutados.
- **Soporte Inicial:**
- Soporte post-entrega por un período acordado (ejemplo: 2 semanas) para resolver posibles bugs o dudas de implementación.

#### **6. Plazos del Proyecto:**
- **Inicio del Proyecto:** Inmediato
- **Fecha de Entrega Esperada:** [Especificar la fecha deseada, por ejemplo, "Dentro de 3 semanas desde el inicio"]

#### **7. Presupuesto:**
- Según propuesta.

#### **8. Información Adicional:**
- **Acceso a APIs:** Proporcionaremos las credenciales necesarias para la API de Voip.ms durante el desarrollo.
- **Comunicación:** Preferiblemente a través de la plataforma de Freelancer, con disponibilidad para reuniones breves si es necesario.
- **Propiedad del Código:** Todo el código desarrollado será propiedad exclusiva de nuestra empresa.

## **Cómo Aplicar:**

Por favor, envía tu propuesta incluyendo:

1. **Experiencia Relevante:**
- Descripción de proyectos anteriores similares, especialmente relacionados con WHMCS y VoIP.
- Enlaces a módulos de WHMCS desarrollados anteriormente (si están disponibles públicamente).

2. **Plan de Trabajo:**
- Explicación de cómo abordarías el desarrollo del módulo.
- Estimación de tiempo para cada fase del proyecto.

3. **Presupuesto:**
- Oferta económica basada en las características y alcance del proyecto.

4. **Preguntas Técnicas (Opcional):**
- Cualquier pregunta que tengas sobre el proyecto para clarificar requisitos o mejorar tu propuesta.

## **Contacto:**

Puedes contactarnos directamente a través de Freelancer con cualquier pregunta adicional o para discutir detalles específicos del proyecto.
Related categories: PHP WHMCS API RESTful API