iobroker.telegram-menu 2.2.4 → 2.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +12 -0
- package/admin/build/index.js +49 -49
- package/admin/build/index.js.map +3 -3
- package/admin/css/button.css +3 -0
- package/admin/css/row-editor.css +1 -1
- package/admin/css/style.css +46 -25
- package/admin/css/textarea.css +7 -11
- package/admin/i18n/de/translations.json +124 -123
- package/admin/i18n/en/translations.json +3 -2
- package/admin/i18n/es/translations.json +3 -2
- package/admin/i18n/fr/translations.json +3 -2
- package/admin/i18n/it/translations.json +3 -2
- package/admin/i18n/nl/translations.json +3 -2
- package/admin/i18n/pl/translations.json +3 -2
- package/admin/i18n/pt/translations.json +3 -2
- package/admin/i18n/ru/translations.json +3 -2
- package/admin/i18n/uk/translations.json +3 -2
- package/admin/i18n/zh-cn/translations.json +3 -2
- package/admin/words.js +3 -1
- package/build/admin/src/config/helper.js +178 -0
- package/build/admin/src/config/helper.js.map +1 -0
- package/build/admin/src/lib/Utils.js +64 -0
- package/build/admin/src/lib/Utils.js.map +1 -0
- package/build/admin/src/types/event.js +3 -0
- package/build/admin/src/types/event.js.map +1 -0
- package/build/app/action.js +270 -0
- package/build/app/action.js.map +7 -0
- package/build/app/adapterManager.js +36 -0
- package/build/app/adapterManager.js.map +7 -0
- package/build/app/adapterStartMenuSend.js +59 -0
- package/build/app/adapterStartMenuSend.js.map +7 -0
- package/build/app/backMenu.js +110 -0
- package/build/app/backMenu.js.map +7 -0
- package/build/app/botAction.js +47 -0
- package/build/app/botAction.js.map +7 -0
- package/build/app/configVariables.js +56 -0
- package/build/app/configVariables.js.map +7 -0
- package/build/app/connection.js +42 -0
- package/build/app/connection.js.map +7 -0
- package/build/app/createState.js +42 -0
- package/build/app/createState.js.map +7 -0
- package/build/app/dynamicSwitch.js +69 -0
- package/build/app/dynamicSwitch.js.map +7 -0
- package/build/app/dynamicSwitchMenu.js +69 -0
- package/build/app/dynamicSwitchMenu.js.map +7 -0
- package/build/app/dynamicValue.js +80 -0
- package/build/app/dynamicValue.js.map +7 -0
- package/build/app/echarts.js +60 -0
- package/build/app/echarts.js.map +7 -0
- package/build/app/getstate.js +148 -0
- package/build/app/getstate.js.map +7 -0
- package/build/app/global.js +2 -0
- package/build/app/global.js.map +7 -0
- package/build/app/httpRequest.js +84 -0
- package/build/app/httpRequest.js.map +7 -0
- package/build/app/jsonTable.js +158 -0
- package/build/app/jsonTable.js.map +7 -0
- package/build/app/logging.js +46 -0
- package/build/app/logging.js.map +7 -0
- package/build/app/messageIds.js +116 -0
- package/build/app/messageIds.js.map +7 -0
- package/build/app/processData.js +198 -0
- package/build/app/processData.js.map +7 -0
- package/build/app/sendNav.js +49 -0
- package/build/app/sendNav.js.map +7 -0
- package/build/app/sendpic.js +95 -0
- package/build/app/sendpic.js.map +7 -0
- package/build/app/sentry.js +43 -0
- package/build/app/sentry.js.map +7 -0
- package/build/app/setStateIdsToListenTo.js +42 -0
- package/build/app/setStateIdsToListenTo.js.map +7 -0
- package/build/app/setstate.js +145 -0
- package/build/app/setstate.js.map +7 -0
- package/build/app/shoppingList.js +97 -0
- package/build/app/shoppingList.js.map +7 -0
- package/build/app/subMenu.js +281 -0
- package/build/app/subMenu.js.map +7 -0
- package/build/app/subscribeStates.js +41 -0
- package/build/app/subscribeStates.js.map +7 -0
- package/build/app/telegram.js +131 -0
- package/build/app/telegram.js.map +7 -0
- package/build/app/validateMenus.js +64 -0
- package/build/app/validateMenus.js.map +7 -0
- package/build/build/src/app/action.js +447 -0
- package/build/build/src/app/adapterStartMenuSend.js +37 -0
- package/build/build/src/app/backMenu.js +70 -0
- package/build/build/src/app/botAction.js +25 -0
- package/build/build/src/app/connection.js +19 -0
- package/build/build/src/app/createState.js +19 -0
- package/build/build/src/app/dynamicSwitch.js +51 -0
- package/build/build/src/app/dynamicValue.js +64 -0
- package/build/build/src/app/echarts.js +45 -0
- package/build/build/src/app/getstate.js +157 -0
- package/build/build/src/app/global.js +59 -0
- package/build/build/src/app/httpRequest.js +64 -0
- package/build/build/src/app/jsonTable.js +147 -0
- package/build/build/src/app/logging.js +13 -0
- package/build/build/src/app/messageIds.js +88 -0
- package/build/build/src/app/processData.js +208 -0
- package/build/build/src/app/sendNav.js +30 -0
- package/build/build/src/app/sendpic.js +69 -0
- package/build/build/src/app/setstate.js +126 -0
- package/build/build/src/app/shoppingList.js +72 -0
- package/build/build/src/app/subMenu.js +361 -0
- package/build/build/src/app/subscribeStates.js +25 -0
- package/build/build/src/app/telegram.js +101 -0
- package/build/build/src/lib/string.js +28 -0
- package/build/build/src/lib/time.js +23 -0
- package/build/build/src/lib/utilities.js +263 -0
- package/build/build/src/lib/utils.js +13 -0
- package/build/build/src/main.js +402 -0
- package/build/config/config.js +134 -0
- package/build/config/config.js.map +7 -0
- package/build/io-package.json +87 -87
- package/build/lib/action.js +1 -3
- package/build/lib/action.js.map +2 -2
- package/build/lib/adapterStartMenuSend.js.map +1 -1
- package/build/lib/appUtils.js +158 -0
- package/build/lib/appUtils.js.map +7 -0
- package/build/lib/appUtilsString.js +37 -0
- package/build/lib/appUtilsString.js.map +7 -0
- package/build/lib/backMenu.js.map +2 -2
- package/build/lib/botAction.js.map +1 -1
- package/build/lib/dynamicSwitch.js.map +1 -1
- package/build/lib/dynamicValue.js.map +1 -1
- package/build/lib/echarts.js.map +1 -1
- package/build/lib/getstate.js.map +1 -1
- package/build/lib/global.js.map +1 -1
- package/build/lib/httpRequest.js.map +1 -1
- package/build/lib/json.js +54 -0
- package/build/lib/json.js.map +7 -0
- package/build/lib/jsonTable.js.map +1 -1
- package/build/lib/math.js +41 -0
- package/build/lib/math.js.map +7 -0
- package/build/lib/messageIds.js.map +1 -1
- package/build/lib/object.js +35 -0
- package/build/lib/object.js.map +7 -0
- package/build/lib/processData.js +4 -18
- package/build/lib/processData.js.map +3 -3
- package/build/lib/sendNav.js.map +1 -1
- package/build/lib/sendpic.js +23 -22
- package/build/lib/sendpic.js.map +2 -2
- package/build/lib/setstate.js.map +1 -1
- package/build/lib/shoppingList.js.map +1 -1
- package/build/lib/splitValues.js +63 -0
- package/build/lib/splitValues.js.map +7 -0
- package/build/lib/string.js +125 -3
- package/build/lib/string.js.map +2 -2
- package/build/lib/subMenu.js +1 -2
- package/build/lib/subMenu.js.map +2 -2
- package/build/lib/subscribeStates.js.map +1 -1
- package/build/lib/telegram.js.map +1 -1
- package/build/lib/time.js +93 -0
- package/build/lib/time.js.map +7 -0
- package/build/lib/utilities.js +84 -281
- package/build/lib/utilities.js.map +3 -3
- package/build/lib/utils.js +66 -0
- package/build/lib/utils.js.map +7 -0
- package/build/main.js +151 -233
- package/build/main.js.map +3 -3
- package/build/src/app/action.js +239 -0
- package/build/src/app/action.js.map +1 -0
- package/build/src/app/adapterManager.js +12 -0
- package/build/src/app/adapterManager.js.map +1 -0
- package/build/src/app/adapterStartMenuSend.js +36 -0
- package/build/src/app/adapterStartMenuSend.js.map +1 -0
- package/build/src/app/backMenu.js +81 -0
- package/build/src/app/backMenu.js.map +1 -0
- package/build/src/app/botAction.js +25 -0
- package/build/src/app/botAction.js.map +1 -0
- package/build/src/app/configVariables.js +32 -0
- package/build/src/app/configVariables.js.map +1 -0
- package/build/src/app/connection.js +20 -0
- package/build/src/app/connection.js.map +1 -0
- package/build/src/app/createState.js +19 -0
- package/build/src/app/createState.js.map +1 -0
- package/build/src/app/dynamicSwitch.js +52 -0
- package/build/src/app/dynamicSwitch.js.map +1 -0
- package/build/src/app/dynamicSwitchMenu.js +52 -0
- package/build/src/app/dynamicSwitchMenu.js.map +1 -0
- package/build/src/app/dynamicValue.js +52 -0
- package/build/src/app/dynamicValue.js.map +1 -0
- package/build/src/app/echarts.js +33 -0
- package/build/src/app/echarts.js.map +1 -0
- package/build/src/app/getstate.js +122 -0
- package/build/src/app/getstate.js.map +1 -0
- package/build/src/app/global.js +8 -0
- package/build/src/app/global.js.map +1 -0
- package/build/src/app/httpRequest.js +55 -0
- package/build/src/app/httpRequest.js.map +1 -0
- package/build/src/app/jsonTable.js +147 -0
- package/build/src/app/jsonTable.js.map +1 -0
- package/build/src/app/logging.js +22 -0
- package/build/src/app/logging.js.map +1 -0
- package/build/src/app/messageIds.js +89 -0
- package/build/src/app/messageIds.js.map +1 -0
- package/build/src/app/processData.js +153 -0
- package/build/src/app/processData.js.map +1 -0
- package/build/src/app/sendNav.js +26 -0
- package/build/src/app/sendNav.js.map +1 -0
- package/build/src/app/sendpic.js +66 -0
- package/build/src/app/sendpic.js.map +1 -0
- package/build/src/app/sentry.js +18 -0
- package/build/src/app/sentry.js.map +1 -0
- package/build/src/app/setStateIdsToListenTo.js +17 -0
- package/build/src/app/setStateIdsToListenTo.js.map +1 -0
- package/build/src/app/setstate.js +114 -0
- package/build/src/app/setstate.js.map +1 -0
- package/build/src/app/shoppingList.js +74 -0
- package/build/src/app/shoppingList.js.map +1 -0
- package/build/src/app/subMenu.js +237 -0
- package/build/src/app/subMenu.js.map +1 -0
- package/build/src/app/subscribeStates.js +17 -0
- package/build/src/app/subscribeStates.js.map +1 -0
- package/build/src/app/telegram.js +83 -0
- package/build/src/app/telegram.js.map +1 -0
- package/build/src/app/validateMenus.js +30 -0
- package/build/src/app/validateMenus.js.map +1 -0
- package/build/src/config/config.js +100 -0
- package/build/src/config/config.js.map +1 -0
- package/build/src/lib/appUtils.js +126 -0
- package/build/src/lib/appUtils.js.map +1 -0
- package/build/src/lib/appUtilsString.js +13 -0
- package/build/src/lib/appUtilsString.js.map +1 -0
- package/build/src/lib/json.js +37 -0
- package/build/src/lib/json.js.map +1 -0
- package/build/src/lib/math.js +17 -0
- package/build/src/lib/math.js.map +1 -0
- package/build/src/lib/object.js +10 -0
- package/build/src/lib/object.js.map +1 -0
- package/build/src/lib/splitValues.js +35 -0
- package/build/src/lib/splitValues.js.map +1 -0
- package/build/src/lib/string.js +121 -0
- package/build/src/lib/string.js.map +1 -0
- package/build/src/lib/time.js +57 -0
- package/build/src/lib/time.js.map +1 -0
- package/build/src/lib/utilities.js +111 -0
- package/build/src/lib/utilities.js.map +1 -0
- package/build/src/lib/utils.js +37 -0
- package/build/src/lib/utils.js.map +1 -0
- package/build/src/main.js +332 -0
- package/build/src/main.js.map +1 -0
- package/build/src/test/setup.js +12 -0
- package/build/src/test/setup.js.map +1 -0
- package/build/src/types/types.js +3 -0
- package/build/src/types/types.js.map +1 -0
- package/build/test/integration.js +0 -1
- package/build/test/integration.js.map +1 -1
- package/build/test/mocha.setup.js +0 -1
- package/build/test/mocha.setup.js.map +1 -1
- package/build/test/package.js +0 -1
- package/build/test/package.js.map +1 -1
- package/build/test/setup.js +12 -0
- package/build/test/setup.js.map +1 -0
- package/build/test/test/appUtils.test.js +507 -0
- package/build/test/test/appUtils.test.js.map +1 -0
- package/build/test/test/appUtilsString.test.js +16 -0
- package/build/test/test/appUtilsString.test.js.map +1 -0
- package/build/test/test/math.test.js +33 -0
- package/build/test/test/math.test.js.map +1 -0
- package/build/test/test/object.test.js +54 -0
- package/build/test/test/object.test.js.map +1 -0
- package/build/test/test/string.test.js +361 -0
- package/build/test/test/string.test.js.map +1 -0
- package/build/test/test/time.test.js +201 -0
- package/build/test/test/time.test.js.map +1 -0
- package/build/test/test/utils.test.js +115 -0
- package/build/test/test/utils.test.js.map +1 -0
- package/build/types/types.js +15 -0
- package/build/types/types.js.map +3 -3
- package/io-package.json +19 -14
- package/package.json +14 -10
- package/build/main.test.js +0 -24
- package/build/main.test.js.map +0 -1
package/build/main.js
CHANGED
|
@@ -28,27 +28,28 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
|
|
|
28
28
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
29
|
var main_exports = {};
|
|
30
30
|
__export(main_exports, {
|
|
31
|
-
_this: () => _this,
|
|
32
31
|
adapter: () => adapter,
|
|
33
32
|
default: () => TelegramMenu
|
|
34
33
|
});
|
|
35
34
|
module.exports = __toCommonJS(main_exports);
|
|
36
35
|
var utils = __toESM(require("@iobroker/adapter-core"));
|
|
37
|
-
var import_action = require("./
|
|
38
|
-
var import_subscribeStates = require("./
|
|
39
|
-
var import_telegram = require("./
|
|
40
|
-
var
|
|
41
|
-
var
|
|
42
|
-
var
|
|
43
|
-
var
|
|
44
|
-
var
|
|
45
|
-
var
|
|
46
|
-
var
|
|
47
|
-
var
|
|
48
|
-
var
|
|
36
|
+
var import_action = require("./app/action.js");
|
|
37
|
+
var import_subscribeStates = require("./app/subscribeStates.js");
|
|
38
|
+
var import_telegram = require("./app/telegram.js");
|
|
39
|
+
var import_createState = require("./app/createState.js");
|
|
40
|
+
var import_messageIds = require("./app/messageIds.js");
|
|
41
|
+
var import_adapterStartMenuSend = require("./app/adapterStartMenuSend.js");
|
|
42
|
+
var import_processData = require("./app/processData.js");
|
|
43
|
+
var import_shoppingList = require("./app/shoppingList.js");
|
|
44
|
+
var import_logging = require("./app/logging.js");
|
|
45
|
+
var import_connection = require("./app/connection.js");
|
|
46
|
+
var import_string = require("./lib/string");
|
|
47
|
+
var import_utils = require("./lib/utils");
|
|
48
|
+
var import_appUtils = require("./lib/appUtils");
|
|
49
|
+
var import_configVariables = require("./app/configVariables");
|
|
50
|
+
var import_setStateIdsToListenTo = require("./app/setStateIdsToListenTo");
|
|
49
51
|
const timeoutKey = "0";
|
|
50
|
-
let
|
|
51
|
-
let _this;
|
|
52
|
+
let adapter;
|
|
52
53
|
class TelegramMenu extends utils.Adapter {
|
|
53
54
|
static instance;
|
|
54
55
|
/**
|
|
@@ -63,92 +64,67 @@ class TelegramMenu extends utils.Adapter {
|
|
|
63
64
|
this.on("unload", this.onUnload.bind(this));
|
|
64
65
|
TelegramMenu.instance = this;
|
|
65
66
|
}
|
|
66
|
-
static getInstance() {
|
|
67
|
-
return TelegramMenu.instance;
|
|
68
|
-
}
|
|
69
67
|
async onReady() {
|
|
70
|
-
|
|
68
|
+
adapter = this;
|
|
71
69
|
await this.setState("info.connection", false, true);
|
|
72
70
|
await (0, import_createState.createState)(this);
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
}
|
|
90
|
-
const
|
|
91
|
-
const
|
|
92
|
-
const
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
const startSides = {};
|
|
98
|
-
const menuData = {
|
|
99
|
-
data: {}
|
|
100
|
-
};
|
|
101
|
-
Object.keys(menusWithUsers).forEach((element) => {
|
|
102
|
-
startSides[element] = dataObject.nav[element][0].call;
|
|
103
|
-
});
|
|
104
|
-
await this.getForeignObject(infoConnectionOfTelegram, async (err, obj) => {
|
|
105
|
-
try {
|
|
106
|
-
if (err || obj == null) {
|
|
71
|
+
const {
|
|
72
|
+
requestMessageID,
|
|
73
|
+
directoryPicture,
|
|
74
|
+
telegramParams,
|
|
75
|
+
telegramID,
|
|
76
|
+
menusWithUsers,
|
|
77
|
+
infoConnectionOfTelegram,
|
|
78
|
+
listOfMenus,
|
|
79
|
+
isUserActiveCheckbox,
|
|
80
|
+
checkboxNoEntryFound,
|
|
81
|
+
textNoEntryFound,
|
|
82
|
+
botSendMessageID,
|
|
83
|
+
sendMenuAfterRestart,
|
|
84
|
+
token,
|
|
85
|
+
dataObject,
|
|
86
|
+
checkboxes
|
|
87
|
+
} = (0, import_configVariables.getConfigVariables)(this.config);
|
|
88
|
+
const { telegramInstance } = telegramParams;
|
|
89
|
+
const menuData = {};
|
|
90
|
+
const startSides = (0, import_appUtils.getStartSides)(menusWithUsers, dataObject);
|
|
91
|
+
try {
|
|
92
|
+
await this.getForeignObject(infoConnectionOfTelegram, async (err, obj) => {
|
|
93
|
+
var _a;
|
|
94
|
+
if (err || !obj) {
|
|
107
95
|
this.log.error(`The State ${infoConnectionOfTelegram} was not found! ${err}`);
|
|
108
96
|
return;
|
|
109
97
|
}
|
|
110
|
-
|
|
111
|
-
if (!isTelegramActive) {
|
|
98
|
+
if (!await (0, import_connection.checkIsTelegramActive)(infoConnectionOfTelegram)) {
|
|
112
99
|
return;
|
|
113
100
|
}
|
|
114
101
|
const { nav, action } = dataObject;
|
|
115
102
|
this.log.info("Telegram was found");
|
|
116
103
|
for (const name in nav) {
|
|
117
|
-
const
|
|
118
|
-
const
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
}
|
|
122
|
-
const generatedActions = (0, import_action.generateActions)(
|
|
123
|
-
action[name],
|
|
124
|
-
menuData.data[name]
|
|
125
|
-
);
|
|
104
|
+
const splittedNavigation = (0, import_appUtils.splitNavigation)(nav[name]);
|
|
105
|
+
const newStructure = (0, import_appUtils.getNewStructure)(splittedNavigation);
|
|
106
|
+
const generatedActions = (0, import_action.generateActions)({ action: action[name], userObject: newStructure });
|
|
107
|
+
menuData[name] = newStructure;
|
|
126
108
|
if (generatedActions) {
|
|
127
|
-
menuData
|
|
128
|
-
subscribeForeignStateIds = generatedActions == null ? void 0 : generatedActions.ids;
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
if (subscribeForeignStateIds && (subscribeForeignStateIds == null ? void 0 : subscribeForeignStateIds.length) > 0) {
|
|
133
|
-
await (0, import_subscribeStates._subscribeForeignStatesAsync)(subscribeForeignStateIds);
|
|
109
|
+
menuData[name] = generatedActions == null ? void 0 : generatedActions.obj;
|
|
110
|
+
const subscribeForeignStateIds = generatedActions == null ? void 0 : generatedActions.ids;
|
|
111
|
+
if (subscribeForeignStateIds == null ? void 0 : subscribeForeignStateIds.length) {
|
|
112
|
+
await (0, import_subscribeStates._subscribeForeignStates)(subscribeForeignStateIds);
|
|
113
|
+
}
|
|
134
114
|
} else {
|
|
135
|
-
|
|
115
|
+
adapter.log.debug("No Actions generated!");
|
|
136
116
|
}
|
|
137
|
-
if (dataObject.action[name]
|
|
117
|
+
if ((_a = dataObject.action[name]) == null ? void 0 : _a.events) {
|
|
138
118
|
for (const event of dataObject.action[name].events) {
|
|
139
|
-
await (0, import_subscribeStates.
|
|
119
|
+
await (0, import_subscribeStates._subscribeForeignStates)(event.ID);
|
|
140
120
|
}
|
|
141
121
|
}
|
|
142
|
-
(
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
{ text: "Gen. Actions: ", val: menuData.data[name] }
|
|
146
|
-
]);
|
|
122
|
+
adapter.log.debug(`Menu: ${name}`);
|
|
123
|
+
adapter.log.debug(`Array Buttons: ${(0, import_string.jsonString)(splittedNavigation)}`);
|
|
124
|
+
adapter.log.debug(`Gen. Actions: ${(0, import_string.jsonString)(menuData[name])}`);
|
|
147
125
|
}
|
|
148
|
-
(0,
|
|
149
|
-
|
|
150
|
-
{ text: "MenuList", val: listOfMenus }
|
|
151
|
-
]);
|
|
126
|
+
adapter.log.debug(`Checkbox: ${(0, import_string.jsonString)(checkboxes)}`);
|
|
127
|
+
adapter.log.debug(`MenuList: ${(0, import_string.jsonString)(listOfMenus)}`);
|
|
152
128
|
if (sendMenuAfterRestart) {
|
|
153
129
|
await (0, import_adapterStartMenuSend.adapterStartMenuSend)(
|
|
154
130
|
listOfMenus,
|
|
@@ -156,197 +132,141 @@ class TelegramMenu extends utils.Adapter {
|
|
|
156
132
|
isUserActiveCheckbox,
|
|
157
133
|
menusWithUsers,
|
|
158
134
|
menuData,
|
|
159
|
-
|
|
160
|
-
instanceTelegram,
|
|
161
|
-
resize_keyboard,
|
|
162
|
-
one_time_keyboard
|
|
135
|
+
telegramParams
|
|
163
136
|
);
|
|
164
137
|
}
|
|
165
138
|
this.on("stateChange", async (id, state) => {
|
|
166
|
-
|
|
167
|
-
const
|
|
168
|
-
|
|
139
|
+
var _a2, _b, _c;
|
|
140
|
+
const setStateIdsToListenTo = (0, import_setStateIdsToListenTo.getStateIdsToListenTo)();
|
|
141
|
+
const isTelegramInstanceActive = await this.checkInfoConnection(id, infoConnectionOfTelegram);
|
|
142
|
+
if (!isTelegramInstanceActive) {
|
|
169
143
|
return;
|
|
170
144
|
}
|
|
171
|
-
const
|
|
172
|
-
if (
|
|
145
|
+
const { userToSend, error } = await this.getChatIDAndUserToSend(telegramParams);
|
|
146
|
+
if (error) {
|
|
173
147
|
return;
|
|
174
148
|
}
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
await (0, import_shoppingList.shoppingListSubscribeStateAndDeleteItem)(
|
|
178
|
-
state.val,
|
|
179
|
-
instanceTelegram,
|
|
180
|
-
userListWithChatID,
|
|
181
|
-
resize_keyboard,
|
|
182
|
-
one_time_keyboard
|
|
183
|
-
);
|
|
149
|
+
if (this.isAddToShoppingList(id, userToSend)) {
|
|
150
|
+
await (0, import_shoppingList.deleteMessageAndSendNewShoppingList)(telegramParams, userToSend);
|
|
184
151
|
return;
|
|
185
152
|
}
|
|
186
|
-
if (
|
|
187
|
-
await (0, import_shoppingList.deleteMessageAndSendNewShoppingList)(instanceTelegram, userListWithChatID, userToSend);
|
|
153
|
+
if (!state || !(0, import_utils.isDefined)(state.val)) {
|
|
188
154
|
return;
|
|
189
155
|
}
|
|
190
|
-
if (
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
userListWithChatID,
|
|
196
|
-
instanceTelegram,
|
|
197
|
-
resize_keyboard,
|
|
198
|
-
one_time_keyboard,
|
|
199
|
-
menusWithUsers
|
|
200
|
-
)) {
|
|
156
|
+
if ((0, import_string.isString)(state.val) && state.val.includes("sList:")) {
|
|
157
|
+
await (0, import_shoppingList.shoppingListSubscribeStateAndDeleteItem)(state.val, telegramParams);
|
|
158
|
+
return;
|
|
159
|
+
}
|
|
160
|
+
if (await (0, import_action.checkEvent)(dataObject, id, state, menuData, telegramParams, menusWithUsers)) {
|
|
201
161
|
return;
|
|
202
162
|
}
|
|
203
|
-
if (this.isMessageID(id, botSendMessageID, requestMessageID)
|
|
204
|
-
await (0, import_messageIds.saveMessageIds)(state,
|
|
163
|
+
if (this.isMessageID(id, botSendMessageID, requestMessageID)) {
|
|
164
|
+
await (0, import_messageIds.saveMessageIds)(state, telegramInstance);
|
|
205
165
|
} else if (this.isMenuToSend(state, id, telegramID, userToSend)) {
|
|
206
|
-
|
|
207
|
-
if (!value || !userToSend) {
|
|
208
|
-
return;
|
|
209
|
-
}
|
|
210
|
-
value = value.toString();
|
|
166
|
+
const value = state.val.toString();
|
|
211
167
|
const calledValue = value.slice(value.indexOf("]") + 1, value.length);
|
|
212
|
-
const menus = (0,
|
|
168
|
+
const menus = (0, import_appUtils.getListOfMenusIncludingUser)(menusWithUsers, userToSend);
|
|
213
169
|
const dataFound = await (0, import_processData.checkEveryMenuForData)({
|
|
214
170
|
menuData,
|
|
215
171
|
calledValue,
|
|
216
172
|
userToSend,
|
|
217
|
-
|
|
218
|
-
resize_keyboard,
|
|
219
|
-
one_time_keyboard,
|
|
220
|
-
userListWithChatID,
|
|
173
|
+
telegramParams,
|
|
221
174
|
menus,
|
|
222
175
|
isUserActiveCheckbox,
|
|
223
176
|
token,
|
|
224
177
|
directoryPicture,
|
|
225
178
|
timeoutKey
|
|
226
179
|
});
|
|
227
|
-
(0,
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
]);
|
|
231
|
-
if (!dataFound && checkboxNoEntryFound && userToSend) {
|
|
232
|
-
(0, import_logging.debug)([{ text: "No Entry found" }]);
|
|
180
|
+
this.log.debug(`Groups with searched User: ${(0, import_string.jsonString)(menus)}`);
|
|
181
|
+
if (!dataFound && checkboxNoEntryFound) {
|
|
182
|
+
adapter.log.debug("No Entry found");
|
|
233
183
|
await (0, import_telegram.sendToTelegram)({
|
|
234
|
-
|
|
184
|
+
userToSend,
|
|
235
185
|
textToSend: textNoEntryFound,
|
|
236
|
-
|
|
237
|
-
resize_keyboard,
|
|
238
|
-
one_time_keyboard,
|
|
239
|
-
userListWithChatID,
|
|
240
|
-
parse_mode: "false"
|
|
186
|
+
telegramParams
|
|
241
187
|
});
|
|
242
188
|
}
|
|
243
189
|
return;
|
|
244
190
|
}
|
|
245
|
-
if (state && setStateIdsToListenTo
|
|
246
|
-
(
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
(0,
|
|
254
|
-
|
|
255
|
-
{
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
const substring = (0, import_utilities.decomposeText)(
|
|
259
|
-
element.returnText,
|
|
260
|
-
"{confirmSet:",
|
|
261
|
-
"}"
|
|
262
|
-
).substring.split(":");
|
|
263
|
-
(0, import_logging.debug)([{ text: "Substring:", val: substring }]);
|
|
191
|
+
if (state && (setStateIdsToListenTo == null ? void 0 : setStateIdsToListenTo.find((element) => element.id == id))) {
|
|
192
|
+
adapter.log.debug(`State, which is listen to was changed: ${id}`);
|
|
193
|
+
adapter.log.debug(`State: ${(0, import_string.jsonString)(state)}`);
|
|
194
|
+
for (const el of setStateIdsToListenTo) {
|
|
195
|
+
const { id: elId, userToSend: userToSend2, confirm, returnText, parse_mode } = el;
|
|
196
|
+
const key = setStateIdsToListenTo.indexOf(el);
|
|
197
|
+
if (elId == id) {
|
|
198
|
+
adapter.log.debug(`Send Value: ${(0, import_string.jsonString)(el)}`);
|
|
199
|
+
adapter.log.debug(`State: ${(0, import_string.jsonString)(state)}`);
|
|
200
|
+
if ((0, import_utils.isTruthy)(confirm) && !(state == null ? void 0 : state.ack) && returnText.includes("{confirmSet:")) {
|
|
201
|
+
const { substring } = (0, import_string.decomposeText)(returnText, "{confirmSet:", "}");
|
|
202
|
+
const splitSubstring = substring.split(":");
|
|
203
|
+
adapter.log.debug(`Substring: ${(0, import_string.jsonString)(splitSubstring)}`);
|
|
264
204
|
let text = "";
|
|
265
|
-
if ((0,
|
|
266
|
-
text =
|
|
205
|
+
if ((0, import_utils.isDefined)(state.val)) {
|
|
206
|
+
text = ((_a2 = splitSubstring[2]) == null ? void 0 : _a2.includes("noValue")) ? splitSubstring[1] : (0, import_appUtils.exchangePlaceholderWithValue)(splitSubstring[1], state.val.toString());
|
|
267
207
|
}
|
|
268
|
-
|
|
208
|
+
adapter.log.debug(`Return-text: ${text}`);
|
|
269
209
|
if (text === "") {
|
|
270
|
-
|
|
210
|
+
adapter.log.error("The return text cannot be empty, please check.");
|
|
271
211
|
}
|
|
272
|
-
(0, import_telegram.sendToTelegram)({
|
|
273
|
-
user: element.userToSend,
|
|
212
|
+
await (0, import_telegram.sendToTelegram)({
|
|
274
213
|
textToSend: text,
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
userListWithChatID,
|
|
279
|
-
parse_mode: element.parse_mode
|
|
280
|
-
}).catch((e) => {
|
|
281
|
-
(0, import_logging.error)([
|
|
282
|
-
{ text: "Error SendToTelegram" },
|
|
283
|
-
{ val: e.message },
|
|
284
|
-
{ text: "Error", val: e.stack }
|
|
285
|
-
]);
|
|
214
|
+
parse_mode,
|
|
215
|
+
userToSend: userToSend2,
|
|
216
|
+
telegramParams
|
|
286
217
|
});
|
|
287
|
-
|
|
218
|
+
continue;
|
|
288
219
|
}
|
|
289
|
-
(0,
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
val: { confirm: element.confirm, ack: state == null ? void 0 : state.ack, val: state == null ? void 0 : state.val }
|
|
293
|
-
}
|
|
294
|
-
]);
|
|
295
|
-
if (!(0, import_global.isFalsy)(element.confirm) && (state == null ? void 0 : state.ack)) {
|
|
296
|
-
let textToSend = element.returnText;
|
|
220
|
+
adapter.log.debug(`Data: ${(0, import_string.jsonString)({ confirm, ack: state == null ? void 0 : state.ack, val: state == null ? void 0 : state.val })}`);
|
|
221
|
+
if (!(0, import_utils.isFalsy)(confirm) && (state == null ? void 0 : state.ack)) {
|
|
222
|
+
let textToSend = returnText;
|
|
297
223
|
if (textToSend.includes("{confirmSet:")) {
|
|
298
|
-
const
|
|
299
|
-
textToSend =
|
|
224
|
+
const { textExcludeSubstring } = (0, import_string.decomposeText)(textToSend, "{confirmSet:", "}");
|
|
225
|
+
textToSend = textExcludeSubstring;
|
|
300
226
|
}
|
|
301
227
|
let value = "";
|
|
302
228
|
let valueChange = null;
|
|
303
|
-
const
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
229
|
+
const {
|
|
230
|
+
newValue,
|
|
231
|
+
textToSend: changedText,
|
|
232
|
+
error: error2
|
|
233
|
+
} = (0, import_string.getValueToExchange)(adapter, textToSend, (_b = state.val) == null ? void 0 : _b.toString());
|
|
234
|
+
if (!error2) {
|
|
235
|
+
valueChange = newValue;
|
|
236
|
+
textToSend = changedText;
|
|
307
237
|
}
|
|
308
238
|
if (textToSend == null ? void 0 : textToSend.toString().includes("{novalue}")) {
|
|
309
239
|
value = "";
|
|
310
240
|
textToSend = textToSend.replace("{novalue}", "");
|
|
311
|
-
} else if ((0,
|
|
312
|
-
value = (
|
|
241
|
+
} else if ((0, import_utils.isDefined)(state == null ? void 0 : state.val)) {
|
|
242
|
+
value = (_c = state.val) == null ? void 0 : _c.toString();
|
|
313
243
|
}
|
|
314
|
-
if (valueChange) {
|
|
244
|
+
if ((0, import_utils.isDefined)(valueChange)) {
|
|
315
245
|
value = valueChange;
|
|
316
246
|
}
|
|
317
|
-
|
|
318
|
-
textToSend = (0,
|
|
319
|
-
(0, import_telegram.sendToTelegram)({
|
|
320
|
-
|
|
247
|
+
adapter.log.debug(`Value to send: ${value}`);
|
|
248
|
+
textToSend = (0, import_appUtils.exchangePlaceholderWithValue)(textToSend, value);
|
|
249
|
+
await (0, import_telegram.sendToTelegram)({
|
|
250
|
+
userToSend: userToSend2,
|
|
321
251
|
textToSend,
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
resize_keyboard,
|
|
325
|
-
one_time_keyboard,
|
|
326
|
-
userListWithChatID,
|
|
327
|
-
parse_mode: element.parse_mode
|
|
328
|
-
}).catch((e) => {
|
|
329
|
-
(0, import_logging.error)([
|
|
330
|
-
{ text: "Error sendToTelegram" },
|
|
331
|
-
{ val: e.message },
|
|
332
|
-
{ text: "Error", val: e.stack }
|
|
333
|
-
]);
|
|
252
|
+
parse_mode,
|
|
253
|
+
telegramParams
|
|
334
254
|
});
|
|
335
255
|
setStateIdsToListenTo.splice(key, 1);
|
|
336
256
|
}
|
|
337
257
|
}
|
|
338
|
-
}
|
|
258
|
+
}
|
|
339
259
|
}
|
|
340
260
|
});
|
|
341
|
-
}
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
}
|
|
261
|
+
});
|
|
262
|
+
} catch (e) {
|
|
263
|
+
(0, import_logging.errorLogger)("Error onReady", e, adapter);
|
|
264
|
+
}
|
|
345
265
|
await this.subscribeForeignStatesAsync(botSendMessageID);
|
|
346
266
|
await this.subscribeForeignStatesAsync(requestMessageID);
|
|
347
|
-
await this.subscribeForeignStatesAsync(`${
|
|
267
|
+
await this.subscribeForeignStatesAsync(`${telegramInstance}.communicate.requestChatId`);
|
|
348
268
|
await this.subscribeForeignStatesAsync(telegramID);
|
|
349
|
-
await this.subscribeForeignStatesAsync(`${
|
|
269
|
+
await this.subscribeForeignStatesAsync(`${telegramInstance}.info.connection`);
|
|
350
270
|
}
|
|
351
271
|
isMessageID(id, botSendMessageID, requestMessageID) {
|
|
352
272
|
return id == botSendMessageID || id == requestMessageID;
|
|
@@ -355,12 +275,11 @@ class TelegramMenu extends utils.Adapter {
|
|
|
355
275
|
return !!(id.includes("alexa-shoppinglist") && !id.includes("add_position") && userToSend);
|
|
356
276
|
}
|
|
357
277
|
isMenuToSend(state, id, telegramID, userToSend) {
|
|
358
|
-
return !!(state
|
|
278
|
+
return !!(typeof (state == null ? void 0 : state.val) === "string" && state.val != "" && id == telegramID && (state == null ? void 0 : state.ack) && userToSend);
|
|
359
279
|
}
|
|
360
280
|
async checkInfoConnection(id, infoConnectionOfTelegram) {
|
|
361
281
|
if (id === infoConnectionOfTelegram) {
|
|
362
|
-
|
|
363
|
-
if (!isActive) {
|
|
282
|
+
if (!await (0, import_connection.checkIsTelegramActive)(infoConnectionOfTelegram)) {
|
|
364
283
|
this.log.debug("Telegram is not active");
|
|
365
284
|
return false;
|
|
366
285
|
}
|
|
@@ -368,18 +287,19 @@ class TelegramMenu extends utils.Adapter {
|
|
|
368
287
|
}
|
|
369
288
|
return true;
|
|
370
289
|
}
|
|
371
|
-
async getChatIDAndUserToSend(
|
|
372
|
-
const
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
|
|
290
|
+
async getChatIDAndUserToSend(telegramParams) {
|
|
291
|
+
const { telegramInstance, userListWithChatID } = telegramParams;
|
|
292
|
+
const chatIDState = await this.getForeignStateAsync(`${telegramInstance}.communicate.requestChatId`);
|
|
293
|
+
if (!(chatIDState == null ? void 0 : chatIDState.val)) {
|
|
294
|
+
adapter.log.debug("ChatID not found");
|
|
295
|
+
return { chatID: "", userToSend: "", error: true, errorMessage: "ChatId not found" };
|
|
376
296
|
}
|
|
377
|
-
const userToSend = (0, import_action.getUserToSendFromUserListWithChatID)(userListWithChatID,
|
|
297
|
+
const userToSend = (0, import_action.getUserToSendFromUserListWithChatID)(userListWithChatID, chatIDState.val.toString());
|
|
378
298
|
if (!userToSend) {
|
|
379
299
|
this.log.debug("User to send not found");
|
|
380
|
-
return;
|
|
300
|
+
return { chatID: chatIDState.val.toString(), userToSend: "", error: true, errorMessage: "User not found" };
|
|
381
301
|
}
|
|
382
|
-
return { chatID:
|
|
302
|
+
return { chatID: chatIDState.val.toString(), userToSend, error: false };
|
|
383
303
|
}
|
|
384
304
|
/**
|
|
385
305
|
* Is called when adapter shuts down - callback has to be called under any circumstances!
|
|
@@ -389,12 +309,12 @@ class TelegramMenu extends utils.Adapter {
|
|
|
389
309
|
onUnload(callback) {
|
|
390
310
|
const timeouts = (0, import_processData.getTimeouts)();
|
|
391
311
|
try {
|
|
392
|
-
timeouts.forEach((
|
|
393
|
-
clearTimeout(
|
|
312
|
+
timeouts.forEach(({ timeout }) => {
|
|
313
|
+
adapter.clearTimeout(timeout);
|
|
394
314
|
});
|
|
395
315
|
callback();
|
|
396
316
|
} catch (e) {
|
|
397
|
-
|
|
317
|
+
(0, import_logging.errorLogger)(e, "Error onUnload", adapter);
|
|
398
318
|
callback();
|
|
399
319
|
}
|
|
400
320
|
}
|
|
@@ -409,15 +329,13 @@ class TelegramMenu extends utils.Adapter {
|
|
|
409
329
|
}
|
|
410
330
|
}
|
|
411
331
|
}
|
|
412
|
-
let adapter;
|
|
413
332
|
if (require.main !== module) {
|
|
414
|
-
|
|
333
|
+
module.exports = (options) => new TelegramMenu(options);
|
|
415
334
|
} else {
|
|
416
|
-
new TelegramMenu();
|
|
335
|
+
(() => new TelegramMenu())();
|
|
417
336
|
}
|
|
418
337
|
// Annotate the CommonJS export names for ESM import in node:
|
|
419
338
|
0 && (module.exports = {
|
|
420
|
-
_this,
|
|
421
339
|
adapter
|
|
422
340
|
});
|
|
423
341
|
//# sourceMappingURL=main.js.map
|