API de Facebook
Qué es un menú persistente
Un menú persistente te permite crear y enviar un menú de las funciones principales de tu negocio, como el horario comercial, las ubicaciones de las tiendas y los productos. Siempre estará visible durante la conversación de una persona con tu empresa en Messenger.

Botones compatibles:
El menú persistente consiste en un conjunto de botones. Los siguientes tipos de botones son compatibles en el menú persistente:
● Botones URL (web_url) ● Botones de devolución de llamada (postback)
Cómo agregar un menú persistente para una página específica
respuesta = fb_set_persistent_menu("group_id", buttons), donde: group_id - ID del bot de Facebook, (se puede encontrar en el "Canal" menú de MaviBot) buttons - un diccionario que contiene botones
Ejemplo de cómo estructurar el diccionario de botones: buttons = {"default": [["postback", "Botón 1", "callback_text 1"], ["postback", "Botón 2", "callback_text 2"], ["web_url", "Enlace del sitio", "https://mavibot.ai/"]]}
predeterminado - una clave obligatoria que define el array de botones que se mostrarán en el menú por defecto, independientemente de la localización del usuario. El valor debe ser un array de botones. Cada botón se describe como un array separado en el siguiente formato: ["button_type", "Texto visible del botón", "Texto de callback enviado al bot"]
Tipos de botones y su descripción: - botón de callback: ["postback", "Texto visible del botón", "Texto de callback enviado al bot"] - botón URL: ["web_url", "Texto visible del enlace", "https://example.com"]
Cómo configurar el menú según la localización del usuario
Puedes configurar botones para diferentes regiones añadiendo claves adicionales al diccionario de botones correspondientes a locales específicos.
Por ejemplo, para añadir botones para la configuración regional en inglés:
buttons = {"default": [["postback", "Botón 1", "callback_text 1"], ["postback", "Botón 2", "callback_text 2"], ["web_url", "Enlace del sitio", "https://mavibot.ai/"]], "en_EN": [["postback", "Botón", "callback_text 1"], ["postback", "Botón 2", "callback_text 2"], ["web_url", "Enlace", "https://mavibot.ai/"]]}
Nota: En este caso, la clave representa la configuración regional para la cual se mostrarán los botones.
Locales compatibles: af_ZA, ar_AR, as_IN, az_AZ, be_BY, bg_BG, bn_IN, br_FR, bs_BA, ca_ES, cb_IQ, co_FR, cs_CZ, cx_PH, cy_GB, da_DK, de_DE, el_GR, en_GB, en_UD, en_US, es_ES, es_LA, et_EE, eu_ES, fa_IR, ff_NG, fi_FI, fo_FO, fr_CA, fr_FR, fy_NL, ga_IE, gl_ES, gn_PY, gu_IN, ha_NG, he_IL, hi_IN, hr_HR, hu_HU, hy_AM, id_ID, is_IS, it_IT, ja_JP, ja_KS, jv_ID, ka_GE, kk_KZ, km_KH, kn_IN, ko_KR, ku_TR, lt_LT, lv_LV, mg_MG, mk_MK, ml_IN, mn_MN, mr_IN, ms_MY, mt_MT, my_MM, nb_NO, ne_NP, nl_BE, nl_NL, nn_NO, or_IN, pa_IN, pl_PL, ps_AF, pt_BR, pt_PT, qz_MM, ro_RO, ru_RU, rw_RW, sc_IT, si_LK, sk_SK, sl_SI, so_SO, sq_AL, sr_RS, sv_SE, sw_KE, sz_PL, ta_IN, te_IN, tg_TJ, th_TH, tl_PH, tr_TR, tz_MA, uk_UA, ur_PK, uz_UZ, vi_VN, zh_CN, zh_HK, zh_TW
Cómo agregar un menú persistente para un usuario específico
Para hacer esto, establece el tercer parámetro de la función fb_set_persistent_menu en 1, así: respuesta = fb_set_persistent_menu('group_id', buttons, 1)
Este menú estará disponible para el usuario para el que se llamó la función.
NOTA . La actualización de un menú persistente a nivel de usuario surte efecto en tiempo real. Sin embargo, la actualización de un menú persistente a nivel de página puede tardar hasta 24 horas.
La configuración a nivel de usuario está limitada a una tasa de 10 llamadas por usuario cada 10 minutos.
Cómo deshabilitar todas las comunicaciones excepto el menú persistente
Para hacer que el menú persistente sea la única forma en que un usuario pueda interactuar con tu bot de Messenger, debes deshabilitar el compositor.
¿Por qué harías esto?
Es útil cuando tu bot está diseñado para un propósito específico o un conjunto predefinido de opciones.
¿Cómo hacerlo?
Para deshabilitar el compositor, pasa 1 como cuarto parámetro en la función:
para deshabilitar el compositor a nivel de página (para todos los usuarios): response = fb_set_persistent_menu('group_id', buttons, '', 1) para deshabilitar el compositor para el usuario para quien se llama la función: response = fb_set_persistent_menu('group_id', buttons, 1, 1) donde: group_id - ID del bot de Facebook, (se puede encontrar en el "Canal" menú de MaviBot) buttons - un diccionario que contiene botones
Si tiene éxito, la función devuelve: {"result":"success"}
De lo contrario, devuelve una descripción del error. 'Error parse buttons data' - error en el diccionario de botones {"error":{"message":"(#100) param persistent_menu[0][call_to_actions] must be non-empty.","type":"OAuthException","code":100,"fbtrace_id":"AJtVczu7TEJJxbMfnO"}}
EJEMPLOS:
Agregar un menú para todos los usuarios:
Agregar un menú para todos los usuarios y hacer que este menú sea el único método de comunicación para todos:
Agregar un menú para el usuario que ingresó al bloque que llama a la función:
Agregar un menú para el usuario que ingresó al bloque que llama a la función, y hacer que este menú sea el único método de comunicación para todos los usuarios:
Eliminar el menú persistente a nivel de página (para todos los usuarios):
response = fb_delete_persistent_menu('group_id')
Si tiene éxito, la función devuelve: {"result":"success"}
De lo contrario, devuelve una descripción del error. 'Bot not found'
Eliminar el menú persistente a nivel de usuario:
response = fb_delete_persistent_menu('group_id', 1)
Si tiene éxito, la función devuelve: {"result":"success"}
De lo contrario, devuelve una descripción del error.
"Bot no encontrado"
Última actualización