All Projects → ejnshtein → Vk To Telegram

ejnshtein / Vk To Telegram

Utility to forward posts from VK through callback API to telegram channel or chat

Programming Languages

javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to Vk To Telegram

Node Vk Bot Api
🤖 VK bot framework for Node.js, based on Bots Long Poll API and Callback API.
Stars: ✭ 195 (+712.5%)
Mutual labels:  api, bot, vk, vkontakte
Vk To Telegram Transfer Bot
Бот, пересылающий сообщения из чатов ВК в Telegram и обратно
Stars: ✭ 143 (+495.83%)
Mutual labels:  bot, telegram, vk
Node Telegram Bot Api
Telegram Bot API for NodeJS
Stars: ✭ 5,782 (+23991.67%)
Mutual labels:  api, bot, telegram
Go Tgbot
Golang telegram bot API wrapper, session-based router and middleware
Stars: ✭ 90 (+275%)
Mutual labels:  api, bot, telegram
Vkb
Bot for vk.com competitions
Stars: ✭ 24 (+0%)
Mutual labels:  bot, vk, vkontakte
Sketal
Бот для ВКонтакте. Беседы / группы / развлечения.
Stars: ✭ 119 (+395.83%)
Mutual labels:  bot, vk, vkontakte
Telegram Test Api
Simple implimentation of telegram API which can be used for testing telegram bots
Stars: ✭ 42 (+75%)
Mutual labels:  api, bot, telegram
Vkbot
Простой разговорный бот на PHP
Stars: ✭ 88 (+266.67%)
Mutual labels:  bot, vk, vkontakte
Ex gram
Telegram Bot API low level API and framework
Stars: ✭ 103 (+329.17%)
Mutual labels:  api, bot, telegram
Novagram
An Object-Oriented PHP library for Telegram Bots
Stars: ✭ 112 (+366.67%)
Mutual labels:  api, bot, telegram
Vk Api Schema
JSON Schema of VK API
Stars: ✭ 158 (+558.33%)
Mutual labels:  api, vk, vkontakte
Vk To Telegram Bot
Bot for auto-reposting posts from VK to Telegram channel
Stars: ✭ 103 (+329.17%)
Mutual labels:  telegram, vk, vkontakte
Vkbottle
Homogenic! Customizable asynchronous VK API framework
Stars: ✭ 191 (+695.83%)
Mutual labels:  bot, callback, vk
Telebot.nim
Async client for Telegram Bot API in pure Nim [Bot API 5.1]
Stars: ✭ 93 (+287.5%)
Mutual labels:  api, bot, telegram
Mellow
Mellow can communicate with several APIs like Ombi, Sonarr, Radarr and Tautulli which are related to home streaming to use those services directly in your Discord client.
Stars: ✭ 193 (+704.17%)
Mutual labels:  api, bot, telegram
Vkapiphp
[Abandoned] Library for work with API Vk.com
Stars: ✭ 206 (+758.33%)
Mutual labels:  api, vk, vkontakte
Node Express Mongodb Jwt Rest Api Skeleton
This is a basic API REST skeleton written on JavaScript using async/await. Great for building a starter web API for your front-end (Android, iOS, Vue, react, angular, or anything that can consume an API). Demo of frontend in VueJS here: https://github.com/davellanedam/vue-skeleton-mvp
Stars: ✭ 603 (+2412.5%)
Mutual labels:  api, express
Pymessager
Python API to develop chatbot on Facebook Messenger Platform
Stars: ✭ 580 (+2316.67%)
Mutual labels:  api, bot
Dsharpplus
A .NET Standard library for making bots using the Discord API.
Stars: ✭ 635 (+2545.83%)
Mutual labels:  api, bot
Aiva
AIVA (A.I. Virtual Assistant): General-purpose virtual assistant for developers.
Stars: ✭ 693 (+2787.5%)
Mutual labels:  bot, telegram

vk to telegram forwarder

NPM Version node

Installation

npm i vk-to-telegram --save

Example

const app = require('express')()
const bodyParser = require('body-parser')
const vkToTelegram = require('vk-to-telegram')
const vkToTg = new vkToTelegram({
  botToken: 'your bot token',
  chatName: 'telegram chat/channel name',
  ownerId: 'your telegram id', // number
  vkToken: 'your very long token from vk api',
  vkConfirmation: 'group confirmation'
})
app.use(bodyParser.json())
app.post('/', (req, res) => {
  vkToTg.send(req, res)
    .then(() => console.log('Done!'))
    .catch((err) => {
      console.log('Something went wrong')
      console.log(err)
    })
})

app.listen(80, ()=>{
  console.log('listening on port 80')
})

What is this

It is a tool for express which using VK callback api forwards posts from group in channel or chat in Telegram!

async/await

Here's example with koa2

app.use(bodyParser())
app.use(async ctx => {
  const result = await vkToTg.send(ctx)
  console.log(result)
})

Used by:

AlexandriA (AAR) PanzerSofa Олег Ливанов ongoing research
аниреакт Otaku Squad disgusting otaku Fond SpeedWagona

What content does it forward

Content type Works fully?
Photo(s) Yes
Video(s) Yes
Document(s) Yes
Link Yes
Application Content Yes
Poll Yes
Audio(s) NO. Why? Read here.
Album(s) Yes
Graffiti Not tested.
Wiki Page Not tested.
Market item Not tested.
Sticker Not tested.

Free usage

If you want to test this code, or use on a regular basis (via heroku), please contact me for setup.

Variables

Variable Type Required Description
token String Yes Bot token from Botfather
chatName String Yes Telegram channel or group link, like '@tavernofheroes'
ownerId Number Yes Your telegram id for sending error if they are. U can get know it from @getidsbot
vkConfirmation String Yes Confirmation string from ur group callback api server:
vkToken String Yes Follow the instructions below:
1. Create Standalone application here: https://vk.com/apps?act=manage
2. Open settings in created application and copy application id
3. Open this link with replace your application id:
https://oauth.vk.com/authorize?client_id=YOUR APPLICATION ID&display=page&redirect_uri=http://vk.com/&scope=offline,video,docs&response_type=token&v=5.81
4. Click allow all that need's and it's all! Your token is in query url, do not copy all link, only token without other params.
chatId Number Optional If you know your chat/channel id, put it here, it will replace chatName parameter
fromId Number Optional VK group id with '-'in start or nothing, if you don't need check.
customVkButton String Optional Title for button which will be added to each post to open it in VK
customPollTitle String Optional Custom template string in the title of button with URL to poll("Open poll" -> "Open poll - ${poll.question}")
customLongPostText String Optional Custom template string that replace full post text, because it's too long for Telegram(max 4096 characters) ("Too long post... [Read full]" -> "Too long post... <a href="https://vk.com/poll${poll.owner_id}_${poll.id}">Read full" and parse as HTML)
signed String Optional Custom template string that add post signer in the end of Telegram message ("Post By" -> "\n\nPost by <a href="https://vk.com/id${post.signer_id}">${signer.first_name} ${signer.last_name}" and parse as HTML)
heroku Boolean Optional Add filter that stops forwarder if detect that post repeats(Because of app sleeping)
herokuTimeout Number Optional Heroku post delay between same posts
secret String Optional Secret field from vk admin panel to verify that post has come from VK
filterByWord String Optional Filter posts by key word(s) (use ',' as separator) (use '-' in begin of word to invert)
filterByHashtag String Optional Filter posts by hashtag (use ',' as separator) (use '-' in begin of word to invert)
ads Boolean Optional Forward posts marked as ads? (By default true)
repostAds Boolean Optional Forward reposts marked as ads? (By default true)
appendText String Optional Append text to forwarded post (can be used for hashtags for channel navigation)
prependText String Optional Same as appendText but it's will prepend it in the start of post text
repost Boolean Optional Allow to forward post with repost (By default true)
sendNativePoll Boolean Optional Use native Telegram poll instead of link to poll in VK, set false to use poll in VK
criedHalfBea Boolean Optional Use Z sized pictures as max. (Reduces pictures aliasing)
  • DON'T forget to pick in your vk group api dashboard event type 'WALL POST - NEW'.
  • Recommend to use vk api v5.103

Contact

Telegram group, Telegram, Mail

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].