Giter Site home page Giter Site logo

botijon's Introduction

Botijon

El bot está escrito en php. Originalmente fue ideado para ayudar a los usuarios del canal #php-es de la red freenode a localizar información acerca de las funciones del lenguaje PHP, pero teniendo en mente la facilidad de agregar funcionalidad en forma sencilla, para otros fines.

Funcionamiento

Renombra el arhivo config/config-sample.php a config/config.php y editalo con tu configuración (nick, canal, red, etc...)

El bot se corre desde la linea de comandos de la siguiente forma:

/usr/bin/php /ruta/al/bot/bot.php

Para correrlo y que quede corriendo en el fondo (background) sería de la siguiente forma:

nohup /usr/bin/php /ruta/al/bot/bot.php &

Cuando el bot ya está corriendo, las funciones disponibles se utilizan dándole los comandos de la siguiente manera: ![comando]

Por ejemplo: !help

Requerimientos

Debido a que varias funciones del bot requieren del uso de API's, para poder ejecutar el bot de manera correcta se requiere un token de las siguientes cuentas, para ello se requiere una cuenta.

  1. bitly: https://bitly.com => Command{Acortador}.

  2. twitter: https://dev.twitter.com => Command{twitter}.

  3. youtube: https://cloud.google.com/console => Command{Youtube}.

  4. sqlite3: CentOS/Fedora/RHEL. yum -y install sqlite Debian/Ubuntu. apt-get install sqlite

  5. modulo php-pdo: CentOS/Fedora/RHEL. yum -y install php-pdo Debian/Ubuntu apt-get install php-pdo

Configuracion de la BD Sqlite

  1. sqlite3: Dentro de la carpeta config/ se encuentra el archivo dbconfig-sample.php. Renombralo como dbconfig.php y asignale el valor a la variable $dbconfig->db con el nombre del archivo de la base de datos que el bot va a utilizar. (si no existe, el mismo bot creara la bd)

Como agregar funciones

Las funciones del bot, estan en los archivos del directorio commands.

En cada archivo reside una de las funciones del bot.

Dichos archivos contienen una clase php la cual es clase hija de la clase command.

Estos archivos de preferencia deben ser nombrados de acuerdo al nombre de la función que desempeñan.

Puedes tomar como base alguno de los archivos ahi presentes para crear nuevas funciones.

De inicio tienes que modificar las variables $name y $public de acuerdo a tu comando.

La primera variable contiene el nombre del comando, y la segunda indica si el comando es público o no.

Si el comando va a ser disponible solo para el dueño del bot, $public debe ser puesto en false.

Para agregar la funcionalidad solo tienes que actualizar la función process. Dentro de esta función, tu código debe cambiar el contenido de la variable $output$output es en realidad lo que el bot va a enviar al server, ya sea algún comando irc, o algún texto que se va a desplegar en el chat room.

botijon's People

Contributors

elzerver avatar jmmendivil avatar joelconty avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.