Security News
CISA Brings KEV Data to GitHub
CISA's KEV data is now on GitHub, offering easier access, API integration, commit history tracking, and automated updates for security teams and researchers.
vk-to-telegram
Advanced tools
npm i vk-to-telegram --save
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')
})
It is a tool for express which using VK callback api forwards posts from group in channel or chat in Telegram!
Here's example with koa2
app.use(bodyParser())
app.use(async ctx => {
const result = await vkToTg.send(ctx)
console.log(result)
})
AlexandriA (AAR) | PanzerSofa | Олег Ливанов | ongoing research |
аниреакт | Otaku Squad | disgusting otaku | Fond SpeedWagona |
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. |
If you want to test this code, or use on a regular basis (via heroku), please contact me for setup.
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) |
FAQs
Vk to telegram forwarder
The npm package vk-to-telegram receives a total of 47 weekly downloads. As such, vk-to-telegram popularity was classified as not popular.
We found that vk-to-telegram demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
CISA's KEV data is now on GitHub, offering easier access, API integration, commit history tracking, and automated updates for security teams and researchers.
Security News
Opengrep forks Semgrep to preserve open source SAST in response to controversial licensing changes.
Security News
Critics call the Node.js EOL CVE a misuse of the system, sparking debate over CVE standards and the growing noise in vulnerability databases.