Este tipo de fuente de datos se utiliza para mostrar contenido de redes sociales a través de nuestro Middleware con tu sistema de gráficas, lo que te permite mostrar tweets, Facebook posts, Instagram posts, mensajes de Whatsapp, comentarios de Twitch y Youtube en tiempo real.
Al crear este tipo de Middleware Source debes asociarlo al Flow del que tomará los datos.
1. Configuración general
Nombre (1): Como buena práctica recomendamos nombrar el Flow Middleware Source para que tu y tus compañeros de equipo puedan identificarlo para su uso posterior.
Flows seleccionados (2): Cuando creas un Middleware Source de este tipo, debes asignarlo a un Flow del que tomará el contenido. Haz click en Seleccionar y elije los flows listados que desees asociar a tu Data Source.
Idioma (3): cuando un post no incluye información del nombre de usuario, el Flow Middleware Source lo cambia de forma predeterminada a "Nombre de usuario desconocido". Puedes configurar el "Nombre de usuario desconocido" en inglés, español o portugués.
Ocultar usuarios en respuestas (4): Puedes elegir si deseas ocultar el nombre de los usuarios de respuestas en tweets.
2. Integración
Tipo de integración (1): Selecciona cómo deseas integrar los datos según el sistema gráfico que tengas. Si no aparece en la lista, haz clic en otros.
Integración Vizrt
Integración Vizrt
Las integraciones con Vizrt se pueden realizar a través de:
Flowics Middleware + Data Reader, elige otros del menú desplegable.
Pasos de integración (2): Desde aquí podrás acceder al XML, JSON o encontrarás los pasos para realizar la integración de acuerdo a tu sistema de integración de contenido gráfico.
Versión (3): se refiere a la versión del Middleware Source. Recomendamos usar siempre la versión más alta del menú desplegable.
Número de posts (4): Con este elemento puedes seleccionar el número de posts más recientes que deseas mostrar. Puedes elegir entre 5 y 500 posts. Ten en cuenta que los posts más nuevos reemplazarán a las anteriores.
Conectar con Middleware (5): habilítalo, elige tu middleware del menú desplegable y busca la ruta de destino donde el archivo o la base de datos están siendo escritos en tu unidad de destino por el middleware.
3. Integración XML
3.1.1 Ejemplo XML
<feed> <widgetId>29982</widgetId> <title>Feed Data Source KB</title> <posts> <post> <id>1045355566841901056</id> <userName>John Smith</userName> <screenName>johnsmith</screenName> <url>https://pbs.twimg.com/profile_images/767771568575512576/kp-8wCsF.jpg</url> <date>1538067163000</date> <verified>true</verified> <publisher>twitter</publisher> <text> How Social Media can help your Customer Journey - Download for Free http://hubs.ly/H038rYB0 #ebook #customerjourney</text> <geolocation> <latitude>40.745592</latitude> <longitude>-73.987857</longitude> </geolocation> <mainMediaURL>http://pbs.twimg.com/media/B89jMqKIgAAM2Fu.jpg:large</mainMediaURL> <localMainMediaPath>/path/to/downloaded/media/image.jpg</localMainMediaPath> <mainMediaType>image/jpeg</mainMediaType> <mainVideoURL>http://pbs.twimg.com/media/B89jMqKIgAAM2Fu.mp4</mainVideoURL> <localMainVideoPath>/path/to/downloaded/media/video.mp4</localMainVideoPath> <mainVideoType>mp4</mainVideoType> <originalUserName>Flowics</originalUserName> <originalScreenName>flowics</originalScreenName> <originalUrl>https://pbs.twimg.com/profile_images/1232/maoNYpMK_normal.jpeg</originalUrl> <originalDate>1472501062001</originalDate> <originalVerified>true</originalVerified> <displayUserName>John Smith</displayUserName> <displayScreenName>johnsmith</displayScreenName> <displayUrl>https://pbs.twimg.com/profile_images/767771568575512576/kp-8wCsF.jpg</displayUrl> <localAvatarPath>/path/to/downloaded/media/avatar-kp-8wCsF.jpg</localAvatarPath> <displayDate>1538067163000</displayDate> <displayVerified>true</displayVerified> <curationDate>1538077240217</curationDate> </post> ... </posts> </feed>
3.1.2 Descripción de los campos:
Ten en cuenta que algunos nombres de campo cambian cuando se utiliza el tipo de integración Avid Maestro.
Campo | Descripción | Field (integración de Avid Maestro) |
feed.widgetId | Id del widget. | feed.widgetId |
feed.title | Título del feed, según lo configurado en el widget. | feed.title |
feed.posts.post.id | El Id del post dentro de la red social (por ejemplo, la identificación del Tweet). | feed.posts.post.idX |
feed.posts.post.userName | Nombre de usuario completo dentro de la red social. | feed.posts.post.userNameX |
feed.posts.post.screenName | Nombre de usuario. | feed.posts.post.screenNameX |
feed.posts.post.url | URL del avatar del usuario que realizó el post. | feed.posts.post.urlX |
feed.posts.post.date | Fecha en la que se publicó el post (pasaron milisegundos desde la época). | feed.posts.post.dateX |
feed.posts.post.verified | Booleano que indica si el usuario que publicó el post está verificado. | feed .posts.post.verifiedX |
feed.posts.post.publisher | Indica la red social en la que se publicó el post (por ejemplo, Twitter , Facebook , Instagram ). | feed .posts.post.publisher |
feed.posts.post.text | Texto del post. | feed.posts.post.text |
feed.posts.post.geolocation.latitude | Si está presente, indica la latitud en la que se publicó el post. | feed .posts.post.geolocation.latitude |
feed.posts.post.geolocation.longitude | Si está presente, indica la longitud en la que se publicó el post. | feed .posts.post.geolocation.longitude |
feed.posts.post.mainMediaUrl | URL de la imagen publicada por el usuario. Puede estar vacío. | feed .posts.post.mainMediaUrl |
feed.posts.post.mainMediaType | Tipo de imagen de la URL de la media. Puede estar vacío. | feed .posts.post.mainMediaType |
feed.posts.post.localMainMediaPath | Ruta completa al video descargado tomado de 'mainVideoUrl'. Puede estar vacío. | feed .posts.post.localMainMediaPath |
feed.posts.post.mainVideoUrl | URL del video posteado por el usuario. Puede estar vacío. | feed .posts.post.mainVideoUrl |
feed.posts.post.mainVideoType | Tipo de video de la URL del video. Puede estar vacío. | feed .posts.post.mainVideoType |
feed.posts.post.localMainVideoPath | Ruta completa al video descargado tomado de mainVideoUrl. Puede estar vacío. | feed .posts.post.localMainVideoPath |
feed.posts.post.originalUserName | En el caso de los retweets, el nombre completo del usuario cuyo Tweet fue retuiteado. | feed .posts.post.originalUserName |
feed.posts.post.originalScreenName | En el caso de los retweets, el nombre del usuario cuyo Tweet fue retuiteado. | feed .posts.post.originalScreenName |
feed.posts.post.originalUrl | En el caso de los retweets, URL del avatar del usuario cuyo Tweet fue retuiteado. | feed .posts.post.originalUrl |
feed.posts.post.originalDate | En el caso de los retweets, hora a la que se retuiteó el tweet publicado. | feed .posts.post.originalDate |
feed.posts.post.originalVerified | En el caso de los retweets, booleano que indica si el usuario cuyo Tweet fue retuiteado está verificado. | feed .posts.post.originalVerified |
Los siguientes campos ayudan con el cumplimiento adecuado de las pautas para ver contenidos. Por ejemplo, para Twitter estos campos contendrán la información del tweet y del usuario original, pudiendo mostrar correctamente tanto los tweets como los RTS.
feed.posts.post.displayUserName | Nombre completo del usuario de acuerdo a la Red Social en la que debería mostrarse. | feed .posts.post.displayUserName |
feed.posts.post.displayScreenName | Nombre de usuario que se mostrará. | feed .posts.post.displayScreenName |
feed.posts.post.displayUrl | URL del avatar del usuario que se debe mostrar. | feed .posts.post.displayUrl |
feed.posts.post.localAvatarPath | Ruta completa a la imagen de avatar descargada tomada de displayUrl. | feed .posts.post.localAvatarPath |
feed.posts.post.displayDate | Fecha del post que debe mostrarse (milisegundos desde la época). | feed .posts.post.displayDate |
feed.posts.post.displayVerified | Indicador booleano que indica si el usuario que debe mostrarse está verificado. | feed .posts.post.displayVerified |
4. Integración de bases de datos
Cuando se utiliza este tipo de integración, se crea una tabla de base de datos con las siguientes columnas. El tipo de columnas es textual. Para el tipo específico, verifica la configuración del middleware, pero normalmente son texto para MySQL o PostgreSQL y ntext para Microsoft SQL Server.
Columna | Descripción | Columna (integración de Avid Maestro) |
widgetId | Id del widget (mismo valor para cada fila). | widgetId |
title | Título del ticker, tal como está configurado en el widget (mismo valor para cada fila). | title |
id | Id del post dentro de la red social (por ejemplo, id del Tweet). | idX |
userName | Nombre de usuario completo dentro de la red social. | userNameX |
screenName | Nombre de usuario. | screenNameX |
text | Texto del post. | text |
url | URL del avatar del usuario que realizó el post. | urlX |
date | Fecha en la que se publicó el post (pasaron milisegundos desde la época). | dateX |
verified | Booleano que indica si el usuario que publicó el post está verificado. | verifiedX |
publisher | Indica la red social en la que se publicó el post (por ejemplo, twitter, facebook, instagram). | publisher |
geolocation_latitude | Si está presente, indica la latitud en la que se publicó el post. | geolocation_latitude |
geolocation_longitude | Si está presente, indica la longitud en la que se publicó el post. | geolocation_longitude |
mainMediaUrl | URL de la imagen publicada por el usuario. Puede estar vacío. | mainMediaUrl |
localMainMediaPath | Ruta completa al video descargado tomado de mainVideoUrl. Puede estar vacío. | localMainMediaPath |
mainMediaType | Tipo de imagen de la URL de la media. Puede estar vacío. | mainMediaType |
mainVideoUrl | URL del video publicado por el usuario. Puede estar vacío. | mainVideoUrl |
mainVideoType | Tipo de video de la URL del video. Puede estar vacío. | mainVideoType |
localMainVideoPath | Ruta completa al video descargado tomado de mainVideoUrl. Puede estar vacío. | localMainVideoPath |
originalUserName | En el caso de los retweets, el nombre completo del usuario cuyo Tweet fue retuiteado. | originalUserName |
originalScreenName | En el caso de los retweets, el nombre del usuario cuyo Tweet fue retuiteado. | originalScreenName |
originalUrl | En el caso de los retweets, URL del avatar del usuario cuyo Tweet fue retuiteado. | originalUrl |
originalDate | En el caso de los retweets, hora a la que se retuiteó el tweet publicado. | originalDate |
originalVerified | En el caso de los retweets, booleano que indica si el usuario cuyo Tweet fue retuiteado está verificado. | originalVerified |
Los siguientes campos ayudan con el cumplimiento adecuado de las pautas para ver contenidos. Por ejemplo, para Twitter estos campos contendrán la información del tweet y del usuario original y pueden mostrar correctamente tanto tweets como RTS.
displayUserName | Nombre completo del usuario de acuerdo a la Red Social en la que debería mostrarse. | displayUserName |
displayScreenName | Nombre de usuario que se mostrará. | displayScreenName |
displayUrl | URL del avatar del usuario que se debe mostrar. | displayUrl |
localAvatarPath | Ruta completa a la imagen de avatar descargada tomada de displayUrl. | localAvatarPath |
displayDate | Fecha del post que debe mostrarse (milisegundos desde la época). | displayDate |
displayVerified | Indicador booleano que indica si el usuario que debe mostrarse está verificado. | displayVerified |
curationdate | Fecha de aceptación del post (milisegundos desde la época). | curationdate |
5. Integración de archivos JSON
5.1.1 Ejemplo JSON
{ " widgetId " : 34311 , " title " : " Feed JSON " , " publicaciones " : [ { " id " : " 1314225358443610112 " , " userName " : " 📍Empleo 24h📍 " , " screenName " : " emplearte2020 " , " text " : " Se busca fisioterapeuta en Sant Feliú de Llobregat 🗨 #empleo #trabajo #vacante \ n 👉🏻 ¡Accede a esta y otras ofertas de trabajo en tu ciudad! 📍 ¡Si ya tienes, haz RT para ayudar compartiendo esta oferta laboral! 👀 #barcelona " , " url " : " https://pbs.twimg.com/profile_images/1313834923300659202/v7EVtKWf_reasonably_small.jpg " , " fecha " : 1602170717236 , " verificado " : falso , " editor " : " twitter " , " geolocalización " : nulo , " mainMediaUrl " : nulo , " mainMediaType " : nulo , " mainVideoURL " : nulo , " mainVideoType " : nulo , " originalUserName " : " " , " originalScreenName " : " " , " originalUrl " : " " , " originalDate " : " " , " originalVerified " : " " , " displayUserName " : " 📍Empleo 24h📍 " , " displayScreenName " : " emplearte2020 " , " displayUrl " : " https://pbs.twimg.com/profile_images/1313834923300659202/v7EVtKWf_reasonably_small.jpg " , " displayDate " : 1602170717236 , " displayVerified " : falso , " curationDate " : 1602170727772 , " localMainVideoPath " : " " , " localAvatarPath " : " C: \\ Prueba de Midlleware \\ media \\ https \\ pbs.twimg.com \\ d2cbda7fdfe2a93df786c1cc9799499a75fa3918.jpg " } , { " id " : " 1314225317981061120 " , " userName " : " Pau Sagrera " , " screenName " : " pausagrera " , " text " : " ¡Ya queda menos para el finde! 🎉Os contamos nuestras 3 rutas favoritas para disfrutar en moto ... ¡y los mejores sitios donde parar a comer! 😜 \ n ¿Cuál es tu ruta favorita en moto? ¡ Te leemos! 👀 \ n \ n \ n #mapit #gpstracking #IoT #barcelona #africatwin #motorbike " , " url " : " https://pbs.twimg.com/profile_images/1185144052259414016/Ykp7wCij_reasonably_small.jpg " , " fecha " : 1602170707589 , " verificado " : falso , " editor " : " twitter " , " geolocalización " : nulo , " mainMediaUrl " : " http://pbs.twimg.com/media/Ej0Kwc4XcAAlOWD.jpg:medium " , " mainMediaType " : " imagen / jpeg " , " mainVideoURL " : nulo , " mainVideoType " : nulo , " originalUserName " : " Mapit IoT " , " originalScreenName " : " mapitme " , " originalUrl " : " https://pbs.twimg.com/profile_images/1153220884984926210/zmz2n0SJ_reasonably_small.jpg " , " originalDate " : 1602169238000 , " originalVerified " : falso , " displayUserName " : " Mapit IoT " , " displayScreenName " : " mapitme " , " displayUrl " : " https://pbs.twimg.com/profile_images/1153220884984926210/zmz2n0SJ_reasonably_small.jpg " , " displayDate " : 1602169238000 , " displayVerified " : falso , " curationDate " : 1602170718201 , " localMainVideoPath " : " " , " localAvatarPath " : " C: \\ Prueba de Midlleware \\ media \\ https \\ pbs.twimg.com \\ a07306cd10a5e339a74631aebb1957a687f0645c.jpg " } , ] }
5.1.2 Descripción de los campos
Campo | Descripción |
widgetId | Id del widget |
title | Título del ticker, según lo configurado en el widget. |
posts.id | Id de los posts dentro de la red social (por ejemplo, id del Tweet). |
posts.userName | Nombre de usuario completo dentro de la red social. |
posts.screenName | Nombre de usuario |
posts.text | Texto del post. |
posts.url | URL del avatar del usuario que realizó el post. |
posts.date | Fecha en la que se publicó el post (pasaron milisegundos desde la época). |
posts.verified | Booleano que indica si el usuario que publicó el post está verificado. |
posts.publisher | Indica la red social en la que se publicó el post (por ejemplo, twitter, facebook, instagram). |
posts.geolocation | Si está presente, indica la latitud y longitud en la que se publicó el post. |
posts.mainMediaUrl | URL de la imagen publicada por el usuario. Puede estar vacío. |
posts.mainMediaType | Tipo de imagen de la URL de la media. Puede estar vacío. |
posts.mainVideoUrl | URL del video publicado por el usuario. Puede estar vacío. |
posts.mainVideoType | Tipo de video de la URL del video. Puede estar vacío. |
posts.originalUserName | En el caso de los retweets, nombre completo del usuario cuyo Tweet fue retuiteado. |
posts.originalScreenName | En el caso de los retweets, nombre del usuario cuyo Tweet fue retuiteado. |
posts.originalUrl | En el caso de los retweets, url del avatar del usuario cuyo Tweet fue retuiteado. |
posts.originalDate | En el caso de los retweets, hora a la que se retuiteó el tweet publicado. |
posts.originalUserName | En el caso de los retweets, nombre completo del usuario cuyo Tweet fue retuiteado. |
posts.originalVerified | En el caso de los retweets, booleano que indica si el usuario cuyo Tweet fue retuiteado está verificado. |
posts.localMainMediaPath | Ruta completa a la imagen descargada tomada de 'mainMediaUrl'. Puede estar vacío. |
posts.localMainVideoPath | Ruta completa al video descargado tomado de 'mainVideoUrl'. Puede estar vacío. |
Los siguientes campos ayudan con el cumplimiento adecuado de las pautas para ver contenidos. Por ejemplo, para Twitter estos campos contendrán la información del tweet y del usuario original, pudiendo mostrar correctamente tanto los tweets como los RTS.
posts.displayUserName | Nombre completo del usuario de acuerdo a la Red Social en la que debería mostrarse. |
posts.displayScreenName | Nombre de usuario que se mostrará. |
posts.displayUrl | URL del avatar del usuario que se debe mostrar. |
posts.displayDate | Fecha del post que debe mostrarse (milisegundos desde la época). |
posts.displayVerified | Indicador booleano que indica si el usuario que debe mostrarse está verificado. |
posts.localAvatarPath | Ruta completa a la imagen de avatar descargada tomada de 'displayUrl'. |