|
@@ -9,7 +9,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
});
|
|
|
};
|
|
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
-exports.sendAllStories = exports.sendStory = exports.ScreenNameNormalizer = exports.SessionManager = exports.parseLink = exports.linkBuilder = void 0;
|
|
|
+exports.sendAllStories = exports.sendStory = exports.sendTimeline = exports.ScreenNameNormalizer = exports.SessionManager = exports.parseLink = exports.linkBuilder = void 0;
|
|
|
const crypto = require("crypto");
|
|
|
const fs = require("fs");
|
|
|
const http = require("http");
|
|
@@ -18,6 +18,7 @@ const url_1 = require("url");
|
|
|
const util_1 = require("util");
|
|
|
const instagram_private_api_1 = require("instagram-private-api");
|
|
|
const socks_proxy_agent_1 = require("socks-proxy-agent");
|
|
|
+const datetime_1 = require("./datetime");
|
|
|
const loggers_1 = require("./loggers");
|
|
|
const utils_1 = require("./utils");
|
|
|
const webshot_1 = require("./webshot");
|
|
@@ -140,6 +141,10 @@ class ScreenNameNormalizer {
|
|
|
}
|
|
|
exports.ScreenNameNormalizer = ScreenNameNormalizer;
|
|
|
ScreenNameNormalizer.normalize = (username) => `${username.toLowerCase().replace(/^@/, '')}:`;
|
|
|
+let sendTimeline = (username, receiver) => {
|
|
|
+ throw Error();
|
|
|
+};
|
|
|
+exports.sendTimeline = sendTimeline;
|
|
|
let sendStory = (username, storyId, receiver) => {
|
|
|
throw Error();
|
|
|
};
|
|
@@ -425,6 +430,24 @@ class default_1 {
|
|
|
});
|
|
|
};
|
|
|
ScreenNameNormalizer._queryUser = this.queryUser;
|
|
|
+ exports.sendTimeline = (rawUserName, receiver) => {
|
|
|
+ const reply = msg => this.bot.sendTo(receiver, msg);
|
|
|
+ workNow({
|
|
|
+ rawUserName,
|
|
|
+ action: userName => {
|
|
|
+ const storyItems = Object.values(this.cache[userName].stories)
|
|
|
+ .sort((i1, i2) => -utils_1.BigNumOps.compare(i2.pk, i1.pk));
|
|
|
+ if (storyItems.length === 0)
|
|
|
+ return reply(`当前用户 (@${userName}) 没有可用的 Instagram 限时动态。`);
|
|
|
+ return reply('#. 编号:发送时间\n' + storyItems.map(({ original }, index) => `\n${index + 1}. ${original.pk}: ${datetime_1.relativeDate(original.taken_at * 1000)}`).join(''))
|
|
|
+ .then(() => reply(`请使用 /igstory_view ${userName} skip=<#-1> count=1
|
|
|
+或 /igstory_view https://www.instagram.com/stories/${userName}/<编号>/
|
|
|
+查看指定的限时动态。`));
|
|
|
+ },
|
|
|
+ reply,
|
|
|
+ retryAction: () => exports.sendTimeline(rawUserName, receiver),
|
|
|
+ });
|
|
|
+ };
|
|
|
exports.sendStory = (rawUserName, storyId, receiver) => {
|
|
|
const reply = msg => this.bot.sendTo(receiver, msg);
|
|
|
const sender = this.sendStories(`instagram stories for ${rawUserName}`, receiver);
|