Jump to content

TuCloudAPI updategroup: Difference between revisions

From Wiki 7Kas
TuCloudAPI reference: pbx param help -> FuturePBX (API surface unchanged)
TuCloudAPI reference regenerated from func=help: tenancy rule, pbx notes on every PBX-scoped function, error codes
Line 1: Line 1:
''TuCloudAPI function to manage FuturePBX (the cloud PBX). Available to: '''SuperRoot, Operator, Client'''.''
''TuCloudAPI function to manage FuturePBX (the cloud PBX). Available to: '''SuperRoot, Operator, Client'''.''
{{Note|1=Requires the <code>pbx</code> parameter (the PBX '''name''', e.g. <code>tucall</code>). The server verifies that your <code>ukey</code>'s own account owns that PBX, whatever its role; otherwise, and also for a PBX that does not exist, it returns <code>{"ok":false,"code":"forbidden"}</code>.}}


== Description ==
== Description ==
Line 5: Line 7:


== Call ==
== Call ==
GET https://tucloudapi.7kas.com:9087/tucloud?func=updategroup&ukey=YOUR_KEY
  https://tucloudapi.7kas.com:9087/tucloud?func=updategroup&ukey=YOUR_KEY&pbx=PBX_NAME
Requires the <code>ukey</code> parameter.
GET, or POST with the parameters form-urlencoded in the body. Requires the <code>ukey</code> parameter. Always HTTP 200; the response is a JSON envelope.


== Parameters ==
== Parameters ==
Line 55: Line 57:
|-
|-
| <code>fwdshowcaller</code> || integer || No || <code>1</code> || Admin: 1 = preserve CLI, 0 = rewrite.
| <code>fwdshowcaller</code> || integer || No || <code>1</code> || Admin: 1 = preserve CLI, 0 = rewrite.
|-
| <code>translator_langs</code> || string || No || — || Idiomas que el grupo ENTIENDE, separados por COMAS (ej. "es,ca,en"), máx. 64. SOLO comas: el punto y coma se rechaza. Si el interlocutor habla uno de estos no se traduce. Se RECHAZA si excede 64: truncar dejaría fuera el último idioma y traduciría llamadas que ya se entendían.
|-
| <code>translator_lang</code> || string || No || — || Idioma de la traducción. Obligatorio si translator_mode no es 0; con modo 0 se IGNORA. Debe ser un código de la tabla oficial del servicio, EXACTO y respetando las mayúsculas: «pt-BR» vale y «pt-br», «PT-BR» o «ES» se rechazan. Guion, nunca subrayado. Los 79 códigos admitidos: af ak sq am ar hy az eu be bn bg my ca zh-Hans zh-Hant hr cs da nl en et fil fi fr gl ka de el gu ha he hi hu is id it ja jv kn kk km rw ko lo lv lt mk ms ml mr mn ne no nb fa pl pt-BR pt-PT pa ro ru sr sd si sk sl es su sw sv ta te th tr uk ur uz vi zu. OJO: el portugués y el chino SOLO existen como pt-BR/pt-PT y zh-Hans/zh-Hant — no hay «pt» ni «zh» a secas. Un código fuera de la tabla se rechaza aquí a propósito: el servicio aceptaría el armado y cerraría la sesión después, así que la llamada saldría SIN traducir, sin señal en la centralita y con la detección facturada igual. Los cuatro códigos con guion (pt-BR, pt-PT, zh-Hans, zh-Hant) estuvieron retenidos hasta el 2026-10-01 porque el motor aún no los traducía; ya están disponibles y se aceptan como el resto.
|-
| <code>translator_mode</code> || integer || No || — || Máscara de bits (OR de flags), 0 = desactivada. Un grupo NUNCA origina una llamada, así que solo admite combinaciones de 1, 4, 16 y 32: los modos de SALIDA (2 y 8) se RECHAZAN, no se ignoran en silencio. ÁMBITO: 1 = entrante externa (llamada de fuera/DID); 4 = entrante interna (otra extensión del mismo PBX la llama). MODIFICADORES: 16 = translator_lang es el idioma del INTERLOCUTOR y no el del grupo, así que se detecta el del grupo y se traduce al configurado. 32 = TRADUCCIÓN PERMANENTE: sin este bit, si el idioma detectado resulta ser uno que el otro lado ya entiende, la traducción de esa llamada se apaga hasta colgar — más barato; con el bit 32 no se apaga nunca y se sigue escuchando, facturando la escucha toda la llamada. Importa cuando quien contesta usa un manos libres, porque la voz del otro captada por su micrófono puede dejar la llamada sin traducir para siempre. Ninguno de los dos activa nada por sí solo: un modo con solo modificadores se rechaza. UNA SOLA sesión de traducción por llamada, nunca dos, y el bit 4 del grupo SÍ participa: si el que llama tiene su bit 8 o el grupo su bit 4, se toma UNA decisión conjunta con las dos filas (el idioma de cada lado para su pata, más lo que cada uno entiende); si ya se entienden no se arma nada. ⚠ La ÚNICA situación en la que los ajustes del grupo no se usan: que la extensión que llama tenga el bit 16 Y LOS DOS bits de saliente (2 y 8) Y un idioma válido. Entonces arma ella al empezar, antes de saber el destino. Es el primer sitio donde mirar ante un «he puesto el bit 4 y no traduce». Un lado con translator_mode 0 no declara nada: su idioma se ignora a propósito, para que un dato viejo no vete lo que el otro lado pidió. Omitir el parámetro CONSERVA el valor actual.
|}
|}
== Example ==
== Example ==
Line 61: Line 69:
== Response ==
== Response ==
{ok, group:{...}}.
{ok, group:{...}}.
== Errors ==
Always HTTP 200. On failure the body is <code>{"ok":false,"code":"...","message":"..."}</code>. Common codes: <code>missing_pbx</code>, <code>forbidden</code>, <code>invalid_param</code>, <code>not_found</code>, <code>conflict</code>, <code>in_use</code>, <code>db_error</code>, <code>server_busy</code>; the Response section above lists any specific to this function.


----
----
Back to [[TuCloudAPI]]
Back to [[TuCloudAPI]]
[[Category:TuCloudAPI SuperRoot]][[Category:TuCloudAPI Operator]][[Category:TuCloudAPI Client]][[Category:TuCloudAPI]]
[[Category:TuCloudAPI SuperRoot]][[Category:TuCloudAPI Operator]][[Category:TuCloudAPI Client]][[Category:TuCloudAPI]]

Revision as of 21:17, 8 October 2026

TuCloudAPI function to manage FuturePBX (the cloud PBX). Available to: SuperRoot, Operator, Client.

ℹ Requires the pbx parameter (the PBX name, e.g. tucall). The server verifies that your ukey's own account owns that PBX, whatever its role; otherwise, and also for a PBX that does not exist, it returns {"ok":false,"code":"forbidden"}.

Description

Edit a ring group (same fields as addgroup; gr editable, conflict on collision). Members as extension IDs; exten<N>_dial stays trigger-built. 404 if not in the caller's PBX. Requires a non-readonly ukey.

Call

https://tucloudapi.7kas.com:9087/tucloud?func=updategroup&ukey=YOUR_KEY&pbx=PBX_NAME

GET, or POST with the parameters form-urlencoded in the body. Requires the ukey parameter. Always HTTP 200; the response is a JSON envelope.

Parameters

Parameter Type Required Default Meaning
pbx string Yes — FuturePBX NAME (e.g. tucall). The (ukey, pbx) pair is the tenant boundary; the server verifies the ukey owns this PBX.
id integer Yes — Group id (_id).
name string Yes — Display name (required, max 32).
gr integer No 0 Group number 1-99 (0 = keep current).
exten1 string No — Comma-separated extension _id list for this ring slot (members ring simultaneously; slots ring in order 1..5). Each id is validated in-tenant.
exten2 string No — Ring slot 2 members.
exten3 string No — Ring slot 3 members.
exten4 string No — Ring slot 4 members.
exten5 string No — Ring slot 5 members.
ringing1 integer No 0 Slot 1 ring seconds.
ringing2 integer No 0 Slot 2 ring seconds.
ringing3 integer No 0 Slot 3 ring seconds.
ringing4 integer No 0 Slot 4 ring seconds.
ringing5 integer No 0 Slot 5 ring seconds.
music integer No 0 Music-on-hold id (0 = none).
tom integer No 0 0 = tone, 1 = music while ringing.
fwd integer No 0 External forward 0-4.
fwdnum string No — External forward destination.
fwd_internal integer No 0 Internal forward mode 0-4.
fwdnum_internal string No — Internal forward destination.
fwd_cli_id integer No 0 Admin: caller-id cli _id (0 = none).
fwdshowcaller integer No 1 Admin: 1 = preserve CLI, 0 = rewrite.
translator_langs string No — Idiomas que el grupo ENTIENDE, separados por COMAS (ej. "es,ca,en"), máx. 64. SOLO comas: el punto y coma se rechaza. Si el interlocutor habla uno de estos no se traduce. Se RECHAZA si excede 64: truncar dejaría fuera el último idioma y traduciría llamadas que ya se entendían.
translator_lang string No — Idioma de la traducción. Obligatorio si translator_mode no es 0; con modo 0 se IGNORA. Debe ser un código de la tabla oficial del servicio, EXACTO y respetando las mayúsculas: «pt-BR» vale y «pt-br», «PT-BR» o «ES» se rechazan. Guion, nunca subrayado. Los 79 códigos admitidos: af ak sq am ar hy az eu be bn bg my ca zh-Hans zh-Hant hr cs da nl en et fil fi fr gl ka de el gu ha he hi hu is id it ja jv kn kk km rw ko lo lv lt mk ms ml mr mn ne no nb fa pl pt-BR pt-PT pa ro ru sr sd si sk sl es su sw sv ta te th tr uk ur uz vi zu. OJO: el portugués y el chino SOLO existen como pt-BR/pt-PT y zh-Hans/zh-Hant — no hay «pt» ni «zh» a secas. Un código fuera de la tabla se rechaza aquí a propósito: el servicio aceptaría el armado y cerraría la sesión después, así que la llamada saldría SIN traducir, sin señal en la centralita y con la detección facturada igual. Los cuatro códigos con guion (pt-BR, pt-PT, zh-Hans, zh-Hant) estuvieron retenidos hasta el 2026-10-01 porque el motor aún no los traducía; ya están disponibles y se aceptan como el resto.
translator_mode integer No — Máscara de bits (OR de flags), 0 = desactivada. Un grupo NUNCA origina una llamada, así que solo admite combinaciones de 1, 4, 16 y 32: los modos de SALIDA (2 y 8) se RECHAZAN, no se ignoran en silencio. ÁMBITO: 1 = entrante externa (llamada de fuera/DID); 4 = entrante interna (otra extensión del mismo PBX la llama). MODIFICADORES: 16 = translator_lang es el idioma del INTERLOCUTOR y no el del grupo, así que se detecta el del grupo y se traduce al configurado. 32 = TRADUCCIÓN PERMANENTE: sin este bit, si el idioma detectado resulta ser uno que el otro lado ya entiende, la traducción de esa llamada se apaga hasta colgar — más barato; con el bit 32 no se apaga nunca y se sigue escuchando, facturando la escucha toda la llamada. Importa cuando quien contesta usa un manos libres, porque la voz del otro captada por su micrófono puede dejar la llamada sin traducir para siempre. Ninguno de los dos activa nada por sí solo: un modo con solo modificadores se rechaza. UNA SOLA sesión de traducción por llamada, nunca dos, y el bit 4 del grupo SÍ participa: si el que llama tiene su bit 8 o el grupo su bit 4, se toma UNA decisión conjunta con las dos filas (el idioma de cada lado para su pata, más lo que cada uno entiende); si ya se entienden no se arma nada. ⚠ La ÚNICA situación en la que los ajustes del grupo no se usan: que la extensión que llama tenga el bit 16 Y LOS DOS bits de saliente (2 y 8) Y un idioma válido. Entonces arma ella al empezar, antes de saber el destino. Es el primer sitio donde mirar ante un «he puesto el bit 4 y no traduce». Un lado con translator_mode 0 no declara nada: su idioma se ignora a propósito, para que un dato viejo no vete lo que el otro lado pidió. Omitir el parámetro CONSERVA el valor actual.

Example

https://tucloudapi.7kas.com:9087/tucloud?func=updategroup&ukey=KEY&pbx=tucall&id=927&name=Ventas&exten1=90671

Response

{ok, group:{...}}.

Errors

Always HTTP 200. On failure the body is {"ok":false,"code":"...","message":"..."}. Common codes: missing_pbx, forbidden, invalid_param, not_found, conflict, in_use, db_error, server_busy; the Response section above lists any specific to this function.


Back to TuCloudAPI