Como hacer que un bot mande mensaje automaticamente con discordjs nodejs y phantomjs

Tengo un bot que hace scrapping y cuando encuentra una coincidencia entre unas palabras claves y una lista que me arroja el scrapping me debería lanzar un mensaje automáticamente al discord, lo que ocurre es que para que ese mensaje ocurra alguien debe estar hablando en el servidor de discord, quisiera saber como hacer para que esto pase sin que nadie este hablando.

Mi código:

var keyword = ['Cosmetics / Skin Care - Classification Validation - Feature Mini Group 2', 'Morphological Annotation', 'French News: Is This Person Involved In A Crime Or Sanctioned?', 'Label Roads( With Sidewalks) In Images'];     for(let i=0; i<JobsListing.length; i++){     for(let j=0; j<keyword.length; j++){         if(JobsListing[i][1] === keyword[j]){                       client.on('message', (message)=>{               if(message.author.bot === false) {                 // Do something if message doesn't come from a bot.                 message.channel.send(`$  {JobsListing[i][0]} $  {JobsListing[i][1]} Paga $  {JobsListing[i][3]} (Ysense) Tareas: $  {JobsListing[i][5]}`);               }              });         }     }    } 

En suposición debería mandarse el mensaje cuando se encuentra alguna coincidencia pero no es así, para que funcione tiene que haber alguien escribiendo en el chat

¿Cómo hacer una categorización en Laravel 5.5?

Estoy haciendo un sistema en Laravel 5.5, pero no sé que código debo escribir en el fichero de migración para que me genere las tablas “publicadores” y “sensores” manteniendo ese tipo de relación que se puede observar en la siguiente imagen:

M.E.R

Nota: Ignoren las flechas con “N” que están alrededor, ya que son relaciones de tablas que están al lado, pero que he recortado en la imagen.

No tengo claro como sería el alta, quizás un formulario llamado ALTA DE PUBLICADORES, en donde se colocan los datos estado, vfirmware, nombre y fechaens y luego una lista desplegable con los distintos tipos que hay (en primera instancia solo exisitirá sensores) y si se selecciona sensores que pida fechabat.

Probablemente no entiendan nada, porque no sé expresarme correctamente, así que añado lo siguiente: Tengo que dar de altas publicadores, pero habrán varios tipos y cada uno debe guardar una información u otra, pero entre ellos comparten información ¿cómo hago esto en Laravel 5.5?

¿Cómo colocar un filtro en un listado de Laravel 5.5?

En mi sistema tengo varios listados a los que debo añadirles filtros. Estos filtros serán una lista desplegable.

A modo de ejemplo, tengo un listado de usuarios del sistema y un filtro por tipo de usuarios, con los siguientes valores: todos, administradores, usuarios; y dependiendo lo que se seleccione el listado debe actualizarse.

He visto un sin fin de vídeos en youtube y leído documentación y no me queda claro como hacer para lograr crear estos filtros a través de listas desplegables.

¿Podrías indicarme una fuente en donde se explique de forma sencilla como realizar esto en Laravel 5.5 o escribirme un pequeño ejemplo?

Como imprimir la palabra que esta a un lado de una palabra en especifico de un richtextbox a otro? c#

Soy nuevo en este mundo de C# y estoy encontrando muchos problemas con una funcion que quiero realizar.

Lo que deseo conseguir es, por ejemplo: en un richtextbox tengo la oracion (Deporte: “Natacion”) lo que busco es que en otro richtextbox me imprima solamente la palabra que esta adentro de las comillas (en este caso “Natacion”) mediante un boton.

Me percate que usar Regex era la mejor manera de separar palabras por patrones y demas…

Pero tengo un problema, y es que cada vez que ejecuto la funcion por el boton, me lee solo la primera coincidencia, es decir:

En el richtextbox 1 tengo: Deporte: “Natacion” \nDeporte: “Ciclismo” \nDeporte: “Atletismo”. (siempre una oracion bajo la otra)

En el richtextbox 2 me aparece: “Natacion”.

Cuando en realidad necesito que me aparezcan todas las palabras que encuentra adentro de las comillas.

Este es el codigo de la funcion:

private void button1_Click(object sender, EventArgs e)         {             Regex regex = new Regex("\"[^\"]*\"");             Match match = regex.Match(GetRichTextBox().Text);             if (match.Success)             {                 cmSalida.Text = match.Value;             }         } 

En donde cmSalida es el richtextbox 2 donde quiero que aprezcan las palabras entre comillas y GetRichTextBox() es el metodo que utilizo para crear el richtextbox 1 donde siempre estara el texto inicial.

¿Como unir diferentes clases para dar un mensaje?

public class Principal {  public static void main (String [] args) {  String cadena;  System.out.println ("Hola");  }  }     public class Sujeto  {  public static void main (String [] args) {  String nombre = "Javier";  }      }      public class Saludar {  public static void main (String [] args) {   System.out.println ("¿Como estas?");   }   } 

Estoy en pleno aprendizaje de Java y quisiera saber como unir estas tres clases para dar un solo mensaje, tengo entendido que debería hacerlo en la clase Principal, y después de eso en el System.out.println se deben concatenar con el signo +.

¿Es necesario declarar algo mas dentro del código? Cabe aclarar que estoy empezando a usar jdk y a trabajar con bloc de notas. Gracias

¿como construir un carrusel responsivo en html y css?

Estoy construyendo un sitio con un carrusel y he logrado que funcione casi todo, pero no logro hacer las imágenes responsivas a diferentes aberturas del navegador web, me explico, si se abre maximizado se ven las imágenes bien, pero no logro hacer que se vea solo la parte del carrusel, si se abre a un tamaño parcial, las imágenes no se adaptan al tamaño de la página y tampoco logro hacer que se vea solo la parte del carrusel.

Literalmente estoy atascado desde hace varios días, estoy empezando en la programación front-end y no se que mas puedo hacer.

Les dejo mi código e imágenes.

index.html

<!DOCTYPE html> <html> <head>     <meta charset="UTF-8">     <meta name="viewport" content="width=device-width, initial-scale=1.0">     <meta http-equiv="X-UA-Compatible" content="ie=edge">     <link rel="stylesheet" href="style.css">     <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css">     <title>Rey</title> </head> <body>  <header class="main-header">      <div class="header">         <p>Scroll down to see the sticky effect.</p>      </div>      <ul>         <li><a class="active" href="#home">Home</a></li>         <li><a href="#news">News</a></li>         <li><a href="#contact">Contact</a></li>     </ul>      <p>Change image every 2 seconds:</p>      <div class="slideshow-container">          <div class="mySlides fade">             <img  src='img1.jpg' style='width: 100%;' alt="sally lightfoot crab"/>             <div class="text">Sally Lightfoot Crab</div>         </div>          <div class="mySlides fade">             <img  src='img2.jpg' style='width: 100%;' alt="fighting nazca boobies"/>             <div class="text">A scuffle between two Nazca Boobies</div>         </div>          <div class="mySlides fade">             <img  src='img3.jpg' style='width: 100%;' alt="otovalo waterfall"/>             <div class="text">A waterfall discovered on a hike in Otovalo</div>         </div>          <a class="prev" onclick='plusSlides(-1)'>&#10094;</a>         <a class="next" onclick='plusSlides(1)'>&#10095;</a>     </div>     <br/>     <div style='text-align: center;'>         <span class="dot" onclick='currentSlide(1)'></span>         <span class="dot" onclick='currentSlide(2)'></span>         <span class="dot" onclick='currentSlide(3)'></span>     </div>     <br>     <center>         <div class="bounce">             <a href="#section2" >                 <i class="fa fa-angle-double-down" style="font-size:48px;color:blue"></i>             </a>         </div>     </center>  </header>  </div> <div class="main" id="section2"> </div>  <dl>     <dt>empieza 1</dt> <dd>     <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Dolore eius obcaecati asperiores sunt delectus, minima nostrum atque, officia dicta voluptatem rerum omnis beatae blanditiis debitis! Illo unde, placeat voluptas aliquam?</p> <h1>termina</h1> </dd>     <dd>Apple</dd>     <dd>Ant</dd>     <dd>Altimeter</dd>     <dd>Airplane</dd>     <dt>B</dt>     <dd>Bird</dd>     <dd>Buzzard</dd>     <dd>Bee</dd>     <dd>Banana</dd>     <dd>Beanstalk</dd>     <dt>C</dt>     <dd>Calculator</dd>     <dd>Cane</dd>     <dd>Camera</dd>     <dd>Camel</dd>     <dt>D</dt>     <dd>Duck</dd>     <dd>Dime</dd>     <dd>Dipstick</dd>     <dd>Drone</dd>     <dt>E</dt>     <dd>Egg</dd>     <dd>Elephant</dd>     <dd>Egret   <h1>empieza 1</h1><br> <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Dolore eius obcaecati asperiores sunt delectus, minima nostrum atque, officia dicta voluptatem rerum omnis beatae blanditiis debitis! Illo unde, placeat voluptas aliquam?</p> <h1>termina</h1>  <h1>empieza 2</h1><br> <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Dolore eius obcaecati asperiores sunt delectus, minima nostrum atque, officia dicta voluptatem rerum omnis beatae blanditiis debitis! Illo unde, placeat voluptas aliquam?</p> <h1>termina</h1>  <h1>empieza 3</h1><br> <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Dolore eius obcaecati asperiores sunt delectus, minima nostrum atque, officia dicta voluptatem rerum omnis beatae blanditiis debitis! Illo unde, placeat voluptas aliquam?</p> <h1>termina</h1>   <h1>empieza 4</h1><br> <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Dolore eius obcaecati asperiores sunt delectus, minima nostrum atque, officia dicta voluptatem rerum omnis beatae blanditiis debitis! Illo unde, placeat voluptas aliquam?</p> <h1>termina</h1>   <h1>empieza 5</h1><br> <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Dolore eius obcaecati asperiores sunt delectus, minima nostrum atque, officia dicta voluptatem rerum omnis beatae blanditiis debitis! Illo unde, placeat voluptas aliquam?</p> <h1>termina</h1>   </dd> </dl> <button onclick="topFunction()" id="myBtn" title="Go to top">Top</button>      <script src="app.js"></script> </body> </html> 

style.css

.slideshow-container {         max-width: auto;         height: auto;         position: relative;         margin: auto }  .mySlides {     height: auto;     /*height: 400px;*/     border: solid 1px black;  }  .prev, .next {         cursor: pointer;         position: absolute;         top: 50%;         width: auto;         margin-top: -22px;         padding: 16px;         color: #222428;         font-weight: bold;         font-size: 30px;         transition: .6s ease;         border-radius: 0 3px 3px 0 }  .next {         right: 0;         border-radius: 3px 3px 3px 3px }  .prev {         left: 0;         border-radius: 3px 3px 3px 3px }  .prev:hover, .next:hover {         color: #f2f2f2;         background-color: rgba(0, 0, 0, 0.8) }  .text {         color: #f2f2f2;         font-size: 15px;         padding-top: 12px;     padding-bottom: 12px;         position: absolute;         bottom: 0;         width: 100%;         text-align: center;         background-color: #222428 }  .numbertext {         color: #f2f2f2;         font-size: 12px;         padding: 8px 12px;         position: absolute;         top: 0 }  .dot {         cursor: pointer;         height: 15px;         width: 15px;         margin: 0 2px;         background-color: #bbb;         border-radius: 50%;         display: inline-block;         transition: background-color .6s ease }  .active, .dot:hover {         background-color: #717171 }  img { border: 0; }  /*----------------------------------*/ .bounce {     position: absolute;     left: 50% ;     width: 60px;     opacity: 0.7;     height: 60px ;     margin-left:-30px;     -webkit-border-radius:50%;     -moz-border-radius:50%;     -ms-border-radius:50%;     border-radius:50%;     animation: bounce 3s infinite;     -webkit-animation: bounce 3s infinite;     -moz-animation: bounce 3s infinite;     -o-animation: bounce 3s infinite; }  @-webkit-keyframes bounce {     0%, 20%, 50%, 80%, 100% {-webkit-transform: translateY(0);}      40% {-webkit-transform: translateY(-25px);}     60% {-webkit-transform: translateY(-15px);} }  @-moz-keyframes bounce {     0%, 20%, 50%, 80%, 100% {-moz-transform: translateY(0);}     40% {-moz-transform: translateY(-25px);}     60% {-moz-transform: translateY(-15px);} }  @-o-keyframes bounce {     0%, 20%, 50%, 80%, 100% {-o-transform: translateY(0);}     40% {-o-transform: translateY(-25px);}     60% {-o-transform: translateY(-15px);} } @keyframes bounce {     0%, 20%, 50%, 80%, 100% {transform: translateY(0);}     40% {transform: translateY(-25px);}     60% {transform: translateY(-15px);} }  /*----------------------------------*/  dl {     margin: 0; }  dt {   background-color: black;   color: white;   padding: 13px;   position: sticky;     z-index: 20;   top: 0px;     font-size: 18px;   left: 0; }  /*----------------------------------*/ #myBtn {     display: none;     position: fixed;     bottom: 20px;     right: 10vh; /*  justify-content: center;     margin-left: 1140px;   overflow: auto;     align-items: center; */  z-index: 99;     font-size: 18px;     border: none;     outline: none;     background-color: blue;     opacity: 0.5;     color: white;     cursor: pointer;     padding: 15px;     border-radius: 4px; }  #myBtn:hover {     background-color: #555; } /*----------------------------------*/ ul {     list-style-type: none;     margin: 0;     padding: 0;     overflow: hidden;     background-color: #333;     position: -webkit-sticky; /* Safari */     position: sticky;     top: 0;     z-index: 10; }  li {     float: left; }  li a {     display: block;     color: white;     text-align: center;     padding: 14px 16px;     text-decoration: none; }  li a:hover {     background-color: #111; }  .active {     background-color: #4CAF50; }  html {     scroll-behavior: smooth; }  body {     width: 1200px;     margin: auto;     padding-left: 20px;     padding-right: 20px; } 

app.js

var slideIndex = 1;  var myTimer;  window.addEventListener("load",function() {         showSlides(slideIndex);         myTimer = setInterval(function(){plusSlides(1)}, 4000); })    // NEXT AND PREVIOUS CONTROL function plusSlides(n){     clearInterval(myTimer);     if (n < 0){         showSlides(slideIndex -= 1);     } else {      showSlides(slideIndex += 1);      }     if (n === -1){         myTimer = setInterval(function(){plusSlides(n + 2)}, 4000);     } else {         myTimer = setInterval(function(){plusSlides(n + 1)}, 4000);     } }  //Controls the current slide and resets interval if needed function currentSlide(n){     clearInterval(myTimer);     myTimer = setInterval(function(){plusSlides(n + 1)}, 4000);     showSlides(slideIndex = n); }  function showSlides(n){     var i;     var slides = document.getElementsByClassName("mySlides");     var dots = document.getElementsByClassName("dot");     if (n > slides.length) {slideIndex = 1}     if (n < 1) {slideIndex = slides.length}     for (i = 0; i < slides.length; i++) {             slides[i].style.display = "none";     }     for (i = 0; i < dots.length; i++) {             dots[i].className = dots[i].className.replace(" active", "");     }     slides[slideIndex-1].style.display = "block";     dots[slideIndex-1].className += " active"; }  // When the user scrolls down 20px from the top of the document, show the button window.onscroll = function() {scrollFunction()};  function scrollFunction() {     if (document.body.scrollTop > 20 || document.documentElement.scrollTop > 20) {         document.getElementById("myBtn").style.display = "block";     } else {         document.getElementById("myBtn").style.display = "none";     } }  // When the user clicks on the button, scroll to the top of the document function topFunction() {     document.body.scrollTop = 0;     document.documentElement.scrollTop = 0; } 

introducir la descripción de la imagen aquí introducir la descripción de la imagen aquí introducir la descripción de la imagen aquí

Pasar el resultado de una funcion como un array a otra funcion

Soy novato en esto y necesito algo de ayuda.

Estoy trabajando con PgRouting, concretamente con las funciones pgr_tsp y pgr y pgr_dijkstraVia.

Con la primera calculo el coste optimo entre el nodo de salida y el resto de nodos para la ruta:

SELECT seq, node, cost, agg_cost into prueba5 FROM pgr_TSP( $ $ SELECT * FROM pgr_dijkstraCostMatrix( ‘SELECT id, source, target, cost FROM bilbo2’, ARRAY[2,9,5,7], false ) $ $ , 9::BIGINT);

Con la segunda función “pinto la ruta”

SELECT geom into via6 FROM pgr_dijkstraVia( ‘SELECT id, source, target, cost, reverse_cost FROM bilbo2 order by id’, ARRAY[(select array(select node from prueba5))]; )as pt JOIN bilbo2 rd ON pt.edge = rd.id;

Mi problema es que cuando ejecuto esta segunda parte, me devuelve lo siguiente:

ERROR: One dimension expected SQL state: XX000

¿Alguien sabe cómo alimentar esta última funcion con el resultado de la primera en forma de array?

Gracias