Skip to content

Instantly share code, notes, and snippets.

@M1n007
Created July 25, 2020 13:08
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save M1n007/70839c3700e6296c670714531eb9e73a to your computer and use it in GitHub Desktop.
Save M1n007/70839c3700e6296c670714531eb9e73a to your computer and use it in GitHub Desktop.
cron insta
const helper = require('../../helpers/helper')
const authHelper = require('../../auth/jwt_helper')
const hash = require('../../helpers/hash')
const query = require('./queries')
const logger = require('../../helpers/logger')
const config = require('../../configs/globalConfigs')
const Instagram = require('node-insta-web-api');
const Insta = new Instagram();
const { v4: uuidv4 } = require('uuid');
const fs = require('fs');
const insertNewPostInsta = async (payload) => {
await Insta.getCookie()
const photos = await Insta.getImageByUser('usernametarget')
// logger.log('info', `getting data ${JSON.stringify(photos)}`, 'insertNewPostInsta')
console.log(JSON.stringify(photos))
const mediaData = {
mediaUrl: photos.user.edge_owner_to_timeline_media.edges[0].node.edge_sidecar_to_children ? photos.user.edge_owner_to_timeline_media.edges[0].node.edge_sidecar_to_children.edges.map(data => {
return data.node.display_url;
}) : [photos.user.edge_owner_to_timeline_media.edges[0].node.display_url],
createdAt: photos.user.edge_owner_to_timeline_media.edges[0].node.taken_at_timestamp,
mediaCaption: photos.user.edge_owner_to_timeline_media.edges[0].node.edge_media_to_caption.edges[0].node.text
}
logger.log('info', `getting data ${mediaData.mediaUrl}`, 'insertNewPostInsta')
const months = ['Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec'];
const aMinuteAgo = new Date(Date.now() - 1000 * 60).toLocaleString("id-ID", {timeZone: "Asia/Jakarta"});
const mediaDate = new Date(mediaData.createdAt * 1000).toLocaleString("id-ID", {timeZone: "Asia/Jakarta"});
logger.log('info', `indonesian date ${mediaDate}`, 'insertNewPostInsta')
// const aMinuteAgoNew = `${aMinuteAgo.getFullYear()}-${months[aMinuteAgo.getMonth()]}-${aMinuteAgo.getDate()} ${aMinuteAgo.getHours()}:${aMinuteAgo.getMinutes()}:${aMinuteAgo.getSeconds()}`;
// const mediaNewDate = `${mediaDate.getFullYear()}-${months[mediaDate.getMonth()]}-${mediaDate.getDate()} ${mediaDate.getHours()}:${mediaDate.getMinutes()}:${mediaDate.getSeconds()}`;
if (mediaDate <= aMinuteAgo == false) {
logger.log('info', `new pict ${mediaData.mediaUrl}`, 'insertNewPostInsta')
const data = {
instaId: uuidv4(),
...mediaData,
updatedAt: ''
}
await query.upsertOneInsta({createdAt: data.createdAt}, data)
}else{
logger.log('info', `old pict ${mediaData.mediaUrl}`, 'insertNewPostInsta')
}
}
module.exports = {
insertNewPostInsta
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment