Mixins – API Completa del Cliente

Esta página documenta todos los mixins que componen ToDusClient2. Cada mixin agrupa métodos por dominio funcional.

ToDusAuthMixin (Autenticación)

MétodoDescripción
request_code(phone_number)Solicita código de verificación SMS.
validate_code(phone_number, code) -> strValida el código y retorna el token.
login(phone_number, password) -> strInicia sesión con contraseña.

ToDusMessageMixin (Mensajería Privada)

MétodoDescripción
send_message(token, to_jid, body, reply_to_id) -> msg_idEnvía texto.
edit_message(token, to_jid, new_body, original_msg_id, reply_to_id) -> msg_idEdita un mensaje.
send_file_message(token, to_jid, url, file_type, caption, file_name, file_size, reply_to_id) -> msg_idEnvía archivo.
send_image_message(token, to_jid, url, file_name, file_size, width, height, thumbnail, caption, reply_to_id) -> msg_idEnvía imagen con metadatos.
send_image_message_simple(token, to_jid, url, file_name, file_size, msg_id, reply_to_id) -> msg_idEnvía imagen sin metadatos.
send_button_message(token, to_jid, text, buttons, reply_to_id) -> msg_idEnvía mensaje con botones.
send_contact_message(token, to_jid, contact_id, contact_name, contact_phone, reply_to_id) -> msg_idEnvía contacto.
send_sticker_message(token, to_jid, sticker_id, sticker_name, sticker_pack, sticker_hash, reply_to_id) -> msg_idEnvía sticker.
send_video_message(token, to_jid, url, video_id, file_name, file_size, duration, width, height, thumbnail, info_text, reply_to_id) -> msg_idEnvía video.
send_location_message(token, to_jid, lat, lon, zoom, text, reply_to_id) -> msg_idEnvía ubicación.
send_event_message(token, to_jid, title, start, end, all_day, ics_data, event_id, reply_to_id) -> msg_idEnvía evento.
send_chat_state(token, to_jid, state)Notifica estado de escritura.
delete_message(token, to_jid, message_id, msg_type, body, media_xml, reply_to_id) -> msg_idElimina mensaje.
send_read_receipt(token, to_jid, msg_id, msg_type) -> msg_idConfirma lectura.
listen_messages(token, callback)Bucle de escucha de mensajes.

ToDusFileMixin (Archivos)

MétodoDescripción
reserve_upload_url(token, size, file_type, file_name) -> (up_url, down_url)Reserva URLs de subida/descarga.
get_real_download_url(token, url) -> strObtiene URL real de descarga.
upload_file(token, data, file_type, progress_callback, file_name) -> strSube archivo y retorna URL.
download_file(token, url, path) -> intDescarga a ruta local.
download_file_to_folder(token, url, folder, filename) -> (int, str)Descarga a carpeta.

ToDusProfileMixin (Perfil)

MétodoDescripción
update_profile(token, alias, bio, picture_url, thumbnail_url) -> boolActualiza perfil.
upload_avatar(token, image_data, thumbnail_data) -> (profile_url, thumb_url)Sube avatar.
set_todus_id(new_id, msg_id) -> msg_idCambia @username (requiere sesión activa).

ToDusChannelMixin (Canales)

MétodoDescripción
create_channel(name, link, public, desc, picture, subs) -> msg_idCrea canal.
publish_to_channel(channel_jid, publ_xml) -> msg_idPublica en canal.
subscribe_channel(channel_jid) -> msg_idSe suscribe a canal.
leave_channel(channel_jid) -> msg_idAbandona canal.
get_my_channels() -> msg_idLista canales del usuario.
get_channel_info(channel_link) -> msg_idObtiene info del canal.
get_channel_publications(channel_jid, last_id, limit) -> msg_idObtiene publicaciones.

ToDusStatusMixin (Estados/Historias)

MétodoDescripción
publish_status(json_content) -> msg_idPublica estado.
delete_status(status_id) -> msg_idElimina estado.
get_status(status_id) -> msg_idObtiene estado específico.
follow_user(phone_number) -> msg_idSigue estados de usuario.
unfollow_user(phone_number) -> msg_idDeja de seguir.
get_followers(phone_number, limit) -> msg_idLista seguidores.
get_following(phone_number, limit) -> msg_idLista seguidos.
get_follower_info(phone_number) -> msg_idInfo de relación.

ToDusPrivacyMixin (Privacidad)

MétodoDescripción
get_profile_privacy() -> msg_idObtiene privacidad de perfil.
set_profile_privacy(profile_photo, last, info) -> msg_idConfigura privacidad.
get_group_privacy() -> msg_idObtiene privacidad de grupos.
set_group_privacy(who_can, exceptions) -> msg_idConfigura privacidad de grupos.

ToDusBlockMixin (Bloqueos)

MétodoDescripción
block_user(phone_number) -> msg_idBloquea usuario.
unblock_user(phone_number) -> msg_idDesbloquea usuario.
get_block_list() -> msg_idLista bloqueados.
get_block_list_paginated(limit, offset) -> msg_idLista paginada.

ToDusLastMixin (Última Conexión)

MétodoDescripción
get_last_seen(phone_number) -> msg_idObtiene última conexión.

ToDusLocationMixin (Ubicación)

MétodoDescripción
set_location(lat, lon) -> msg_idComparte ubicación.
hide_location() -> msg_idOculta ubicación.
get_people_near(limit, offset) -> msg_idPersonas cerca.
get_near_status() -> msg_idEstado de visibilidad.

ToDusCallMixin (Llamadas)

MétodoDescripción
get_turn_credentials(phone_number) -> msg_idObtiene credenciales TURN.
start_call(phone_number, content) -> msg_idInicia llamada.
end_call(phone_number, reason) -> msg_idFinaliza llamada.
pickup_call(phone_number, content) -> msg_idResponde llamada.
reject_call(phone_number) -> msg_idRechaza llamada.