All Projects → dtinth → automatron

dtinth / automatron

Licence: other
Personal LINE bot to automate various tasks. Home automation, expense tracking, transaction monitoring

Programming Languages

typescript
32286 projects
javascript
184084 projects - #8 most used programming language
Svelte
593 projects
shell
77523 projects
HTML
75241 projects

Projects that are alternatives of or similar to automatron

jovo-starter-web-chatwidget
Fully customizable open source chat widget that can be added to any website.
Stars: ✭ 20 (-85.61%)
Mutual labels:  chatbot
hellsnakebot
🤖About A fully customizable bot built with discord.js
Stars: ✭ 14 (-89.93%)
Mutual labels:  chatbot
tweetbot.sh
A bot program for Twitter, written in simple Bash script
Stars: ✭ 29 (-79.14%)
Mutual labels:  chatbot
tf2-transformer-chatbot
Transformer Chatbot in TensorFlow 2 with TPU support.
Stars: ✭ 94 (-32.37%)
Mutual labels:  chatbot
Xpersona
XPersona: Evaluating Multilingual Personalized Chatbot
Stars: ✭ 54 (-61.15%)
Mutual labels:  chatbot
brain
Brain is a system to model, create and manage the knowledge base of chatbots based on AIML technology.
Stars: ✭ 18 (-87.05%)
Mutual labels:  chatbot
html-to-svg
svg screenshot of web pages (saves the given URL to an SVG file)
Stars: ✭ 110 (-20.86%)
Mutual labels:  cloud-run
turing
✨ 🧬 Turing AI - Semantic Navigation, Chatbot using Search Engine and Many NLP Vendors.
Stars: ✭ 30 (-78.42%)
Mutual labels:  chatbot
nocodb
🔥 🔥 🔥 Open Source Airtable Alternative - turns any MySQL, Postgres, SQLite into a Spreadsheet with REST APIs.
Stars: ✭ 28,894 (+20687.05%)
Mutual labels:  airtable
pocketcasts-stats
This project let's you fetch your Pocket Casts statistics and put them into Airtable with about 80 lines of code.
Stars: ✭ 12 (-91.37%)
Mutual labels:  airtable
instachatbot
Simple framework for building Instagram chat bots with menu driven interface
Stars: ✭ 17 (-87.77%)
Mutual labels:  chatbot
bot-dialogflow
A BotUI web app connected to DialogFlow
Stars: ✭ 47 (-66.19%)
Mutual labels:  chatbot
botter
🤖 Build Amazing Telegram Bots with PHP
Stars: ✭ 24 (-82.73%)
Mutual labels:  chatbot
rasa-agent-bot-demo
A sample Implementation of agent bot APIs in chatwoot using rasa
Stars: ✭ 21 (-84.89%)
Mutual labels:  chatbot
twitch-bot-tutorial
Official repo of the "Building a Python Twitch bot (2020)" series.
Stars: ✭ 21 (-84.89%)
Mutual labels:  chatbot
How-To-Build-A-Chatbot
Learn to build a facebook chatbot using Python and Flask
Stars: ✭ 15 (-89.21%)
Mutual labels:  chatbot
go-aida
[DEPRECATED] wechat robot based on wechat-go(wechat web api)
Stars: ✭ 71 (-48.92%)
Mutual labels:  chatbot
line-bot-sdk-php-tiny
A simple SDK for the LINE Messaging API with PHP.
Stars: ✭ 25 (-82.01%)
Mutual labels:  line-bot
vue-airtable-demo
Sample Vue.js / Webpack project with Airtable component.
Stars: ✭ 22 (-84.17%)
Mutual labels:  airtable
contextualSpellCheck
✔️Contextual word checker for better suggestions
Stars: ✭ 274 (+97.12%)
Mutual labels:  chatbot

automatron

This is my personal LINE bot that helps me automate various tasks of everyday life, such as home control (air conditioner, lights and plugs) and expense tracking (record how much I spend each day). See below for a feature tour.

I recommend every developer to try creating their own personal assistant chat bot. It’s a great way to practice coding and improve problem solving skills. And it helps make life more convenient!

It is written in TypeScript and runs on Google Cloud Run on top of evalaas JavaScript-execution platform.

features

home automation

home automation

I have a Raspberry Pi set up which can control lights, air conditioner, and smart plugs. It receives commands via Google Cloud IoT Core, performs the action, and then reports back to automatron via its API.

expense tracking

expense tracking

Simple expense tracking by typing in the amount + category. Example: 50f means ฿50 for food. Data is saved in Airtable.

On mobile, tapping the bubble’s body (containing the amount) will take me to the created Airtable record. This allows me to easily edit or add remarks to the record. Tapping the bubble’s footer (containing the stats) will take me to Airtable view, which lets me see all the recorded data.

transaction aggregation

transaction_aggregation

I set up IFTTT to read SMS messages and send it to automatron. It then uses transaction-parser-th to parse SMS message and extract transaction information. It is then sent to me as a flex message.

quick_replies

In mobile phone, quick reply buttons lets me quickly turn a transaction into an expense record by simply tapping on the category.

auto_expense

Certain kinds of transactions can be automatically be turned into an expense, for example, when I take BTS Skytrain using Rabbit LINE Pay card. Having many features in one bot enabled this kind of tight integrations.

image-to-text

image_to_text

automatron can also convert image to text using Google Cloud Vision API.

livescript evaluation

livescript

LiveScript interpreter is included, which allows me to do some quick calculations.

cli / api

api

POST /text sends a text command to automatron. This is equivalent to sending a text message through LINE. This allows me to create a CLI tool that lets me talk to automatron from my terminal.

POST /post sends a message to my LINE account directly. This allows the home automation scripts to report back to me whenever the script is invoked.

project structure

This project is a monorepo managed by Rush. It contains multiple subprojects:

  • core — The core automatron service running on Google Cloud Run.
  • webui — The web-based UI running on Vercel.

other projects

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].