Modificación y sustitución

Puedes modificar un mensaje a tu gusto añadiendo/ajustando el título (cabecera), el cuerpo, el pie de página y un enlace al mensaje original.

Cambio de título

¿Dónde está?
Menú → Ajustes de reenvío → Elegir origen y destino → Encabezado.

Se puede modificar la forma en que se muestra la cabecera (el título de un canal) en sus suscripciones y sus reenvíos.

⏵Commands
/cabecera de configuración + una de las siguientes opciones:

ninguno - sin título
Ex.  /setting header none
Ex.  /settingchannel source_channel_reference header none

simple - añadir el título del canal original al principio
Ex.  /setting header simple
Ex.  /settingchannel source_channel_reference header simple

negrita - añade el título del canal original al principio, ponlo en negrita
Ex.  /setting header bold
Ex.  /settingchannel source_channel_reference header bold

from_only - no muestra el título de la fuente directa, pero muestra el título de la fuente original (si existe)
Ex.  /setting header from_only
Ex.  /settingchannel source_channel_reference header from_only

id - añadir el ID del mensaje original al principio
Ex.  /setting header id
Ex.  /settingchannel source_channel_reference header id

cualquier otro texto - añada este texto como título de un canal al principio
Ex.  /setting header Mi canal de Telegram
Ex.  /settingchannel source_channel_reference header My Telegram Channel

Puede ajustar esta configuración en el menú, pero también puede utilizar los comandos. Si utiliza los comandos, para aplicar este ajuste a un solo canal, sustituya el comando /setting por /settingchannel source_channel_reference (más información).

Cambiar un enlace en el pie de página

¿Dónde está?
Menú → Ajustes de reenvío → Elegir origen y destino → Enlace al mensaje original.

Por defecto en la cuenta estándar, el bot añade un pie de página con el enlace al mensaje original. Este enlace parece un símbolo @. Puede ajustar el aspecto de este pie de página o desactivarlo por completo.

Tenga en cuenta que esta configuración sólo cambia el enlace añadido por @junction_bot al final del mensaje. Esta configuración no afecta a ningún otro enlace del mensaje. Cómo modificar otros enlaces, consulte aquí.

⏵Commands
/enlace de configuración + una de las siguientes opciones:

ninguno - no incluya el enlace
Ex.  /setting link none

completo - incluir el enlace tal cual
Ex.  /setting link full

cualquier otra cadena - ocultar enlace detrás de este texto
Ex.  /setting link Channel about kitties

Puede ajustar esta configuración en el menú, pero también puede utilizar los comandos. Si utiliza los comandos, para aplicar este ajuste a un solo canal, sustituya el comando /setting por /settingchannel source_channel_reference (más información).

Cambiar de cuerpo con Antes y Después

¿Dónde está?
Menú → Ajustes de reenvío → Elegir origen y destino → Añadir al principio/final.

Con estos ajustes puedes añadir texto personalizado al principio o al final del mensaje.

Para añadir un texto que contenga varias líneas, sepárelas con una etiqueta <br>.

⏵Commands
/setting before - añadir texto al principio del mensaje.
Formato:  /setting before my text
Ex.  /setting before So I have heard:<br>
Tenga en cuenta que el cuerpo del mensaje irá justo después de este texto en la misma línea. Si desea que el cuerpo del mensaje comience en una nueva línea, añada <br> al final del texto.

/setting before none - elimina el texto antes del mensaje.

/setting after - añadir texto al final del mensaje.
Formato:  /setting after my text
Ex.  /setting after <br>In case of any questions please contact [email protected]
Tenga en cuenta que este texto irá justo después del cuerpo del mensaje en la misma línea. Añade <br> al principio de tu texto si quieres empezarlo desde una nueva línea.

/setting after none - elimina tu texto al final del mensaje.

Puede ajustar esta configuración en el menú, pero también puede utilizar los comandos. Si utiliza los comandos, para aplicar este ajuste a un solo canal, sustituya el comando /setting por /settingchannel source_channel_reference (más información).

Cambio de cuerpo y botones con Replace

¿Dónde está?
Menú → Ajustes de reenvío → Elegir origen y destino → Reemplazos.

Puedes establecer una regla de auto-reemplazo que reemplazará un texto A en los mensajes entrantes por un texto B (o con una cadena vacía, sólo eliminará el texto B).

Es importante realizar los siguientes cambios de carácter:

  • En lugar de < utilice &lt;
  • En lugar de > utilice &gt;

Para ello, utilice la función buscar y reemplazar de cualquier editor de texto.

⏵Commands

Comandos

/replace - sustituye el texto A por el texto B O elimina esta regla si se repite por segunda vez. Formato: /replace source_channel_reference text&nbsp;to&nbsp;replace target&nbsp;text Ex. /replace source_channel_reference To&nbsp;be&nbsp;or&nbsp;not&nbsp;to&nbsp;be Wake&nbsp;up! - sustituirá todas las apariciones de "Ser o no ser" procedentes del canal_fuente por "¡Despierta!". Ex. /replace source_channel_reference My&nbsp;advertisement - eliminará todas las apariciones de "Mi anuncio" procedentes del canal_fuente (literalmente las sustituirá por nada) /replacerx - crea una regla de reemplazo utilizando expresiones regulares. El formato es el mismo que con /replace. /replace referencia_canal_fuente - ver todas las reglas de sustitución en el canal_fuente /replacerx source_channel_reference - ver todas las reglas de reemplazo RegEx en source_channel Cuando utilices estos comandos deberás realizar los siguientes cambios: - En lugar de espacios en blanco entre palabras se pone el (significa NBSP - non-breaking space). Tenga en cuenta que sólo se utiliza con el comando /replace. No es necesario cuando se trabaja con filtros. - En lugar de nuevas líneas se pone <br> Para eliminar la regla de sustitución, utilice el mismo comando con los mismos argumentos por segunda vez.

Ten en cuenta que estas reglas de sustitución sólo funcionan con el cuerpo de un mensaje y con los botones, no modifican la cabecera (con el nombre del canal) ni el enlace al mensaje original.

Si tiene varias reglas de reenvío desde el mismo origen a diferentes destinos, puede establecer diferentes configuraciones, filtros y sustituciones para los distintos destinos. Más información aquí.

Vea más ejemplos aquí.

Sustituir con expresiones regulares

Además, puede utilizar expresiones regulares para realizar las sustituciones. Para ello, utilice la casilla RE del panel de reglas de sustitución o el comando /replacerx. Tiene el mismo formato.

Existe un instrumento muy práctico para probar expresiones regulares: https://regex101.com. Establece el Flavor a «golang» y establece las banderas «Single line: El punto coincide con la nueva línea» y «Global: No volver después de la primera coincidencia». Esto hará que funcione de la misma manera que un matcher de @junction_bot.

Ayuda con expresiones regulares

Las expresiones regulares son un tema muy amplio. La ayuda en este ámbito está fuera del alcance de la administración del bot. Por favor, no escribas a los administradores en privado pidiéndoles que te hagan una regla de sustitución o un filtro. Además, la administración del bot no proporciona este tipo de ayuda en el grupo de apoyo.

La forma más fácil de tener una expresión regular creada para sus necesidades es preguntar a ChatGPT, es bastante bueno en ello.

También puedes buscar ayuda en los foros adecuados. Por ejemplo, StackOverflow o CodeProject.

Normas de sustitución útiles

Cuando esté depurando una expresión regular

Sí, lo sabemos, las expresiones regulares son difíciles. A continuación se presentan expresiones listas para usar para algunas tareas populares que puede realizar con reglas de sustitución. Algunos de ellos pueden resolverse sin RegEx, pero la mayoría lo necesitan.

Si utiliza el menú principal para crear sustituciones, especifique el segundo argumento del comando /replace en el campo From , y el tercero en el campo To. Por ejemplo, en el ejemplo nº 4, el campo De contendrá <a[^<]+</a>, y el campo Para estará vacío. Además, como se utiliza el comando /replacerx, la casilla RE debe estar marcada.

1. Se puede eliminar una cabecera con el nombre del canal original con
/setting header none
2. Se puede eliminar un enlace al mensaje original con
/setting link none
3. Cualquier texto concreto del cuerpo de un mensaje puede eliminarse con el comando /replace
3.1. /replace source_channel_reference <a&nbsp;href="https://concrete-link-here">text&nbsp;of&nbsp;the&nbsp;link&nbsp;here</a>
Esto sustituirá estos enlaces específicos por una cadena vacía
3.2. /replace source_channel_reference @username
Esto eliminará todas las apariciones de @nombredeusuario
4. Cualquier enlace formateado en el cuerpo de un mensaje puede eliminarse con
/replacerx source_channel_reference <a[^<]+</a>
5. Los enlaces sin procesar pueden eliminarse con
/replacerx source_channel_reference (http:\/\/|https:\/\/)([a-zA-Z0-9.\/\?=&_]+)
6. Para eliminar sólo los enlaces que contengan t.me utilice
/replacerx source_channel_reference (t.me)([a-zA-Z0-9.\/\?=&_]+)
Esto reemplazará todo el con una cadena vacía
7. Para eliminar todos los enlaces-nombres de usuario como @nombredeusuario
/replacerx source_channel_reference @([a-zA-Z0-9=&_\-]+)
8. Para eliminar toda la parte del mensaje que comienza con la palabra «Postscriptum».
/replacerx source_channel_reference Postscriptum.*
9. Eliminar todos los números en formato #12345
/replacerx source_channel_reference #([0-9]+)
10. Elimine todas las líneas que contengan un keyword
/replacerx source_channel_reference .*\bkeyword\b.*
11. Elimine todas las líneas que contengan un keyword, seguido de dígitos (como «keyword123»)
/replacerx source_channel_reference ^keyword[0-9]*$
12. Haz que un keyword parezca atrevido
/replace source_channel_reference keyword <b>keyword</b>
13. Eliminar líneas vacías
/replace source_channel_reference <br><br> <br>
14. Haz que todos los números aparezcan en negrita. Observe que en el último argumento estamos insertando el texto, emparejado por un RegEx, usando la referencia $1. Puede obtener más información sobre esta potente función, por ejemplo, aquí.
/replacerx source_channel_reference ([0-9]+) <b>$1</b>
15. Elimine todos los textos. Sólo permanecerán las imágenes que parezcan medios de comunicación.
/replacerx source_channel_reference .*

Sustitución de enlaces

Los enlaces de un mensaje pueden ser de distintos tipos, por lo que no existe un comando único. En primer lugar, tenemos que determinar el tipo de enlace, y sólo entonces podremos crear la regla de sustitución adecuada. Para determinar el tipo de un enlace, debe activar el informe de explicación en Menú → Ajustes de reenvío → Elegir origen y destino → Informe de explicación o con el comando

/settingchannel source_channel_reference explain on

Ahora, por cada nuevo mensaje en esta fuente, el bot enviará un informe que incluirá el texto sin formato del mensaje. Así es como el bot ve el mensaje cuando aplica las reglas de sustitución. Después de activar el informe, tenemos que esperar a que aparezca un nuevo mensaje en la fuente que contenga el enlace que queremos cambiar.

Opción 1. En el informe entrante, vemos que el enlace se da utilizando la etiqueta <a>. Por ejemplo:
Great news!
We won the "Fastest Telegram bot!" award.
<a href="https://junctionbot.io">Welcome to our website!<a>

A continuación, en la regla de sustitución, tenemos que utilizar toda esta construcción, recordando sustituir todos los espacios por &nbsp;

El siguiente comando eliminará este enlace del mensaje:
/replace source_channel_reference <a&nbsp;href="https://junctionbot.io">Welcome&nbsp;to&nbsp;our&nbsp;website!</a>

Este comando sustituirá dicho enlace por https://lectumbot.com:
/replace source_channel_reference <a&nbsp;href="https://junctionbot.io">Welcome&nbsp;to&nbsp;our&nbsp;website!</a> <a&nbsp;href="https://lectumbot.com">Welcome&nbsp;to&nbsp;our&nbsp;website!</a>

Ten cuidado, sólo hay 3 espacios en el último comando, entre los argumentos: source, what to change y what to change to.

Opción 2. En el informe entrante vemos que el enlace se especifica sin formato, sólo como texto. Entonces no hay <una etiqueta> alrededor del enlace.
Por ejemplo:
Great news!
We won the "Fastest Telegram bot!" award.
Welcome to our website!

https://junctionbot.io

Entonces, sin ninguna astucia, en la regla de sustitución nos limitamos a especificar un enlace. Para eliminarlo, utilizamos el comando
/replace source_channel_reference https://junctionbot.io

Para sustituirlo por otro enlace:
/replace source_channel_reference https://junctionbot.io https://lectumbot.com

Otras opciones

Si el propio bot añade un enlace a la entrada original, puede eliminarlo con el comando
/setting link none

Ejemplo avanzado

Supongamos que estamos gestionando un canal que acumula señales de negociación gratuitas de otros canales, y queremos llevar todas las señales al mismo formato. Ejemplo de mensaje en el canal de origen:

Buy BTC/USD
Stop-Loss at 11000
Take-Profit 1 at 11500
Take-Profit 2 at 11700
Take-Profit 3 at 12000

Queremos que todos los mensajes tengan el siguiente formato:

BUY
#BTC/USD
SL: 11000 points
TP: 12000 points
Trade at your own risk!

Supongamos que ya hemos configurado una redirección con el comando /new. Supongamos también que utilizamos la Conexión Directa y que el número del canal de origen es &1234567890#1122334455. Puedes encontrar este número con el comando /forwards. Si tiene una cuenta Estándar, utilice un enlace al canal en lugar de &1234567890#1122334455 en todos los ejemplos, por ejemplo, https://t.me/joinchat/AFjgGGiosdgJGgSDG.

Queremos sustituir Buy por un espacio con BUY, nueva línea y #:
/replace &1234567890#1122334455 Buy&nbsp; BUY<br>#
El primer argumento es nuestra fuente &1234567890#1122334455.
La segunda es la que queremos sustituir. Tenga en cuenta que para los comandos /replace y /replacerx debe utilizar &nbsp; en lugar de espacios.
El tercer argumento es un texto que queremos colocar. Una nueva línea es <br>.

A continuación, tenemos una regla de sustitución similar: Stop-Loss at se sustituye por SL:
/replace &1234567890#1122334455 Stop-Loss&nbsp;at SL:

El siguiente comando va a ser más complicado. Queremos eliminar dos líneas Take-Profit 1 y Take-Profit 2, y en su lugar añadirpointsa una anterior SL. Utilicemos el comando /replacerx, que nos permite utilizar expresiones regulares.
/replacerx &1234567890#1122334455 \nTake-Profit&nbsp;1.*\n points<br>
En las expresiones regulares, \n corresponde a una nueva línea, .* corresponde a cualquier combinación de símbolos. De esta manera \nTake-Profit&nbsp;1.*\n corresponde a Take-Profit 1 junto con una nueva línea antes de ella, un precio después de ella (cualquiera que sea el precio) y una nueva línea después del precio. Aquí estamos sustituyendo dos líneas nuevas, así que tenemos que compensarlo añadiendo <br> a la palabra points.

A continuación, sustituimos Take-Profit 2 más un precio y más Take-Profit 3por TP:
/replacerx &1234567890#1122334455 Take-Profit&nbsp;2.*Take-Profit&nbsp;3 TP:

Finalmente añadimos una palabra points y una línea Trade at your own risk! Para ello utilizamos el ajuste after, que puede añadir un texto al final de cada mensaje.
/settingchannel &1234567890#1122334455 after points<br>Trade at your own risk!

Sustitución de emojis premium

Un emoji premium se representa mediante una etiqueta <strong>, por ejemplo:

<strong documentid="123456789">😁</strong>

Puede obtener el código exacto activando el informe de explicación ( Menú → Ajustes de reenvío → Elegir origen y destino → Informe de explicación ) y enviando un emoji al canal de origen.

Conociendo el código exacto del emoji, puedes sustituirlo o añadirlo a tu mensaje con antes/después. Recuerda que para publicar emojis premium, tu regla de sustitución debe cumplir ciertas condiciones.

Edición y traducción asistidas por IA

Puedes describir de forma libre los cambios que quieres introducir en el texto de tus mensajes y dejar que la IA haga el resto del trabajo. De este modo, puedes cambiar algunos elementos o números del texto, o reescribirlo completamente de nuevo (por ejemplo, en otro idioma, con otro estilo, resumiéndolo, analizándolo e infiriéndolo, etc.).

Para saber cómo configurarlo, consulte aquí.

Edición manual, sustitución de fotos, vídeos, etc.

Si desea editar manualmente los mensajes antes de publicarlos en un destino, utilice el modo de revisión.

Descubrir lo que no funciona

Si tiene dificultades para entender por qué no funcionan sus reglas de sustitución, puede intentar el siguiente procedimiento.

Compruebe cuáles son las normas de sustitución vigentes y que son correctas:

/replace source_channel_reference
/replacerx source_channel_reference

Active el modo explicación para su fuente:

¿Dónde está?
Menú → Ajustes de reenvío → Elegir origen y destino → Informe de explicación.

O con el comando

/settingchannel source_channel_reference explain on

Si está activada, recibirá un informe por cada nuevo mensaje procedente de este @canal_de_fuente. El informe contendrá el cuerpo del mensaje sin formato. Así es como el bot ve este mensaje antes de aplicar las reglas de sustitución. Normalmente, esto aclara por qué no se aplica su norma.

Si sigues teniendo dificultades, no dudes en pedir ayuda en el chat de asistencia. Su solicitud debe contener:
1. Un mensaje reenviado desde la fuente
2. Un informe explicativo de este mensaje
3. Un enlace a un proyecto de regex101. com que contenga el cuerpo del mensaje y la regex que intenta corregir
4. Un mensaje reenviado desde el destino
5. Respuesta de un bot a una orden /replacerx source_channel_reference

En regex101. com establece el Flavor a «golang» y establece las banderas «Single line: El punto coincide con la nueva línea» y «Global: No volver después de la primera coincidencia». Esto hará que funcione de la misma manera que un matcher de @junction_bot.

El servicio de asistencia no responderá a las preguntas sobre los sustitutos RegEx que no funcionen sin estos datos.

PREGUNTAS FRECUENTES

[ultimate-faqs include_category=’replace’]